Difference between revisions of "Clamped Neo-Hookean Material"
Line 49: | Line 49: | ||
! Property !! Description !! Units !! Default | ! Property !! Description !! Units !! Default | ||
|- | |- | ||
| CritComp || Critical compression extension θ<sub>c</sub> || none || 0.025 | | CritComp || Critical compression extension θ<sub>c</sub>. If less then 0, the material will not clamp stains and therefore be a [[#Neo-Hookean Option|elastic, Neo-Hookean material]]. || none || 0.025 | ||
|- | |- | ||
| | | CritTens || Critical tensile extension θ<sub>t</sub> If less then 0, the material will not clamp stains and therefore be a [[#Neo-Hookean Option|elastic, Neo-Hookean material]]. || none || 0.0075 | ||
|- | |- | ||
| xihard || Hardening coefficient ξ || none || 10 | | xihard || Hardening coefficient ξ || none || 10 | ||
Line 62: | Line 62: | ||
Note that any simulation that includes compression may get significantly stiffer as the analysis proceeds. To avoid instability due to lack of convergence, this material should always be use the the [[AdjustTimeStep Custom Task]] to change the time step when needed due to stiffening. | Note that any simulation that includes compression may get significantly stiffer as the analysis proceeds. To avoid instability due to lack of convergence, this material should always be use the the [[AdjustTimeStep Custom Task]] to change the time step when needed due to stiffening. | ||
=== Neo-Hookean Option === | |||
If either <tt> CritComp</tt> or <tt> CritTens</tt> are less than zero, the elongation will never be clamped. As a consequence, the material will be a hyperlastic, Neo-hookean material. This mode is normally used when <tt>Elastic</tt> of 0 to use the corotated elasticity model described above. There is not point to using this mode when <tt>Elastic</tt> is 1 because that material is better done by using the regular [[Neo-Hookean Material|neo-Hookean material]]. | |||
== History Data == | == History Data == |
Revision as of 19:35, 5 October 2017
Constitutive Law
This MPM Material is an isotropic, elastic-plastic material in large strains using a hyperelastic formulation. The elastic part is a neo-Hookean material. Plasticity occurs when the elongation in either tensile of compressive elongation reaches a critical value. This material is based on the material used in a paper to animate snow mechanics[1]. Although that model was based on engineering analysis of snow, it was simplified for efficiency in animation and for ease it creating a variety of responses.
The elastic regime of the material uses an isotropic, neo-Hookean material potential energy:
[math]\displaystyle{ W= \Phi\bigl(\mathbf{F}_E,G(J_P),\lambda(J_P)\bigr) }[/math]
where [math]\displaystyle{ \Phi() }[/math] is a neo-Hookean potential energy function that depends on the current elastic deformation gradient ([math]\displaystyle{ \mathbf{F}_E }[/math]) and shear and Lamé moduli [math]\displaystyle{ G(J_P) }[/math] and [math]\displaystyle{ \lambda(J_P) }[/math]. The implementation here allows two different neo-Hookean laws. The first uses the law defined for the standard neo-Hookean material. The second uses a modified corotated elasticity law proposed in Stomakhin et al.[1]:
[math]\displaystyle{ \Phi\bigl(\mathbf{F}_E,G(J_P),\lambda(J_P)\bigr) = G(J_P)\sum_k (\lambda_k-1)^2 + {\lambda(J_P)\over 2}(J_E-1)^2 }[/math]
where [math]\displaystyle{ \lambda_k }[/math] are the principal elongations and JE is the determinant of [math]\displaystyle{ \mathbf{F}_E }[/math]. The Cauchy stress by this law is
[math]\displaystyle{ \mathbf{\sigma} = \sum_k \left( {2G(J_P)\over J_E} \lambda_k(\lambda_k-1)+ \lambda(J_p)(J_E-1)\right) \vec b_k\otimes\vec b_k }[/math]
where [math]\displaystyle{ \vec b_k }[/math] are the eigenvectors of the elastic left Cauchy-Green strain tensor ([math]\displaystyle{ \mathbf{B} }[/math]).
The neo-Hookean mechanical properties are assumed to depend on the amount of plastic volume change using
[math]\displaystyle{ G(J_P)= G(1)e^{\xi(1-J_P)} \qquad {\rm and} \qquad \lambda(J_P)= \lambda(1)e^{\xi(1-J_P)} }[/math]
where [math]\displaystyle{ \xi }[/math] is a hardening parameter and [math]\displaystyle{ G(1) }[/math] and [math]\displaystyle{ \lambda(1) }[/math] are the initial shear and Lamé moduli (i.e., before any plasticity). Note that in tension, the material softens, which can emulate fracture. In compression, the material hardens.
The plasticity is implemented as follows:
- On each time step, a trial, updated deformation gradient is calculated and decomposed into its principle stretches.
- If any stretch is greater then (1+θt), it is set to (1+θt), where θt is the critical tensile strain before tensile failure. If any stretch is less then (1-θc), it is set to (1-θc), where θc is the critical compressive strain before compressive failure. In other words, all elongations are "clamped" to be with the interval [1-θc,1+θt]
- Once the elongations are clamped, the final elastic deformation is found. The total J is divided into elastic JE and plastic JP = J/JE. The new mechanical properties are found from JP and the stress is found from these properties and the elastic deformation.
Dissipated Energy
Although this plastic material will dissipate energy whenever the elongations are clamped, the currently implemented model does not calculate that energy. The only consequence of this fact is that you cannot use this material to simulate heating caused by plastic deformation (i.e. calculations in "Adiabatic" mode will not result in particle temperature changes). Except for this simulation option, the dissipated energy plays no role in MPM results.
Residual Stress
In the presence of temperature or concentration changes, this material accounts for residual stresses by the process described for the Mooney-Rivlin material. This change only requires that the stress calculation replace [math]\displaystyle{ J_E }[/math] by [math]\displaystyle{ J_{eff} = J_E/J_{res} }[/math] and replace [math]\displaystyle{ \lambda_k }[/math] by [math]\displaystyle{ \lambda_k/\lambda_{res} }[/math]
Material Properties
The material properties are given in the following table.
Property | Description | Units | Default |
---|---|---|---|
CritComp | Critical compression extension θc. If less then 0, the material will not clamp stains and therefore be a elastic, Neo-Hookean material. | none | 0.025 |
CritTens | Critical tensile extension θt If less then 0, the material will not clamp stains and therefore be a elastic, Neo-Hookean material. | none | 0.0075 |
xihard | Hardening coefficient ξ | none | 10 |
Elastic | Enter 0 to find elastic stresses on the model in Stomakhin et al.[1] (and described above). Enter 1 to find elastic stresses using an alternative neo-Hookean material. | none | 0 |
(other) | Properties to define underlying neo-Hookean material (note that UJOption is always 1 when Elastic is 0, but can be any option when Elastic is 1) | varies | varies |
Note that any simulation that includes compression may get significantly stiffer as the analysis proceeds. To avoid instability due to lack of convergence, this material should always be use the the AdjustTimeStep Custom Task to change the time step when needed due to stiffening.
Neo-Hookean Option
If either CritComp or CritTens are less than zero, the elongation will never be clamped. As a consequence, the material will be a hyperlastic, Neo-hookean material. This mode is normally used when Elastic of 0 to use the corotated elasticity model described above. There is not point to using this mode when Elastic is 1 because that material is better done by using the regular neo-Hookean material.
History Data
This material uses history #1 to store the volumetric strain (i.e., the determinant of the deformation gradient or J) and history #2 to store the plastic volumetric strain (i.e., JP). The total strain, which is elastic, is stored in the elastic strain variable, while the plastic strain stores the left Cauchy Green strain tensor.
Examples
These commands are suggested by Stomakin et. al.[1] as reference material properties for animating snow:
Material "Snow","Snow Animation Material","ClampedNeohookean" E 0.14 nu 0.2 rho 0.4 alpha 0 CritComp .025 CritTens .0074 xihard 10 Elastic 0 Color 0.84,0.91,1 Done