Struct fenris::space::ElementInSpace [−][src]
pub struct ElementInSpace<'a, Space> { /* fields omitted */ }
Expand description
A convenience wrapper for producing a FiniteElement
from an indexed element in a
FiniteElementSpace
.
Implementations
Trait Implementations
impl<'a, T, Space> FiniteElement<T> for ElementInSpace<'a, Space> where
T: Scalar,
Space: FiniteElementSpace<T>,
DefaultAllocator: FiniteElementAllocator<T, Space::GeometryDim, Space::ReferenceDim>,
impl<'a, T, Space> FiniteElement<T> for ElementInSpace<'a, Space> where
T: Scalar,
Space: FiniteElementSpace<T>,
DefaultAllocator: FiniteElementAllocator<T, Space::GeometryDim, Space::ReferenceDim>,
type GeometryDim = Space::GeometryDim
fn reference_jacobian(
&self,
reference_coords: &OPoint<T, Self::ReferenceDim>
) -> OMatrix<T, Self::GeometryDim, Self::ReferenceDim>
fn reference_jacobian(
&self,
reference_coords: &OPoint<T, Self::ReferenceDim>
) -> OMatrix<T, Self::GeometryDim, Self::ReferenceDim>
Compute the Jacobian of the transformation from the reference element to the given element at the given reference coordinates. Read more
fn map_reference_coords(
&self,
reference_coords: &OPoint<T, Self::ReferenceDim>
) -> OPoint<T, Self::GeometryDim>
fn map_reference_coords(
&self,
reference_coords: &OPoint<T, Self::ReferenceDim>
) -> OPoint<T, Self::GeometryDim>
Maps reference coordinates to physical coordinates in the element.
impl<'a, T, Space> ReferenceFiniteElement<T> for ElementInSpace<'a, Space> where
T: Scalar,
Space: FiniteElementSpace<T>,
DefaultAllocator: FiniteElementAllocator<T, Space::GeometryDim, Space::ReferenceDim>,
impl<'a, T, Space> ReferenceFiniteElement<T> for ElementInSpace<'a, Space> where
T: Scalar,
Space: FiniteElementSpace<T>,
DefaultAllocator: FiniteElementAllocator<T, Space::GeometryDim, Space::ReferenceDim>,
type ReferenceDim = Space::ReferenceDim
fn populate_basis(
&self,
basis_values: &mut [T],
reference_coords: &OPoint<T, Self::ReferenceDim>
)
fn populate_basis(
&self,
basis_values: &mut [T],
reference_coords: &OPoint<T, Self::ReferenceDim>
)
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. Read more
fn populate_basis_gradients(
&self,
basis_gradients: MatrixSliceMut<'_, T, Self::ReferenceDim, Dynamic>,
reference_coords: &OPoint<T, Self::ReferenceDim>
)
fn populate_basis_gradients(
&self,
basis_gradients: MatrixSliceMut<'_, T, Self::ReferenceDim, Dynamic>,
reference_coords: &OPoint<T, Self::ReferenceDim>
)
Given nodal weights, construct a matrix whose columns are the gradients of each shape function in the element. Read more
Auto Trait Implementations
impl<'a, Space> RefUnwindSafe for ElementInSpace<'a, Space> where
Space: RefUnwindSafe,
impl<'a, Space> Send for ElementInSpace<'a, Space> where
Space: Sync,
impl<'a, Space> Sync for ElementInSpace<'a, Space> where
Space: Sync,
impl<'a, Space> Unpin for ElementInSpace<'a, Space>
impl<'a, Space> UnwindSafe for ElementInSpace<'a, Space> where
Space: RefUnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
pub fn is_in_subset(&self) -> bool
pub fn is_in_subset(&self) -> bool
Checks if self
is actually part of its subset T
(and can be converted to it).
pub fn to_subset_unchecked(&self) -> SS
pub fn to_subset_unchecked(&self) -> SS
Use with care! Same as self.to_subset
but without any property checks. Always succeeds.
pub fn from_subset(element: &SS) -> SP
pub fn from_subset(element: &SS) -> SP
The inclusion map: converts self
to the equivalent element of its superset.