pub trait FixedNodesReferenceFiniteElement<T>where
T: Scalar,
DefaultAllocator: DimAllocator<T, Self::ReferenceDim> + Allocator<T, U1, Self::NodalDim> + Allocator<T, Self::ReferenceDim, Self::NodalDim>,{
type ReferenceDim: SmallDim;
type NodalDim: SmallDim;
// Required methods
fn evaluate_basis(
&self,
reference_coords: &OPoint<T, Self::ReferenceDim>
) -> OMatrix<T, U1, Self::NodalDim>;
fn gradients(
&self,
reference_coords: &OPoint<T, Self::ReferenceDim>
) -> OMatrix<T, Self::ReferenceDim, Self::NodalDim>;
}
Expand description
Reference finite elements with a number of nodes fixed at compile-time.
This is essentially equivalent to the old ReferenceFiniteElement trait, and exists only
to make existing code written with the old API in mind still work without having to
immediately re-write everything. It will be removed once everything has been ported over
to the new API (ReferenceFiniteElement
).
TODO: Remove this trait once all elements and tests have been ported over to
ReferenceFiniteElement
Required Associated Types§
Required Methods§
sourcefn evaluate_basis(
&self,
reference_coords: &OPoint<T, Self::ReferenceDim>
) -> OMatrix<T, U1, Self::NodalDim>
fn evaluate_basis( &self, reference_coords: &OPoint<T, Self::ReferenceDim> ) -> OMatrix<T, U1, Self::NodalDim>
Evaluates each basis function at the given reference coordinates. The result is given in a row vector where each entry is the value of the corresponding basis function.
sourcefn gradients(
&self,
reference_coords: &OPoint<T, Self::ReferenceDim>
) -> OMatrix<T, Self::ReferenceDim, Self::NodalDim>
fn gradients( &self, reference_coords: &OPoint<T, Self::ReferenceDim> ) -> OMatrix<T, Self::ReferenceDim, Self::NodalDim>
Given nodal weights, construct a matrix whose columns are the gradients of each shape function in the element.