Skip to main content

FirstOrderMinimize

Trait FirstOrderMinimize 

Source
pub trait FirstOrderMinimize<Y>{
    // Required method
    fn minimize(
        &self,
        applied_load: AppliedLoad<'_>,
        integrator: impl ExplicitDaeFirstOrderMinimize<Quantity<EnergyDensity>, FirstPiolaKirchhoffStress, ViscoplasticStateVariables<Y>, DeformationGradient, ViscoplasticStateVariablesHistory<Y>, DeformationGradients, ViscoplasticEvolutionHistory<Y>>,
        solver: impl FirstOrderOptimization<Quantity<EnergyDensity>, FirstPiolaKirchhoffStress, DeformationGradient>,
    ) -> Result<(Times, DeformationGradients, ViscoplasticStateVariablesHistory<Y>), ConstitutiveError>;
}
Expand description

First-order minimization methods for hyperelastic-viscoplastic solid constitutive models.

Required Methods§

Source

fn minimize( &self, applied_load: AppliedLoad<'_>, integrator: impl ExplicitDaeFirstOrderMinimize<Quantity<EnergyDensity>, FirstPiolaKirchhoffStress, ViscoplasticStateVariables<Y>, DeformationGradient, ViscoplasticStateVariablesHistory<Y>, DeformationGradients, ViscoplasticEvolutionHistory<Y>>, solver: impl FirstOrderOptimization<Quantity<EnergyDensity>, FirstPiolaKirchhoffStress, DeformationGradient>, ) -> Result<(Times, DeformationGradients, ViscoplasticStateVariablesHistory<Y>), ConstitutiveError>

Solve for the unknown components of the deformation gradients under an applied load.

\Pi(\mathbf{F},\mathbf{F}_\mathrm{p},\boldsymbol{\lambda}) = a(\mathbf{F},\mathbf{F}_\mathrm{p}) - \boldsymbol{\lambda}:(\mathbf{F} - \mathbf{F}_0) - \mathbf{P}_0:\mathbf{F}

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§