pub struct ElasticViscoplasticAndElastic<B1, B2>(/* private fields */);Trait Implementations§
Source§impl<B1, B2, Y, const D: usize> ElasticViscoplasticDaeElements<Y, D> for ElasticViscoplasticAndElastic<B1, B2>where
B1: ElasticViscoplasticDaeElements<Y, D>,
B2: ElasticElements<D>,
impl<B1, B2, Y, const D: usize> ElasticViscoplasticDaeElements<Y, D> for ElasticViscoplasticAndElastic<B1, B2>where
B1: ElasticViscoplasticDaeElements<Y, D>,
B2: ElasticElements<D>,
Source§type Field = <B1 as ElasticViscoplasticDaeElements<Y, D>>::Field
type Field = <B1 as ElasticViscoplasticDaeElements<Y, D>>::Field
The whole-mesh field this topology’s plastic state lives on.
Source§type State = <B1 as ElasticViscoplasticDaeElements<Y, D>>::State
type State = <B1 as ElasticViscoplasticDaeElements<Y, D>>::State
The per-element grouped state — a per-Gauss-point list for one block,
a
TensorTuple of those for Blocks.Source§type History = <B1 as ElasticViscoplasticDaeElements<Y, D>>::History
type History = <B1 as ElasticViscoplasticDaeElements<Y, D>>::History
Time history of
Self::State.Source§fn unflatten(flat: &<Self::Field as Integrable>::Point) -> Self::State
fn unflatten(flat: &<Self::Field as Integrable>::Point) -> Self::State
The inverse of
Self::flatten.Source§fn dae_rate(
&self,
t: Quantity<Time>,
nodal_coordinates: &NodalCoordinates<D>,
flat: &<Self::Field as Integrable>::Point,
) -> Result<Derivative<<Self::Field as Integrable>::Increment, Time>, ElementModelError>
fn dae_rate( &self, t: Quantity<Time>, nodal_coordinates: &NodalCoordinates<D>, flat: &<Self::Field as Integrable>::Point, ) -> Result<Derivative<<Self::Field as Integrable>::Increment, Time>, ElementModelError>
Evaluates every Gauss point’s plastic rate at
nodal_coordinates.Source§impl<B1, B2, S, const D: usize> ElasticViscoplasticElements<S, D> for ElasticViscoplasticAndElastic<B1, B2>
impl<B1, B2, S, const D: usize> ElasticViscoplasticElements<S, D> for ElasticViscoplasticAndElastic<B1, B2>
fn initial_state(&self) -> S
fn nodal_forces_into( &self, nodal_coordinates: &NodalCoordinates<D>, state_variables: &S, nodal_forces: &mut NodalForcesSolid<D>, ) -> Result<(), ElementModelError>
fn nodal_stiffnesses_into( &self, nodal_coordinates: &NodalCoordinates<D>, state_variables: &S, nodal_stiffnesses: &mut NodalStiffnessesSolid<D>, ) -> Result<(), ElementModelError>
fn state_variables_evolution( &self, nodal_coordinates: &NodalCoordinates<D>, state_variables: &S, ) -> Result<Derivative<S>, ElementModelError>
fn nodal_forces( &self, nodal_coordinates: &NodalCoordinates<D>, state_variables: &S, ) -> Result<NodalForcesSolid<D>, ElementModelError>
fn nodal_stiffnesses( &self, nodal_coordinates: &NodalCoordinates<D>, state_variables: &S, ) -> Result<NodalStiffnessesSolid<D>, ElementModelError>
Source§impl<B1, B2> Elements for ElasticViscoplasticAndElastic<B1, B2>
impl<B1, B2> Elements for ElasticViscoplasticAndElastic<B1, B2>
fn node_neighbors(&self, neighbors: &mut [Vec<usize>])
Source§impl<B1, B2, S, const D: usize> HyperelasticViscoplasticElements<S, D> for ElasticViscoplasticAndElastic<B1, B2>
impl<B1, B2, S, const D: usize> HyperelasticViscoplasticElements<S, D> for ElasticViscoplasticAndElastic<B1, B2>
fn helmholtz_free_energy( &self, nodal_coordinates: &NodalCoordinates<D>, state_variables: &S, ) -> Result<Quantity<Energy>, ElementModelError>
Auto Trait Implementations§
impl<B1, B2> Freeze for ElasticViscoplasticAndElastic<B1, B2>
impl<B1, B2> RefUnwindSafe for ElasticViscoplasticAndElastic<B1, B2>where
B1: RefUnwindSafe,
B2: RefUnwindSafe,
impl<B1, B2> Send for ElasticViscoplasticAndElastic<B1, B2>
impl<B1, B2> Sync for ElasticViscoplasticAndElastic<B1, B2>
impl<B1, B2> Unpin for ElasticViscoplasticAndElastic<B1, B2>
impl<B1, B2> UnsafeUnpin for ElasticViscoplasticAndElastic<B1, B2>where
B1: UnsafeUnpin,
B2: UnsafeUnpin,
impl<B1, B2> UnwindSafe for ElasticViscoplasticAndElastic<B1, B2>where
B1: UnwindSafe,
B2: UnwindSafe,
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