pub struct SaintVenantKirchhoff {
pub bulk_modulus: Scalar,
pub shear_modulus: Scalar,
pub coefficient_of_thermal_expansion: Scalar,
pub reference_temperature: Scalar,
}Expand description
The Saint Venant-Kirchhoff thermohyperelastic solid constitutive model.
Parameters
- The bulk modulus $
\kappa$. - The shear modulus $
\mu$. - The coefficient of thermal expansion $
\alpha$. - The reference temperature $
T_\mathrm{ref}$.
External variables
- The deformation gradient $
\mathbf{F}$. - The temperature $
T$.
Internal variables
- None.
Notes
- The Green-Saint Venant strain measure is given by $
\mathbf{E}=\tfrac{1}{2}(\mathbf{C}-\mathbf{1})$.
Fields§
§bulk_modulus: ScalarThe bulk modulus $\kappa$.
shear_modulus: ScalarThe shear modulus $\mu$.
coefficient_of_thermal_expansion: ScalarThe coefficient of thermal expansion $\alpha$.
reference_temperature: ScalarThe reference temperature $T_\mathrm{ref}$.
Trait Implementations§
Source§impl Clone for SaintVenantKirchhoff
impl Clone for SaintVenantKirchhoff
Source§fn clone(&self) -> SaintVenantKirchhoff
fn clone(&self) -> SaintVenantKirchhoff
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SaintVenantKirchhoff
impl Debug for SaintVenantKirchhoff
Source§impl Solid for SaintVenantKirchhoff
impl Solid for SaintVenantKirchhoff
Source§fn bulk_modulus(&self) -> Scalar
fn bulk_modulus(&self) -> Scalar
Returns the bulk modulus.
Source§fn shear_modulus(&self) -> Scalar
fn shear_modulus(&self) -> Scalar
Returns the shear modulus.
Source§fn jacobian<const I: usize, const J: usize>(
&self,
deformation_gradient: &DeformationGradientGeneral<I, J>,
) -> Result<Scalar, ConstitutiveError>
fn jacobian<const I: usize, const J: usize>( &self, deformation_gradient: &DeformationGradientGeneral<I, J>, ) -> Result<Scalar, ConstitutiveError>
Calculates and returns the Jacobian.
Source§impl Thermoelastic for SaintVenantKirchhoff
impl Thermoelastic for SaintVenantKirchhoff
Source§fn second_piola_kirchhoff_stress(
&self,
deformation_gradient: &DeformationGradient,
temperature: Scalar,
) -> Result<SecondPiolaKirchhoffStress, ConstitutiveError>
fn second_piola_kirchhoff_stress( &self, deformation_gradient: &DeformationGradient, temperature: Scalar, ) -> Result<SecondPiolaKirchhoffStress, ConstitutiveError>
Calculates and returns the second Piola-Kirchhoff stress.
\mathbf{S}(\mathbf{F}, T) = 2\mu\mathbf{E}' + \kappa\,\mathrm{tr}(\mathbf{E})\mathbf{1} - 3\alpha\kappa(T - T_\mathrm{ref})\mathbf{1}Source§fn second_piola_kirchhoff_tangent_stiffness(
&self,
deformation_gradient: &DeformationGradient,
_: Scalar,
) -> Result<SecondPiolaKirchhoffTangentStiffness, ConstitutiveError>
fn second_piola_kirchhoff_tangent_stiffness( &self, deformation_gradient: &DeformationGradient, _: Scalar, ) -> Result<SecondPiolaKirchhoffTangentStiffness, ConstitutiveError>
Calculates and returns the tangent stiffness associated with the second Piola-Kirchhoff stress.
\mathcal{G}_{IJkL}(\mathbf{F}) = \mu\,\delta_{JL}F_{kI} + \mu\,\delta_{IL}F_{kJ} + \left(\kappa - \frac{2}{3}\,\mu\right)\delta_{IJ}F_{kL}Source§fn coefficient_of_thermal_expansion(&self) -> Scalar
fn coefficient_of_thermal_expansion(&self) -> Scalar
Returns the coefficient of thermal expansion.
Source§fn reference_temperature(&self) -> Scalar
fn reference_temperature(&self) -> Scalar
Returns the reference temperature.
Source§fn cauchy_stress(
&self,
deformation_gradient: &DeformationGradient,
temperature: Scalar,
) -> Result<CauchyStress, ConstitutiveError>
fn cauchy_stress( &self, deformation_gradient: &DeformationGradient, temperature: Scalar, ) -> Result<CauchyStress, ConstitutiveError>
Calculates and returns the Cauchy stress. Read more
Source§fn cauchy_tangent_stiffness(
&self,
deformation_gradient: &DeformationGradient,
temperature: Scalar,
) -> Result<CauchyTangentStiffness, ConstitutiveError>
fn cauchy_tangent_stiffness( &self, deformation_gradient: &DeformationGradient, temperature: Scalar, ) -> Result<CauchyTangentStiffness, ConstitutiveError>
Calculates and returns the tangent stiffness associated with the Cauchy stress. Read more
Source§fn first_piola_kirchhoff_stress(
&self,
deformation_gradient: &DeformationGradient,
temperature: Scalar,
) -> Result<FirstPiolaKirchhoffStress, ConstitutiveError>
fn first_piola_kirchhoff_stress( &self, deformation_gradient: &DeformationGradient, temperature: Scalar, ) -> Result<FirstPiolaKirchhoffStress, ConstitutiveError>
Calculates and returns the first Piola-Kirchhoff stress. Read more
Source§fn first_piola_kirchhoff_tangent_stiffness(
&self,
deformation_gradient: &DeformationGradient,
temperature: Scalar,
) -> Result<FirstPiolaKirchhoffTangentStiffness, ConstitutiveError>
fn first_piola_kirchhoff_tangent_stiffness( &self, deformation_gradient: &DeformationGradient, temperature: Scalar, ) -> Result<FirstPiolaKirchhoffTangentStiffness, ConstitutiveError>
Calculates and returns the tangent stiffness associated with the first Piola-Kirchhoff stress. Read more
Source§impl Thermohyperelastic for SaintVenantKirchhoff
impl Thermohyperelastic for SaintVenantKirchhoff
Source§fn helmholtz_free_energy_density(
&self,
deformation_gradient: &DeformationGradient,
temperature: Scalar,
) -> Result<Scalar, ConstitutiveError>
fn helmholtz_free_energy_density( &self, deformation_gradient: &DeformationGradient, temperature: Scalar, ) -> Result<Scalar, ConstitutiveError>
Calculates and returns the Helmholtz free energy density.
a(\mathbf{F}, T) = \mu\,\mathrm{tr}(\mathbf{E}^2) + \frac{1}{2}\left(\kappa - \frac{2}{3}\,\mu\right)\mathrm{tr}(\mathbf{E})^2 - 3\alpha\kappa\,\mathrm{tr}(\mathbf{E})(T - T_\mathrm{ref})Auto Trait Implementations§
impl Freeze for SaintVenantKirchhoff
impl RefUnwindSafe for SaintVenantKirchhoff
impl Send for SaintVenantKirchhoff
impl Sync for SaintVenantKirchhoff
impl Unpin for SaintVenantKirchhoff
impl UnsafeUnpin for SaintVenantKirchhoff
impl UnwindSafe for SaintVenantKirchhoff
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more