conspire::fem

Trait ViscoelasticFiniteElementBlock

Source
pub trait ViscoelasticFiniteElementBlock<'a, C, F, const G: usize, const N: usize>
where C: Viscoelastic<'a>, F: ViscoelasticFiniteElement<'a, C, G, N>,
{ // Required methods fn nodal_forces( &self, nodal_coordinates: &TensorRank1Vec<3, 1>, nodal_velocities: &TensorRank1Vec<3, 1>, ) -> Result<TensorRank1Vec<3, 1>, ConstitutiveError>; fn nodal_stiffnesses( &self, nodal_coordinates: &TensorRank1Vec<3, 1>, nodal_velocities: &TensorRank1Vec<3, 1>, ) -> Result<TensorRank2Vec2D<3, 1, 1>, ConstitutiveError>; fn nodal_velocities_element( &self, element_connectivity: &[usize; N], nodal_velocities: &TensorRank1Vec<3, 1>, ) -> CurrentCoordinates<D>; }

Required Methods§

Source

fn nodal_forces( &self, nodal_coordinates: &TensorRank1Vec<3, 1>, nodal_velocities: &TensorRank1Vec<3, 1>, ) -> Result<TensorRank1Vec<3, 1>, ConstitutiveError>

Source

fn nodal_stiffnesses( &self, nodal_coordinates: &TensorRank1Vec<3, 1>, nodal_velocities: &TensorRank1Vec<3, 1>, ) -> Result<TensorRank2Vec2D<3, 1, 1>, ConstitutiveError>

Source

fn nodal_velocities_element( &self, element_connectivity: &[usize; N], nodal_velocities: &TensorRank1Vec<3, 1>, ) -> CurrentCoordinates<D>

Implementors§

Source§

impl<'a, C, F, const G: usize, const N: usize> ViscoelasticFiniteElementBlock<'a, C, F, G, N> for ElementBlock<F, N>
where C: Viscoelastic<'a>, F: ViscoelasticFiniteElement<'a, C, G, N>, Self: FiniteElementBlockMethods<'a, C, F, G, N>,