[aspect-devel] Tracking time-dependent properties through compositional fields (general discussion)

Juliane Dannberg dannberg at gfz-potsdam.de
Sat May 28 03:35:13 PDT 2016


Hi John,

> 1.  In finite_strain.cc, each component of the strain tensor is 
> assigned to and advected with a unique compositional field via the 
> reaction term.  If one wishes to track additional properties, say CPO 
> and melt, this will require additional unique compositional fields for 
> each component.  At some point, will the advantages of using 
> compositional fields over tracers be negated if too many compositional 
> fields are present?
As Wolfgang already said, Rene has the most experience with the tracers 
in Aspect, so he will probably be able to say more about the point at 
which tracers become more efficient than fields (which also depends on 
the application/geometry/advection scheme of tracers etc.).
>
> 2. In finite_strain.prm the compositional fields for each component (4 
> total) of the 2-D strain tensor are assigned a value of 0 under the 
> initial conditions section.  My interpretation is that this procedure 
> allows the fields to track the strain through the reaction term, but 
> the "volume fraction” of these fields in each cell is still 
> effectively 0.  Is this interpretation correct?  If it is correct, 
> that means composition dependent material models (ex: 
> multicomponent.c) following this approach will not be affected by the 
> compositional fields tracking strain unless they specifically use the 
> reaction terms.
You already said it yourself -- if you want to use strain tracking 
together with a material model that uses additional compositional fields 
to track other things than the finite strain, you have to adapt the 
material model so that it knows what to do with each of the 
compositional fields.
The easiest way to do that is probably by using the "names of fields" 
feature. In the input file, you can assign a name (e.g. 
"basaltic_crust", or "strain_xx") to a compositional field, and in the 
material model you can get the index of a field with a particular name 
using the introspection class 
(this->introspection().compositional_index_for_name("strain_xx")). This 
way, you can keep the material properties from e.g. multicomponent.cc, 
and add the influence of finite strain tracking only where you want.
In this case, the interpretation of what the value of a field means 
would also be different, i.e. for the finite strain what the field 
contains is the finite strain instead of a volume fraction of a certain 
material. That is totally fine, as long as your material model keeps 
track of what to do with each of the fields.

Best,
Juliane


More information about the Aspect-devel mailing list