Back to Eqiora docs Skip to main content

GeometryStateEnvelopeV1

Struct GeometryStateEnvelopeV1 

pub struct GeometryStateEnvelopeV1 { /* private fields */ }
Description

One accepted coordinate state over an immutable reference simplex mesh.

The wire deliberately contains no cells, facets, or other topology. Vertex order comes exclusively from the exact reference mesh digest. Current quality and path-orientation evidence are replayed with that reference connectivity; mesh velocity is derived from consecutive accepted states and cannot be supplied to Self::new. Version 1 is the bounded 2D fixed-topology ALE contract from RFC 0064.

Implementations§

§

impl GeometryStateEnvelopeV1

pub fn new( model: &impl ReplayableCanonicalModelArtifact, geometry: &GeometryIdentityEnvelopeV1, correspondence: &GeometryMeshCorrespondenceEnvelopeV1, reference_mesh: &SimplicialMeshEnvelopeV1, realization: &(impl CanonicalRealizationArtifact + ?Sized), step: u64, time_s: f64, predecessor: Option<&GeometryStateEnvelopeV1>, solid_displacement: &FieldSnapshotEnvelopeV1, current_coordinates_m: Vec<Vec<f64>>, ) -> Result<GeometryStateEnvelopeV1, Diagnostic>

Capture one accepted 2D fixed-topology coordinate state.

The initial state is exactly (step = 0, time_s = 0) and has no predecessor or mesh velocity. Every later state must immediately follow its predecessor in step and time. The solid-displacement snapshot must share the complete reference lineage and have coherent-SI length-valued spatial-vector type.

§Errors

Returns EQ0901 for stale dependencies, invalid step/time lineage, wrong driver type, changed vertex inventory, non-finite coordinates, an inverted or low-quality current mesh, or an orientation loss along the complete linear path from the predecessor.

pub fn from_json( bytes: &[u8], limits: MeshDecoderLimits, ) -> Result<GeometryStateEnvelopeV1, Diagnostic>

Decode bounded wire data without trusting referenced artifacts.

Exact topology, quality, path, velocity, and dependency replay remains pending until Self::validate_against succeeds.

§Errors

Returns EQ0901 for malformed, oversized, unknown, non-finite, or noncanonical wire data, including any topology-bearing unknown field.

pub fn canonical_json(&self) -> Result<Vec<u8>, Diagnostic>

Deterministic canonical JSON bytes.

§Errors

Returns EQ0901 if serialization unexpectedly fails.

pub fn digest(&self) -> Result<ArtifactDigest, Diagnostic>

Domain-separated identity of this coordinate state and its evidence.

§Errors

Returns EQ0901 if canonical serialization fails.

pub fn model_artifact(&self) -> ArtifactDigest

Exact reference Model artifact.

pub const fn semantic_revision(&self) -> u64

Reference Model semantic revision.

pub fn reference_geometry_artifact(&self) -> ArtifactDigest

Exact reference Geometry Identity artifact.

pub fn reference_correspondence_artifact(&self) -> ArtifactDigest

Exact reference geometry-to-mesh correspondence artifact.

pub fn reference_mesh_artifact(&self) -> ArtifactDigest

Exact immutable reference mesh artifact.

pub fn realization_artifact(&self) -> ArtifactDigest

Exact ALE Realization artifact.

pub const fn step(&self) -> u64

Accepted step ordinal.

pub const fn time_s(&self) -> f64

Accepted coherent-SI time in seconds.

pub fn predecessor(&self) -> Option<ArtifactDigest>

Exact predecessor GeometryState, absent only at step zero.

pub fn solid_displacement_snapshot(&self) -> ArtifactDigest

Exact accepted solid-displacement Field snapshot driving this state.

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>]>

Derived mesh velocity in immutable reference vertex order.

The initial state has no time interval and therefore no velocity.

pub const fn minimum_mean_ratio(&self) -> f64

