Difference between revisions of "Viscoelastic Material"
Line 102: | Line 102: | ||
| | ||
<math>C_{m1}' = \frac{C_{m1}(C_{m2}+m_{ref})}{C_{m2}+m_{ref}'} \quad{\rm where} \quad | <math>C_{m1}' = \frac{C_{m1}(C_{m2}+m_{ref})}{C_{m2}+m_{ref}'} \quad{\rm where} \quad | ||
\log a_m = \log \frac{\tau(m)}{\tau(m_{ref}')} = - \frac{C_{m1}'(m-m_{ref}')}{ | \log a_m = \log \frac{\tau(m)}{\tau(m_{ref}')} = - \frac{C_{m1}'(m-m_{ref}')}{C_{m2}+m-m_{ref}}</math> | ||
For example, if <math>m_{ref}=c_{sat}</math>, which is likely the condition with the shortest relaxation time, the shift factor would vary from <math>C_{m1}c_{sat}/C_{m2}</math> to 0 between zero and saturation solvent conditions. But, if one switched to <math>m_{ref}'=0</math>, one would find <math>C_{m1}'= C_{m1}(C_{m2}+c_{sat})/C_{m2}</math> and the shift factor would vary from 0 to <math>-C_{m1}c_{sat}/C_{m2}</math> between zero and saturation solvent conditions (''i.e.'', same relative change as when using <math>m_{ref}=c_{sat}</math>). | For example, if <math>m_{ref}=c_{sat}</math>, which is likely the condition with the shortest relaxation time, the shift factor would vary from <math>C_{m1}c_{sat}/C_{m2}</math> to 0 between zero and saturation solvent conditions. But, if one switched to <math>m_{ref}'=0</math>, one would find <math>C_{m1}'= C_{m1}(C_{m2}+c_{sat})/C_{m2}</math> and the shift factor would vary from 0 to <math>-C_{m1}c_{sat}/C_{m2}</math> between zero and saturation solvent conditions (''i.e.'', same relative change as when using <math>m_{ref}=c_{sat}</math>). |
Revision as of 13:30, 19 March 2024
Constitutive Laws
This MPM material has separate constitutive laws for deviatoric stress and pressure.
Deviatoric Constitutive Law
The deviatoric constitutive law is always a small-strain, linear viscoelastic material with time-dependent shear modulus, G(t), which is given by a sum of n exponentials:
[math]\displaystyle{ G(t) = G_0 + \sum_{i=1}^n G_i e^{-t/\tau_i} }[/math]
Here G0 is the long-time shear modulus and the short-time shear modulus is the sum:
[math]\displaystyle{ G(0) = \sum_{i=0}^n G_i }[/math]
The updates for components of the deviatoric stress become
[math]\displaystyle{ ds_{ij} = 2\left( G(0) de_{ij} - \sum_{k=1}^n G_k d\alpha_{ij,k} \right) }[/math]
where αij,k are a series of internal variables that are tracked in history variables on each particle.
Pressure Constitutive Law
The pressure constitutive law has two options. The first in to use a small strain linear viscoelastic law time-dependent bulk modulus of
[math]\displaystyle{ K(t) = K_0 + \sum_{i=1}^n K_i e^{-t/\tau_i} }[/math]
Here K0 is the long-time bulk modulus and the short-time shear modulus is the sum:
[math]\displaystyle{ K(0) = \sum_{i=0}^n K_i }[/math]
The pressure update becomes
[math]\displaystyle{ dP = - K(0)(de_{ii} - 3d\varepsilon_{res}) + \sum_{k=1}^n K_k d\alpha_{V,k} }[/math]
where [math]\displaystyle{ de_{ii} }[/math] is increment volumetric strain and [math]\displaystyle{ d\varepsilon_{res} }[/math] accounts for thermal and solvent expansion effects (the thermal and solvent expansion coefficients are assumed to be independent of time). The [math]\displaystyle{ \alpha_{V,k} }[/math] are a series of internal variables that are tracked on each particle. To use this law, which is the default pressure law, set pressureLaw to 0 and enter all bulk moduli properties. For time-independent bulk modulus, enter K0 but no relaxation times. The bulk modulus relaxation times can differ from the shear modulus relaxation times.
The second option is to use then Mie-Grüneisen equation of state (MGEOS). To use this law, set pressureLaw to 1 and enter the MGEOS properties. The pressure law models a non-linear elastic bulk modulus but cannot model time dependence of the bulk modulus.
Plane Stress Analysis
This material can be used in plane stress analysis, but only if it uses the linear pressure law (pressureLaw=0) and it does not add artificial viscosity. Support for plane stress in other conditions may be provided soon.
Effective Time Implementation
The above constitutive law assumes G(t) depends only on time, but in real materials, it will depend strongly on temperature. When modeling diffusion with solvent concentration, it may depend on solvent concentration as well. These dependencies are modeling by assuming the material obeys time-temperature and time-solvent superposition whereby G(t) is given by:
[math]\displaystyle{ G(t) = G_0 + \sum_{i=1}^n G_i e^{-t/(a\tau_i)} }[/math]
where a is a shift factor. In other words, the coefficients of G(t) remain constant, but the relaxation times shift by a factor a. Furthermore, all relaxation times are assumed to shift by the same factor. We are led to define a reduced time:
[math]\displaystyle{ t_r = \int_0^t \frac{dt}{a} \quad{\rm and}\quad \Delta t_r = \int_t^{t+\Delta t} \frac{dt}{a} }[/math]
is the effect time increment corresponding to actual time step [math]\displaystyle{ \Delta t }[/math]. The above constitutive law can then be extended to variable environments by converting convolution integrals to integrals over reduced or effective time. To implement this modeling, the material methods need input for a as a function of environment. When both temperature and solvent vary, a is replaced by aTam or product of thermal and moisture (i.e., solvent) shift factors. These shift factors are explained in the next two sections.
Variable Temperature
For temperature variations, aT is the thermal shift factor. In polymer materials, this shift factor is approximated by the WLF equation:
[math]\displaystyle{ \log a_T = \log \frac{\tau(T)}{\tau(T_{ref})} = - \frac{C_1(T-T_{ref})}{T-T_{ref}+C_2} }[/math]
This shift factor is implemented in simulations by entering Tref, C1, and C2. In polymer materials, if Tref=Tg, or the glass transition temperature, C1=17.44 and C2=51.6 are average values over a range of polymers (the values for one specific polymer, however, may vary significantly). If Tref differs from Tg, it can be used in a shifted WLF equation using C3 and C4 defined from C1 and C2 at Tg by
[math]\displaystyle{ \log a_T = \log \frac{\tau(T)}{\tau(T_{ref})} = - \frac{C_3(T-T_{ref})}{T-T_{ref}+C_4} }[/math]
where
[math]\displaystyle{ C_3 = \frac{C_1C_2}{C_2+T_{ref}-T_g} \quad{\rm and}\quad C_4 = C_2+T_{ref}-T_g }[/math]
Notice that [math]\displaystyle{ \log a_T\to\infty }[/math] as [math]\displaystyle{ T\to T_{ref}-C_2 }[/math] (e.g., if T reaches Tg-51.6 for an average polymer). This condition corresponds to infinite relaxation time and this material will respond as an elastic material for any temperature below this limit. Real materials may still have viscoelasticity effects, but those effects are not well modeled by extrapolating from Tg to far below Tg using the WLF equation. Observed low-temperature viscoelasticity can be modeled by adjusting Tref, C1, and C2 to described measured relaxations over any temperature range of interest.
Variable Solvent Concentration
For concentration variations, am is the solvent shift factor. In absence of a WLF equation, the solvent shift is modeled using a WLF-style equation based on assumption that solvent expansion leads to free volume that promotes relaxation:
[math]\displaystyle{ \log a_m = \log \frac{\tau(m)}{\tau(m_{ref})} = - \frac{C_{m1}(m-m_{ref})}{m+C_{m2}} }[/math]
This shift factor is implemented in simulations by entering mref, Cm1, and Cm2. Note that unlike the WLF equation, this equation does not include [math]\displaystyle{ m_{ref} }[/math] in the denominator.
Based on free-value arguments, a reasonable estimate for [math]\displaystyle{ C_{m2} }[/math] is:
[math]\displaystyle{ C_{m2} = \frac{f_0}{\beta_V} }[/math]
where [math]\displaystyle{ f_0 }[/math] is fraction free volume with zero solvent constant (e.g., 0.025 often assumed for polymers in the glassy state) and [math]\displaystyle{ \beta_V }[/math] is the volumetric solvent expansion coefficient. To prevent am for being infinite for any amount of solvent content, Cm2 must be positive.
If [math]\displaystyle{ C_{m1} }[/math] is known at one [math]\displaystyle{ m_{ref} }[/math], the value at a new reference concentration, [math]\displaystyle{ m_{ref}' }[/math] would be:
[math]\displaystyle{ C_{m1}' = \frac{C_{m1}(C_{m2}+m_{ref})}{C_{m2}+m_{ref}'} \quad{\rm where} \quad \log a_m = \log \frac{\tau(m)}{\tau(m_{ref}')} = - \frac{C_{m1}'(m-m_{ref}')}{C_{m2}+m-m_{ref}} }[/math]
For example, if [math]\displaystyle{ m_{ref}=c_{sat} }[/math], which is likely the condition with the shortest relaxation time, the shift factor would vary from [math]\displaystyle{ C_{m1}c_{sat}/C_{m2} }[/math] to 0 between zero and saturation solvent conditions. But, if one switched to [math]\displaystyle{ m_{ref}'=0 }[/math], one would find [math]\displaystyle{ C_{m1}'= C_{m1}(C_{m2}+c_{sat})/C_{m2} }[/math] and the shift factor would vary from 0 to [math]\displaystyle{ -C_{m1}c_{sat}/C_{m2} }[/math] between zero and saturation solvent conditions (i.e., same relative change as when using [math]\displaystyle{ m_{ref}=c_{sat} }[/math]).
Simulations to include solvent effects on relaxations times must activate Diffusion Calculations, and enter material properties for saturation concentration, solvent expansion coefficient, and diffusion constants. Even constant-concentration simulations must activate diffusion calculations. To use constant concentration, set all particles to the same concentration (such that no diffusion occurs).
Material Properties
The unusual task for this material is to use multiple Gk and tauk properties (all with the same property name) to enter a material with multiple relaxation times.
Property | Description | Units | Default |
---|---|---|---|
G0 | The long term (or fully-relaxed) shear modulus | pressure units | 0 |
ntaus | The number of shear modulus relaxation times. This property is only needed in XML files and must come before any Gk or tauk properties. In scripted files, the number is automatically determined from the number of relaxation times you provide. | none | none |
Gk | The shear modulus for the next relaxation time. Enter multiple Gk properties to have multiple relaxation times. | pressure units | none |
tauk | The next shear modulus relaxation time. Enter multiple tauk properties to have multiple relaxation times. | time units | none |
pressureLaw | Picks the constitutive law used for time independent pressure. The options are 0 to use linear viscoelastic law and 1 to use MGEOS equation of state. | none | 0 |
K | Time-independent bulk modulus (when using linear viscoelastic law) | pressure units | none |
ntausK | The number of bulk modulus relaxation times. This property is only needed in XML files and must come before any Kk or tauKk properties. In scripted files, the number is automatically determined from the number of relaxation times you provide. | none | none |
Kk | The bulk modulus for the next relaxation time. Enter multiple Kk properties to have multiple relaxation times. | pressure units | none |
tauKk | The next bulk modulus relaxation time. Enter multiple tauKk properties to have multiple relaxation times. | time units | none |
(MGEOS) | Enter MGEOS properties C0, S1, S2, S3, gamma, and Kmax. The UJOption is fixed at 1. | varies | varies |
Tref | Reference temperature to shift relaxation times using the WLF equation. If Tref<0, then no shifting is done and relaxation times will be independent of temperature. | K | -1 |
C1 | Coefficient in WLF equation used when Tref≥0 to shift relaxation times | none | 17.44 |
C2 | Coefficient in WLF equation used when Tref≥0 to shift relaxation times | none | 51.6 |
mref | Reference concentration to shift relaxation times using the WLF-style equation. If mref<0, then no shifting is done and relaxation times will be independent of concentration. | K | -1 |
Cm1 | Coefficient in WLF-style equation used when mref≥0 to shift relaxation times | none | 10 |
Cm2 | Coefficient in WLF-style equation used when mref≥0 to shift relaxation times (must be positive) | none | 0.0625 |
alpha | Thermal expansion coefficient (ignored when using MGEOS law) | ppm/K | 40 |
(other) | Properties common to all materials | varies | varies |
The total number of Gk and tauk properies must be equal. In XML files, that total number must match the supplied ntaus property.
The default value for Kmax is -1, which means to not limit the bulk modulus. This mode is almost always stable, but simulations with high compression should always add the AdjustTimeStep Custom Task to keep calculation stable under high tangent bulk modulus conditions.
Viscoelastic Solids and Liquids
If G0 is not zero, the material is a viscoelastic solid, which means the shear stress at infinite time reamains a finite number. Viscoelastic solids are used to model materials such as elastomers that do not show long time flow due to their cross links or have a plateau shear modulus equal to G0.
If G0 is zero, the material is a viscoelastic liquid that will flow like a liquid if you wait long enough. For example, to emulate a liquid (i.e., similar to a Tait Liquid Material), set G0 to zero, use a single relaxation time with tauk short (on time scale of the simulation), and set the one Gk modulus to:
[math]\displaystyle{ G_1 = {\eta\over 2\tau_1} }[/math]
where [math]\displaystyle{ \eta }[/math] is desired viscosity and [math]\displaystyle{ \tau_1 }[/math] is the single relaxation time.
History Variables
This material tracks internal history variables (one for each relaxation time and each component of stress) for implementation of linear viscoelastic properties, but currently none of these internal variables are available for archiving.
This material also tracks J (total relative volume change) and Jres (volume change of free expansion state) as history variables 1 and 2. Note that Jres is only needed, and therefore only tracked, when using MGEOS for pressure constitutive law (when pressureLaw is 1). If not tracked, it is always 1.