pub trait CohesiveFiniteElement<const G: usize, const N: usize, const P: usize>where
Self: SurfaceFiniteElement<G, N, P>,{
// Required methods
fn nodal_mid_surface<const I: usize>(
nodal_coordinates: &ElementNodalEitherCoordinates<I, N>,
) -> ElementNodalEitherCoordinates<I, P>;
fn nodal_separations(
nodal_coordinates: &ElementNodalCoordinates<N>,
) -> Separations<P>;
fn normal_gradients_full(
nodal_mid_surface: &ElementNodalCoordinates<P>,
) -> NormalGradients<N, G>;
fn signs() -> ScalarList<N>;
// Provided methods
fn separations(
nodal_coordinates: &ElementNodalCoordinates<N>,
) -> Separations<G> { ... }
fn signed_shape_functions() -> ShapeFunctionsAtIntegrationPoints<G, N> { ... }
}Required Methods§
fn nodal_mid_surface<const I: usize>( nodal_coordinates: &ElementNodalEitherCoordinates<I, N>, ) -> ElementNodalEitherCoordinates<I, P>
fn nodal_separations( nodal_coordinates: &ElementNodalCoordinates<N>, ) -> Separations<P>
fn normal_gradients_full( nodal_mid_surface: &ElementNodalCoordinates<P>, ) -> NormalGradients<N, G>
fn signs() -> ScalarList<N>
Provided Methods§
fn separations(nodal_coordinates: &ElementNodalCoordinates<N>) -> Separations<G>
fn signed_shape_functions() -> ShapeFunctionsAtIntegrationPoints<G, N>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.