Recomputed minimum current-cell mean-ratio quality.

pub const fn minimum_signed_measure_scale(&self) -> f64

Recomputed minimum current-cell signed measure scale.

pub const fn minimum_path_signed_measure_scale(&self) -> f64

Exact minimum signed measure scale along the admitted linear path.

pub fn validate_against( &self, model: &impl ReplayableCanonicalModelArtifact, geometry: &GeometryIdentityEnvelopeV1, correspondence: &GeometryMeshCorrespondenceEnvelopeV1, reference_mesh: &SimplicialMeshEnvelopeV1, realization: &(impl CanonicalRealizationArtifact + ?Sized), predecessor: Option<&GeometryStateEnvelopeV1>, solid_displacement: &FieldSnapshotEnvelopeV1, ) -> Result<(), Diagnostic>

Rebuild and compare the complete state from exact dependencies.

§Errors

Returns EQ0901 for dependency, predecessor, driver, coordinate, velocity, path, or quality-evidence drift.

Trait Implementations§

§

impl Clone for GeometryStateEnvelopeV1

§

fn clone(&self) -> GeometryStateEnvelopeV1

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
§

impl Debug for GeometryStateEnvelopeV1

§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
§

impl PartialEq for GeometryStateEnvelopeV1

§

fn eq(&self, other: &GeometryStateEnvelopeV1) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
§

impl ReplayableFixedTopologyGeometryStateArtifact for GeometryStateEnvelopeV1

§

type DriverReplayEvidence<'a> = ()

Complete generation-specific evidence needed to replay the geometry driver rather than trusting the coordinate payload. Read more
§

fn geometry_state_digest(&self) -> Result<ArtifactDigest, Diagnostic>

Domain-separated identity in the concrete Geometry State generation. Read more
§

fn model_artifact(&self) -> ArtifactDigest

Exact reference Model artifact.
§

fn semantic_revision(&self) -> u64

Reference Model semantic revision.
§

fn reference_geometry_artifact(&self) -> ArtifactDigest

Exact reference Geometry Identity artifact.
§

fn reference_correspondence_artifact(&self) -> ArtifactDigest

Exact reference geometry-to-mesh correspondence artifact.
§

fn reference_mesh_artifact(&self) -> ArtifactDigest

Exact immutable reference mesh artifact.
§

fn realization_artifact(&self) -> ArtifactDigest

Exact Realization artifact.
§

fn step(&self) -> u64

Accepted step ordinal.
§

fn time_s(&self) -> f64

Accepted coherent-SI time in seconds.
§

fn predecessor(&self) -> Option<ArtifactDigest>

Exact predecessor Geometry State, absent only at state zero.
§

fn solid_displacement_snapshot(&self) -> ArtifactDigest

Exact solid-displacement snapshot driving this state.
§

fn validate_fixed_topology_replay<'a, M, R>( &self, context: &ValidatedMovingSpatialContextV2<'_, M, R>, predecessor: Option<&GeometryStateEnvelopeV1>, solid_displacement: &FieldSnapshotEnvelopeV1, _: <GeometryStateEnvelopeV1 as ReplayableFixedTopologyGeometryStateArtifact>::DriverReplayEvidence<'a>, ) -> Result<(), Diagnostic>
where M: ReplayableCanonicalModelArtifact, R: ReplayableFixedTopologyAleRealizationArtifact,

Replay the concrete generation from exact dependencies. Read more
§

impl StructuralPartialEq for GeometryStateEnvelopeV1

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<Src, Scheme> ApproxFrom<Src, Scheme> for Src
where Scheme: ApproxScheme,

§

type Err = NoError

The error type produced by a failed conversion.
§

fn approx_from(src: Src) -> Result<Src, <Src as ApproxFrom<Src, Scheme>>::Err>

Convert the given value into an approximately equivalent representation.
§

impl<Dst, Src, Scheme> ApproxInto<Dst, Scheme> for Src
where Dst: ApproxFrom<Src, Scheme>, Scheme: ApproxScheme,

