pub trait SurfaceFiniteElementMethods<const G: usize, const M: usize, const N: usize, const P: usize>where
Self: SurfaceFiniteElementMethodsExtra<M, N, P>,{
// Required methods
fn bases<const I: usize>(
nodal_coordinates: &Coordinates<I, N>,
) -> SurfaceBases<I, P>;
fn dual_bases<const I: usize>(
nodal_coordinates: &Coordinates<I, N>,
) -> SurfaceBases<I, P>;
fn normals(nodal_coordinates: &ElementNodalCoordinates<N>) -> Normals<P>;
fn normal_gradients(
nodal_coordinates: &ElementNodalCoordinates<N>,
) -> NormalGradients<N, P>;
fn normal_rates(
nodal_coordinates: &ElementNodalCoordinates<N>,
nodal_velocities: &ElementNodalVelocities<N>,
) -> NormalRates<P>;
}Required Methods§
fn bases<const I: usize>( nodal_coordinates: &Coordinates<I, N>, ) -> SurfaceBases<I, P>
fn dual_bases<const I: usize>( nodal_coordinates: &Coordinates<I, N>, ) -> SurfaceBases<I, P>
fn normals(nodal_coordinates: &ElementNodalCoordinates<N>) -> Normals<P>
fn normal_gradients( nodal_coordinates: &ElementNodalCoordinates<N>, ) -> NormalGradients<N, P>
fn normal_rates( nodal_coordinates: &ElementNodalCoordinates<N>, nodal_velocities: &ElementNodalVelocities<N>, ) -> NormalRates<P>
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.