Struct DiscreteFieldPayload
pub struct DiscreteFieldPayload { /* private fields */ }Description
Invariant-checked, mesh-associated, entity-major f64 values.
This in-memory payload carries no mesh identity, source name, file path, parser state, unit, or semantic-field binding. A portable artifact layer must bind it to one exact mesh revision before assigning content identity.
Implementations§
§impl DiscreteFieldPayload
impl DiscreteFieldPayload
pub fn new(
topology: &dyn MeshTopology,
association: DiscreteFieldAssociation,
shape: DiscreteFieldShape,
values: Vec<f64>,
) -> Result<DiscreteFieldPayload, Diagnostic>
pub fn new( topology: &dyn MeshTopology, association: DiscreteFieldAssociation, shape: DiscreteFieldShape, values: Vec<f64>, ) -> Result<DiscreteFieldPayload, Diagnostic>
Check values against one mesh topology and take ownership of them.
Vertex selects dimension zero. Cell selects the topology’s
top-dimensional stratum. Values are flat and entity-major: component
j of entity i is values[i * component_count + j].
Every zero is normalized to positive zero before acceptance.
§Errors
Returns EQ0809 when the selected stratum is absent or empty, shape
arithmetic overflows, the value count differs from the exact required
count, or any value is non-finite.
pub const fn association(&self) -> DiscreteFieldAssociation
pub const fn association(&self) -> DiscreteFieldAssociation
Mesh stratum carrying the values.
pub const fn component_shape(&self) -> DiscreteFieldShape
pub const fn component_shape(&self) -> DiscreteFieldShape
Component shape retained as part of future artifact identity.
pub const fn entity_count(&self) -> usize
pub const fn entity_count(&self) -> usize
Number of associated mesh entities.
pub const fn component_count(&self) -> usize
pub const fn component_count(&self) -> usize
Number of stored components per associated entity.
pub fn entity_values(&self, entity: usize) -> Option<&[f64]>
pub fn entity_values(&self, entity: usize) -> Option<&[f64]>
Values belonging to one mesh entity, or None when out of range.
Trait Implementations§
§impl Clone for DiscreteFieldPayload
impl Clone for DiscreteFieldPayload
§impl Debug for DiscreteFieldPayload
impl Debug for DiscreteFieldPayload
§impl PartialEq for DiscreteFieldPayload
impl PartialEq for DiscreteFieldPayload
§fn eq(&self, other: &DiscreteFieldPayload) -> bool
fn eq(&self, other: &DiscreteFieldPayload) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for DiscreteFieldPayload
Auto Trait Implementations§
impl Freeze for DiscreteFieldPayload
impl RefUnwindSafe for DiscreteFieldPayload
impl Send for DiscreteFieldPayload
impl Sync for DiscreteFieldPayload
impl Unpin for DiscreteFieldPayload
impl UnsafeUnpin for DiscreteFieldPayload
impl UnwindSafe for DiscreteFieldPayload
Blanket Implementations§
Source§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<Src, Scheme> ApproxFrom<Src, Scheme> for Srcwhere
Scheme: ApproxScheme,
impl<Src, Scheme> ApproxFrom<Src, Scheme> for Srcwhere
Scheme: ApproxScheme,
§fn approx_from(src: Src) -> Result<Src, <Src as ApproxFrom<Src, Scheme>>::Err>
fn approx_from(src: Src) -> Result<Src, <Src as ApproxFrom<Src, Scheme>>::Err>
§impl<Dst, Src, Scheme> ApproxInto<Dst, Scheme> for Srcwhere
Dst: ApproxFrom<Src, Scheme>,
Scheme: ApproxScheme,
impl<Dst, Src, Scheme> ApproxInto<Dst, Scheme> for Srcwhere
Dst: ApproxFrom<Src, Scheme>,
Scheme: ApproxScheme,
§type Err = <Dst as ApproxFrom<Src, Scheme>>::Err
type Err = <Dst as ApproxFrom<Src, Scheme>>::Err
§fn approx_into(self) -> Result<Dst, <Src as ApproxInto<Dst, Scheme>>::Err>
fn approx_into(self) -> Result<Dst, <Src as ApproxInto<Dst, Scheme>>::Err>
Source§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T, Dst> ConvAsUtil<Dst> for T
impl<T, Dst> ConvAsUtil<Dst> for T
§fn approx(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
fn approx(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
§impl<T> ConvUtil for T
impl<T> ConvUtil for T
§fn approx_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
fn approx_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
§fn approx_as_by<Dst, Scheme>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst, Scheme>,
Scheme: ApproxScheme,
fn approx_as_by<Dst, Scheme>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst, Scheme>,
Scheme: ApproxScheme,
§fn into_as<Dst>(self) -> Dstwhere
Self: Sized + Into<Dst>,
fn into_as<Dst>(self) -> Dstwhere
Self: Sized + Into<Dst>,
§fn try_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + TryInto<Dst>,
fn try_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + TryInto<Dst>,
§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
fn rand<T>(&self, rng: &mut (impl Rng + ?Sized)) -> Twhere
Self: Distribution<T>,
Source§impl<T> From<T> for T
impl<T> From<T> for T
Source§impl<T, U> Into<U> for Twhere
U: From<T>,
impl<T, U> Into<U> for Twhere
U: From<T>,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>where
F: FnOnce(&Self) -> bool,
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>where
F: FnOnce(&Self) -> bool,
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> Same for T
impl<T> Same for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.