§

type Err = <Dst as ApproxFrom<Src, Scheme>>::Err

The error type produced by a failed conversion.
§

fn approx_into(self) -> Result<Dst, <Src as ApproxInto<Dst, Scheme>>::Err>

Convert the subject into an approximately equivalent representation.
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> ByRef<T> for T

§

fn by_ref(&self) -> &T

Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<T, Dst> ConvAsUtil<Dst> for T

§

fn approx(self) -> Result<Dst, Self::Err>
where Self: Sized + ApproxInto<Dst>,

Approximate the subject with the default scheme.
§

fn approx_by<Scheme>(self) -> Result<Dst, Self::Err>
where Self: Sized + ApproxInto<Dst, Scheme>, Scheme: ApproxScheme,

Approximate the subject with a specific scheme.
§

impl<T> ConvUtil for T

§

fn approx_as<Dst>(self) -> Result<Dst, Self::Err>
where Self: Sized + ApproxInto<Dst>,

Approximate the subject to a given type with the default scheme.
§

fn approx_as_by<Dst, Scheme>(self) -> Result<Dst, Self::Err>
where Self: Sized + ApproxInto<Dst, Scheme>, Scheme: ApproxScheme,

Approximate the subject to a given type with a specific scheme.
§

fn into_as<Dst>(self) -> Dst
where Self: Sized + Into<Dst>,

Convert the subject to a given type.
§

fn try_as<Dst>(self) -> Result<Dst, Self::Err>
where Self: Sized + TryInto<Dst>,

Attempt to convert the subject to a given type.
§

fn value_as<Dst>(self) -> Result<Dst, Self::Err>
where Self: Sized + ValueInto<Dst>,

Attempt a value conversion of the subject to a given type.
§

impl<T> DistributionExt for T
where T: ?Sized,

§

fn rand<T>(&self, rng: &mut (impl Rng + ?Sized)) -> T
where Self: Distribution<T>,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts 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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts 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

§

const ALIGN: usize

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
§

impl<SS, SP> SupersetOf<SS> for SP
where SS: SubsetOf<SP>,

§

fn to_subset(&self) -> Option<SS>

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more
§

fn is_in_subset(&self) -> bool

Checks if self is actually part of its subset T (and can be converted to it).
§

fn to_subset_unchecked(&self) -> SS

Use with care! Same as self.to_subset but without any property checks. Always succeeds.
§

fn from_subset(element: &SS) -> SP

The inclusion map: converts self to the equivalent element of its superset.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
§

impl<Src> TryFrom<Src> for Src

§

type Err = NoError

The error type produced by a failed conversion.
§

fn try_from(src: Src) -> Result<Src, <Src as TryFrom<Src>>::Err>

Convert the given value into the subject type.
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
§

impl<Src, Dst> TryInto<Dst> for Src
where Dst: TryFrom<Src>,

§

type Err = <Dst as TryFrom<Src>>::Err

The error type produced by a failed conversion.
§

fn try_into(self) -> Result<Dst, <Src as TryInto<Dst>>::Err>

Convert the subject into the destination type.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<Src> ValueFrom<Src> for Src

§

type Err = NoError

The error type produced by a failed conversion.
§

fn value_from(src: Src) -> Result<Src, <Src as ValueFrom<Src>>::Err>

Convert the given value into an exactly equivalent representation.
§

impl<Src, Dst> ValueInto<Dst> for Src
where Dst: ValueFrom<Src>,

§

type Err = <Dst as ValueFrom<Src>>::Err

The error type produced by a failed conversion.
§

fn value_into(self) -> Result<Dst, <Src as ValueInto<Dst>>::Err>

Convert the subject into an exactly equivalent representation.
§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<T, U> Imply<T> for U
where T: ?Sized, U: ?Sized,

§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Scalar for T
where T: 'static + Clone + PartialEq + Debug,