Struct GeometryStateEnvelopeV3
pub struct GeometryStateEnvelopeV3 { /* private fields */ }Description
One accepted tetrahedral coordinate state over immutable reference topology.
Version 3 is deliberately narrower than a dimension-generic wire format. It
admits only intrinsic three-dimensional affine tetrahedra and carries that
dimension explicitly. Connectivity, mesh velocity, and quality are never
authored by a caller: connectivity comes from the exact reference mesh,
velocity comes from consecutive accepted coordinates, and every quality
value is replayed with FixedTopologyGeometryState<3> and
FixedTopologyGeometryAction<3>.
Implementations§
§impl GeometryStateEnvelopeV3
impl GeometryStateEnvelopeV3
pub fn new<M, R>(
context: &ValidatedMovingSpatialContextV2<'_, M, R>,
step: u64,
time_s: f64,
predecessor: Option<&GeometryStateEnvelopeV3>,
solid_displacement: &FieldSnapshotEnvelopeV1,
solid_displacement_blocks: &[DiscreteFieldEnvelopeV1],
current_coordinates_m: Vec<Vec<f64>>,
) -> Result<GeometryStateEnvelopeV3, Diagnostic>where
M: ReplayableCanonicalModelArtifact,
R: ReplayableFixedTopologyAleRealizationArtifact,
pub fn new<M, R>(
context: &ValidatedMovingSpatialContextV2<'_, M, R>,
step: u64,
time_s: f64,
predecessor: Option<&GeometryStateEnvelopeV3>,
solid_displacement: &FieldSnapshotEnvelopeV1,
solid_displacement_blocks: &[DiscreteFieldEnvelopeV1],
current_coordinates_m: Vec<Vec<f64>>,
) -> Result<GeometryStateEnvelopeV3, Diagnostic>where
M: ReplayableCanonicalModelArtifact,
R: ReplayableFixedTopologyAleRealizationArtifact,
Capture one accepted fixed-topology tetrahedral coordinate state.
State zero is exactly (step = 0, time_s = 0) and is checked along the
complete linear path from the reference coordinates. Every later state
immediately follows an exact predecessor and derives its mesh velocity
and path evidence from that positive-duration action.
§Errors
Returns EQ0901 for stale Model, Geometry, correspondence, mesh,
Realization, predecessor, or displacement identities; a non-tetrahedral
reference; invalid coordinates; non-adjacent accepted coordinates; or
failed current/path quality replay.
pub fn from_json(
bytes: &[u8],
limits: MeshDecoderLimits,
) -> Result<GeometryStateEnvelopeV3, Diagnostic>
pub fn from_json( bytes: &[u8], limits: MeshDecoderLimits, ) -> Result<GeometryStateEnvelopeV3, Diagnostic>
Decode bounded wire data without trusting referenced artifacts.
§Errors
Returns EQ0901 for malformed, oversized, unknown, noncanonical, or
non-three-dimensional wire data. Exact replay remains pending until
Self::validate_against succeeds.
pub fn canonical_json(&self) -> Result<Vec<u8>, Diagnostic>
pub fn canonical_json(&self) -> Result<Vec<u8>, Diagnostic>
pub fn digest(&self) -> Result<ArtifactDigest, Diagnostic>
pub fn digest(&self) -> Result<ArtifactDigest, Diagnostic>
Domain-separated identity of the complete state and replay evidence.
§Errors
Returns EQ0901 if canonical serialization fails.
pub const fn spatial_dimension(&self) -> usize
pub const fn spatial_dimension(&self) -> usize
Explicit admitted spatial dimension, always three.
pub fn model_artifact(&self) -> ArtifactDigest
pub fn model_artifact(&self) -> ArtifactDigest
Exact reference Model artifact.
pub const fn semantic_revision(&self) -> u64
pub const fn semantic_revision(&self) -> u64
Reference Model semantic revision.
pub fn reference_geometry_artifact(&self) -> ArtifactDigest
pub fn reference_geometry_artifact(&self) -> ArtifactDigest
Exact reference Geometry Identity artifact.
pub fn reference_correspondence_artifact(&self) -> ArtifactDigest
pub fn reference_correspondence_artifact(&self) -> ArtifactDigest
Exact reference geometry-to-mesh correspondence artifact.
pub fn reference_mesh_artifact(&self) -> ArtifactDigest
pub fn reference_mesh_artifact(&self) -> ArtifactDigest
Exact immutable tetrahedral reference mesh artifact.
pub fn realization_artifact(&self) -> ArtifactDigest
pub fn realization_artifact(&self) -> ArtifactDigest
Exact fixed-topology ALE Realization artifact.
pub fn predecessor(&self) -> Option<ArtifactDigest>
pub fn predecessor(&self) -> Option<ArtifactDigest>
Exact predecessor GeometryState, absent only at state zero.
pub fn solid_displacement_snapshot(&self) -> ArtifactDigest
pub fn solid_displacement_snapshot(&self) -> ArtifactDigest
Exact accepted solid-displacement Field snapshot driving this state.
pub fn current_coordinates_m(&self) -> &[Vec<f64>]
pub fn current_coordinates_m(&self) -> &[Vec<f64>]
Absolute coherent-SI coordinates in immutable reference-vertex order.
pub fn mesh_velocity_m_per_s(&self) -> Option<&[Vec<f64>]>
pub fn mesh_velocity_m_per_s(&self) -> Option<&[Vec<f64>]>
Mesh velocity derived from consecutive accepted coordinates.
State zero has no positive time interval and therefore no velocity.
pub const fn reference_minimum_mean_ratio(&self) -> f64
pub const fn reference_minimum_mean_ratio(&self) -> f64
Replayed minimum mean ratio of the immutable reference mesh.
pub const fn reference_minimum_signed_measure_scale(&self) -> f64
pub const fn reference_minimum_signed_measure_scale(&self) -> f64
Replayed minimum signed measure scale of the immutable reference mesh.
pub const fn current_minimum_mean_ratio(&self) -> f64
pub const fn current_minimum_mean_ratio(&self) -> f64
Replayed minimum mean ratio of the accepted current coordinates.
pub const fn current_minimum_signed_measure_scale(&self) -> f64
pub const fn current_minimum_signed_measure_scale(&self) -> f64
Replayed minimum signed measure scale of the accepted current coordinates.
pub const fn minimum_path_signed_measure_scale(&self) -> f64
pub const fn minimum_path_signed_measure_scale(&self) -> f64
Exact minimum signed measure scale over the complete admitted path.
pub fn validate_against<M, R>(
&self,
context: &ValidatedMovingSpatialContextV2<'_, M, R>,
predecessor: Option<&GeometryStateEnvelopeV3>,
solid_displacement: &FieldSnapshotEnvelopeV1,
solid_displacement_blocks: &[DiscreteFieldEnvelopeV1],
) -> Result<(), Diagnostic>where
M: ReplayableCanonicalModelArtifact,
R: ReplayableFixedTopologyAleRealizationArtifact,
pub fn validate_against<M, R>(
&self,
context: &ValidatedMovingSpatialContextV2<'_, M, R>,
predecessor: Option<&GeometryStateEnvelopeV3>,
solid_displacement: &FieldSnapshotEnvelopeV1,
solid_displacement_blocks: &[DiscreteFieldEnvelopeV1],
) -> Result<(), Diagnostic>where
M: ReplayableCanonicalModelArtifact,
R: ReplayableFixedTopologyAleRealizationArtifact,
Rebuild and compare the complete state from exact dependencies.
§Errors
Returns EQ0901 for dependency, predecessor, displacement-driver,
coordinate, velocity, reference/current quality, or path-evidence drift.
Trait Implementations§
§impl Clone for GeometryStateEnvelopeV3
impl Clone for GeometryStateEnvelopeV3
§impl Debug for GeometryStateEnvelopeV3
impl Debug for GeometryStateEnvelopeV3
§impl PartialEq for GeometryStateEnvelopeV3
impl PartialEq for GeometryStateEnvelopeV3
§fn eq(&self, other: &GeometryStateEnvelopeV3) -> bool
fn eq(&self, other: &GeometryStateEnvelopeV3) -> bool
self and other values to be equal, and is used by ==.§impl ReplayableFixedTopologyGeometryStateArtifact for GeometryStateEnvelopeV3
impl ReplayableFixedTopologyGeometryStateArtifact for GeometryStateEnvelopeV3
§type DriverReplayEvidence<'a> = &'a [DiscreteFieldEnvelopeV1]
type DriverReplayEvidence<'a> = &'a [DiscreteFieldEnvelopeV1]
§fn geometry_state_digest(&self) -> Result<ArtifactDigest, Diagnostic>
fn geometry_state_digest(&self) -> Result<ArtifactDigest, Diagnostic>
§fn model_artifact(&self) -> ArtifactDigest
fn model_artifact(&self) -> ArtifactDigest
§fn semantic_revision(&self) -> u64
fn semantic_revision(&self) -> u64
§fn reference_geometry_artifact(&self) -> ArtifactDigest
fn reference_geometry_artifact(&self) -> ArtifactDigest
§fn reference_correspondence_artifact(&self) -> ArtifactDigest
fn reference_correspondence_artifact(&self) -> ArtifactDigest
§fn reference_mesh_artifact(&self) -> ArtifactDigest
fn reference_mesh_artifact(&self) -> ArtifactDigest
§fn realization_artifact(&self) -> ArtifactDigest
fn realization_artifact(&self) -> ArtifactDigest
§fn predecessor(&self) -> Option<ArtifactDigest>
fn predecessor(&self) -> Option<ArtifactDigest>
§fn solid_displacement_snapshot(&self) -> ArtifactDigest
fn solid_displacement_snapshot(&self) -> ArtifactDigest
§fn validate_fixed_topology_replay<'a, M, R>(
&self,
context: &ValidatedMovingSpatialContextV2<'_, M, R>,
predecessor: Option<&GeometryStateEnvelopeV3>,
solid_displacement: &FieldSnapshotEnvelopeV1,
evidence: <GeometryStateEnvelopeV3 as ReplayableFixedTopologyGeometryStateArtifact>::DriverReplayEvidence<'a>,
) -> Result<(), Diagnostic>where
M: ReplayableCanonicalModelArtifact,
R: ReplayableFixedTopologyAleRealizationArtifact,
fn validate_fixed_topology_replay<'a, M, R>(
&self,
context: &ValidatedMovingSpatialContextV2<'_, M, R>,
predecessor: Option<&GeometryStateEnvelopeV3>,
solid_displacement: &FieldSnapshotEnvelopeV1,
evidence: <GeometryStateEnvelopeV3 as ReplayableFixedTopologyGeometryStateArtifact>::DriverReplayEvidence<'a>,
) -> Result<(), Diagnostic>where
M: ReplayableCanonicalModelArtifact,
R: ReplayableFixedTopologyAleRealizationArtifact,
impl StructuralPartialEq for GeometryStateEnvelopeV3
Auto Trait Implementations§
impl Freeze for GeometryStateEnvelopeV3
impl RefUnwindSafe for GeometryStateEnvelopeV3
impl Send for GeometryStateEnvelopeV3
impl Sync for GeometryStateEnvelopeV3
impl Unpin for GeometryStateEnvelopeV3
impl UnsafeUnpin for GeometryStateEnvelopeV3
impl UnwindSafe for GeometryStateEnvelopeV3
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.