Creating Custom Volume/Phase Content Parameters

Numerical methods and mathematical models of Elmer
Post Reply
sslone
Posts: 5
Joined: 06 Feb 2020, 19:35
Antispam: Yes

Creating Custom Volume/Phase Content Parameters

Post by sslone »

Hello everyone,

I'm fairly new to Elmer, recently switched over from Abaqus, and am wanting to import a framework I had developed in Abaqus. I'm wanting to model the ice content of freezing soils, and am in need of understanding a few basic components of Elmer's design process that I've not quite figured out from the documentation.

What I'm wanting to do is create a variable representing ice volume content that updates an individual element based on the current saturation/water pressure and temperature, then use that variable to define conductivity, mechanical strength, etc for the element. Calculating the conductivity and other innate material properties I believe I know how to do, but what I'm having issues with is the creation of that initial variable itself, whether it should be a field parameter or something else or how to even declare it. Would it exist inside of the material or solver statements in the .sif, or is it in need of a brand new subroutine solver? I've messed around with creating solvers and user functions but appear to be flying blind for the most part.

Can anyone give any recommendations on how to create a custom material property that updates every timestep based on temperature and water pressure, which can then be used to define other material properties?

Thanks,
Someone New
kevinarden
Posts: 2301
Joined: 25 Jan 2019, 01:28
Antispam: Yes

Re: Creating Custom Volume/Phase Content Parameters

Post by kevinarden »

http://www.elmerfem.org/blog/

Elmer/ICE community, elmerice.elmerfem.org
sslone
Posts: 5
Joined: 06 Feb 2020, 19:35
Antispam: Yes

Re: Creating Custom Volume/Phase Content Parameters

Post by sslone »

Thanks, but I was wanting to know how to create the parameters. I'm not finding anything like that on the Elmer/ICE community documentation, and Elmer/ICE as a whole doesn't seem appropriate for the soil model I'm wanting to build. EnthalpySolver seems similar but I can't tell where to start with it. I'd rather declare the variables myself, but I don't know how.

That is my question. How do you define a dependent and persistent variable with inputs like temperature that can then be called by MATC or user functions to calculate properties like thermal conductivity?
kevinarden
Posts: 2301
Joined: 25 Jan 2019, 01:28
Antispam: Yes

Re: Creating Custom Volume/Phase Content Parameters

Post by kevinarden »

Elmer allows you to program your own user functions and solvers using elmerf90 to compile them

elmerf90 myUMATLib.f90 -o myUMATLib
raback
Site Admin
Posts: 4823
Joined: 22 Aug 2009, 11:57
Antispam: Yes
Location: Espoo, Finland
Contact:

Re: Creating Custom Volume/Phase Content Parameters

Post by raback »

Hi

Generally any material parameter can be a function of any field variable, e.g.

Code: Select all

MyParam = Variable Temperature, Saturation, Whatever
  Real MATC "f(tx(0),tx(1),tx(2))"
or

Code: Select all

MyParam = Variable Temperature, Saturation, Whatever
  Real Procedure "MyModule" "MyMaterial"
MATC is good mainly for quick testing. UDF is faster.

This possibility to have any real valued material parameter depend on arbitrary field variables is in the basis of multiphysical coupling. You will probably have some equations for the pressure head, temperature etc. If you're lucky the above ability is enough and you don't need to modify solver modules. Without seeing the equations in more detail it is difficult to say that.

I know there is significant effort for doing permafrost modeling coupled with water and salinity transport in porous media. Whether this is something where you could plug in - I don't know.

-Peter
Post Reply