pub struct PatchIsometryFlowReparameterization {
pub new_row_coords: Array2<f64>,
pub new_decoder: Array2<f64>,
pub decoder_transport: Array2<f64>,
pub flow_theta: Vec<f64>,
pub defect_initial: f64,
pub defect_final: f64,
pub profiled_metric_scale: f64,
pub min_flow_jacobian_det: f64,
pub recomposition_residual: f64,
}Expand description
The exact, image-frozen minimum-isometry-defect flow reparameterization of
one d = 2 free/patch (Euclidean-patch) atom.
Fields§
§new_row_coords: Array2<f64>Canonical per-row coordinates t̃_i = φ_θ(t_i), shape (n, 2).
new_decoder: Array2<f64>Recomposed decoder B̃ = T · B, shape (m, p) — exact LS refit of the
original decoded image on the audit grid against the basis at the
transported grid (so γ̃ = γ ∘ φ⁻¹ without ever forming φ⁻¹).
decoder_transport: Array2<f64>The (m, m) basis transport T with Φ(φ(u)) · T ≈ Φ(u) on the audit
grid — the congruence object that transports the smoothness Gram.
flow_theta: Vec<f64>Optimal flow coefficients θ (layout per
FreePatchFlowBasis::mode_layout).
defect_initial: f64Isometry defect E(0) of the fitted chart (identity flow).
defect_final: f64Isometry defect E(θ) of the canonical chart. Strictly below
defect_initial (the pass refuses no-improvement flows).
profiled_metric_scale: f64The profiled global metric scale c at the optimum (the canonical
chart’s pullback metric is ≈ c·ḡ·I — flat, uniform-speed).
min_flow_jacobian_det: f64min det Dφ_θ on the guard grid. Always > PATCH_FLOW_DIFFEO_MIN_DET
when Some(..) is returned — a folded chart is refused upstream.
recomposition_residual: f64Max-abs recomposition error on the audit grid, relative to the image
scale. Always ≤ CHART_RECOMPOSITION_REL_TOL when Some(..).
Trait Implementations§
Source§impl Clone for PatchIsometryFlowReparameterization
impl Clone for PatchIsometryFlowReparameterization
Source§fn clone(&self) -> PatchIsometryFlowReparameterization
fn clone(&self) -> PatchIsometryFlowReparameterization
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for PatchIsometryFlowReparameterization
impl RefUnwindSafe for PatchIsometryFlowReparameterization
impl Send for PatchIsometryFlowReparameterization
impl Sync for PatchIsometryFlowReparameterization
impl Unpin for PatchIsometryFlowReparameterization
impl UnsafeUnpin for PatchIsometryFlowReparameterization
impl UnwindSafe for PatchIsometryFlowReparameterization
Blanket Implementations§
impl<T> Allocation for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T, U> Imply<T> for U
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>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§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).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.