Diffusion Calculations
NairnMPM can do diffusion calculations coupled with stresses and strains through concentration-induced expansion.
Activating Diffusion
In scripted files, diffusion is activated with the command
Diffusion (YesOrNo),<(refConc)>
In XML input files, diffusion is activated with the <Diffusion> command, which must be within the <<MPMHeader> element:
<Diffusion reference = '(refConc)'/>
where
- (YesOrNo) must be "Yes" or "No" to activate or not activate diffusion calculations. In XML input files, the presence of a <Diffusion> command activates diffusion. The default is "No".
- (refConc) is used to set a reference concentration potential (between 0 and 1) that corresponds to zero strain. All diffusion calculations are done in terms of a concentration potential from 0 to 1 where 1 is the saturation concentration of a material type. The default (refConc) is 0.
Note that diffusion models fluid transport through materials by transport methods nearly identical to those used to model poroelasticity. Because they share same methods, a simulation can activate diffusion (with above commands) or poroelasticity (with comparable Poroelasticity commands), but cannot activate them both. Any simulation, however, can combine diffusion or poroelasticity with thermal calculations and conduction. Note that when choosing archiving options, the terms "concentration" and "porepressure" are synonyms or either can be used and the archiving will store concentration terms for diffusion calculations or pore pressure terms for poroelasticity calculations.
Diffusion Material Properties
Concencentration changes are coupled to stress and strains through concentration expansion coefficients defined for the materials. By default, all moisture expansion coefficients are zero which decouples diffusion and strains. By entering non-zero values, the coupling will occur. Isotropic materials have a single solvent expansion coefficient while anisotropic will have two or three solvent expansion coefficients.
The rate of diffusion is controlled by the solvent diffusion constant defined for each material. Isotropic materials have a single solvent diffusion constant while anisotropic will have two or three solvent diffusion constants.
To be able to model diffusion in composite materials where different phases may absorb different amounts of solvent, all diffusion calculations are done in terms of a chemical potential for the solvent in the material, where chemical or concentration potential, μ, is approximate by
[math]\displaystyle{ \mu= {c\over c_{sat}} }[/math]
where c is the weight fraction of solvent absorbed in the material and csat is the saturation solvent weight fraction for that material (which is specified in the material definition). This concentration potential varies from 0 to 1 and equilibrium conditions corresponds to all particles being at the same concentration potential.
Archived Concentrations
When calculated concentrations and concentration gradients are archived, they are converted to actual concentration in weight fraction using the material's saturation concentration setting:
[math]\displaystyle{ c = c_{sat}\mu }[/math]
This conversion applies both to particle archives and to global archiving.
Diffusion Boundary Conditions
When diffusion is activated, you can set, the possible concentration boundary conditions are:
- You can set concentration on the grid.
- You can set a concentration flux on particle surfaces.
- Apply initial concentration field to particles using a ThermalRamp Custom Task.
- Rigid particles can provide moving concentration boundary conditions.
Note that setting initial particle concentrations different than the reference concentration will cause strains to immediately evolve toward the changed state. The net effect will be an instantaneous "impact" of concentration change that might cause undesirable dynamic effects.