pub struct SurfaceElement<const G: usize, const N: usize, const O: usize> { /* private fields */ }Implementations§
Source§impl<const G: usize, const N: usize, const O: usize> SurfaceElement<G, N, O>
impl<const G: usize, const N: usize, const O: usize> SurfaceElement<G, N, O>
pub fn gradient_vectors(&self) -> &GradientVectors<3, G, N>
pub fn reference_normals(&self) -> &ReferenceNormals<G>
Trait Implementations§
Source§impl<const G: usize, const N: usize, const O: usize> Clone for SurfaceElement<G, N, O>
impl<const G: usize, const N: usize, const O: usize> Clone for SurfaceElement<G, N, O>
Source§fn clone(&self) -> SurfaceElement<G, N, O>
fn clone(&self) -> SurfaceElement<G, N, O>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<C, const G: usize, const N: usize, const O: usize> ElasticFiniteElement<C, G, 2, N, N> for SurfaceElement<G, N, O>where
C: Elastic,
Self: SolidFiniteElement<G, 2, N, N>,
impl<C, const G: usize, const N: usize, const O: usize> ElasticFiniteElement<C, G, 2, N, N> for SurfaceElement<G, N, O>where
C: Elastic,
Self: SolidFiniteElement<G, 2, N, N>,
fn nodal_forces( &self, constitutive_model: &C, nodal_coordinates: &ElementNodalCoordinates<N>, ) -> Result<ElementNodalForcesSolid<N>, FiniteElementError>
fn nodal_stiffnesses( &self, constitutive_model: &C, nodal_coordinates: &ElementNodalCoordinates<N>, ) -> Result<ElementNodalStiffnessesSolid<N>, FiniteElementError>
Source§impl<C, const G: usize, const N: usize, const O: usize, const P: usize> ElasticHyperviscousFiniteElement<C, G, 2, N, P> for SurfaceElement<G, N, O>where
C: ElasticHyperviscous,
Self: ViscoelasticFiniteElement<C, G, 2, N, P>,
impl<C, const G: usize, const N: usize, const O: usize, const P: usize> ElasticHyperviscousFiniteElement<C, G, 2, N, P> for SurfaceElement<G, N, O>where
C: ElasticHyperviscous,
Self: ViscoelasticFiniteElement<C, G, 2, N, P>,
fn viscous_dissipation( &self, constitutive_model: &C, nodal_coordinates: &ElementNodalCoordinates<N>, nodal_velocities: &ElementNodalVelocities<N>, ) -> Result<Quantity<Power>, FiniteElementError>
fn dissipation_potential( &self, constitutive_model: &C, nodal_coordinates: &ElementNodalCoordinates<N>, nodal_velocities: &ElementNodalVelocities<N>, ) -> Result<Quantity<Power>, FiniteElementError>
Source§impl<const G: usize, const N: usize, const O: usize> From<(TensorList<TensorRank1<3, Reference, Length>, N>, Quantity<Length>)> for SurfaceElement<G, N, O>where
Self: SurfaceFiniteElement<G, N, N>,
impl<const G: usize, const N: usize, const O: usize> From<(TensorList<TensorRank1<3, Reference, Length>, N>, Quantity<Length>)> for SurfaceElement<G, N, O>where
Self: SurfaceFiniteElement<G, N, N>,
Source§impl<C, const G: usize, const N: usize, const O: usize, const P: usize> HyperelasticFiniteElement<C, G, 2, N, P> for SurfaceElement<G, N, O>where
C: Hyperelastic,
Self: ElasticFiniteElement<C, G, 2, N, P>,
impl<C, const G: usize, const N: usize, const O: usize, const P: usize> HyperelasticFiniteElement<C, G, 2, N, P> for SurfaceElement<G, N, O>where
C: Hyperelastic,
Self: ElasticFiniteElement<C, G, 2, N, P>,
fn helmholtz_free_energy( &self, constitutive_model: &C, nodal_coordinates: &ElementNodalCoordinates<N>, ) -> Result<Quantity<Energy>, FiniteElementError>
Source§impl<C, const G: usize, const N: usize, const O: usize, const P: usize> HyperviscoelasticFiniteElement<C, G, 2, N, P> for SurfaceElement<G, N, O>where
C: Hyperviscoelastic,
Self: ElasticHyperviscousFiniteElement<C, G, 2, N, P>,
impl<C, const G: usize, const N: usize, const O: usize, const P: usize> HyperviscoelasticFiniteElement<C, G, 2, N, P> for SurfaceElement<G, N, O>where
C: Hyperviscoelastic,
Self: ElasticHyperviscousFiniteElement<C, G, 2, N, P>,
fn helmholtz_free_energy( &self, constitutive_model: &C, nodal_coordinates: &ElementNodalCoordinates<N>, ) -> Result<Quantity<Energy>, FiniteElementError>
Source§impl<const G: usize, const N: usize, const O: usize> SolidFiniteElement<G, 2, N, N> for SurfaceElement<G, N, O>where
Self: SurfaceFiniteElement<G, N, N>,
impl<const G: usize, const N: usize, const O: usize> SolidFiniteElement<G, 2, N, N> for SurfaceElement<G, N, O>where
Self: SurfaceFiniteElement<G, N, N>,
fn deformation_gradients( &self, nodal_coordinates: &ElementNodalCoordinates<N>, ) -> DeformationGradientList<G>
fn deformation_gradient_rates( &self, nodal_coordinates: &ElementNodalCoordinates<N>, nodal_velocities: &ElementNodalVelocities<N>, ) -> DeformationGradientRateList<G>
Source§impl<const G: usize, const N: usize, const O: usize, const P: usize> SurfaceFiniteElement<G, N, P> for SurfaceElement<G, N, O>where
Self: FiniteElement<G, M, N, P>,
impl<const G: usize, const N: usize, const O: usize, const P: usize> SurfaceFiniteElement<G, N, P> for SurfaceElement<G, N, O>where
Self: FiniteElement<G, M, N, P>,
fn bases<I>( nodal_coordinates: &ElementNodalEitherCoordinates<I, P>, ) -> SurfaceBases<I, G>
fn dual_bases<I>( nodal_coordinates: &ElementNodalEitherCoordinates<I, P>, ) -> SurfaceDualBases<I, G>
fn normals(nodal_coordinates: &ElementNodalCoordinates<P>) -> Normals<G>
fn normal_gradients( nodal_coordinates: &ElementNodalCoordinates<P>, ) -> NormalGradients<P, G>
fn normal_rates( nodal_coordinates: &ElementNodalCoordinates<P>, nodal_velocities: &ElementNodalVelocities<P>, ) -> NormalRates<G>
Source§impl<C, const G: usize, const N: usize, const O: usize> ViscoelasticFiniteElement<C, G, 2, N, N> for SurfaceElement<G, N, O>where
C: Viscoelastic,
Self: SolidFiniteElement<G, 2, N, N>,
impl<C, const G: usize, const N: usize, const O: usize> ViscoelasticFiniteElement<C, G, 2, N, N> for SurfaceElement<G, N, O>where
C: Viscoelastic,
Self: SolidFiniteElement<G, 2, N, N>,
fn nodal_forces( &self, constitutive_model: &C, nodal_coordinates: &ElementNodalCoordinates<N>, nodal_velocities: &ElementNodalVelocities<N>, ) -> Result<ElementNodalForcesSolid<N>, FiniteElementError>
fn nodal_stiffnesses( &self, constitutive_model: &C, nodal_coordinates: &ElementNodalCoordinates<N>, nodal_velocities: &ElementNodalVelocities<N>, ) -> Result<ElementNodalDampingsSolid<N>, FiniteElementError>
Auto Trait Implementations§
impl<const G: usize, const N: usize, const O: usize> Freeze for SurfaceElement<G, N, O>
impl<const G: usize, const N: usize, const O: usize> RefUnwindSafe for SurfaceElement<G, N, O>
impl<const G: usize, const N: usize, const O: usize> Send for SurfaceElement<G, N, O>
impl<const G: usize, const N: usize, const O: usize> Sync for SurfaceElement<G, N, O>
impl<const G: usize, const N: usize, const O: usize> Unpin for SurfaceElement<G, N, O>
impl<const G: usize, const N: usize, const O: usize> UnsafeUnpin for SurfaceElement<G, N, O>
impl<const G: usize, const N: usize, const O: usize> UnwindSafe for SurfaceElement<G, N, O>
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