pub struct Gaussian { /* private fields */ }Expand description
The SGS propagation spec (ps.gaussian(...)): the spatial-continuity model, the
RNG seed, the moving-neighbourhood search, and an optional collocated secondary
(trend cokriging, Phase 3).
The variogram is fitted in data space; SGS transforms to normal scores
internally (petektools NormalScore), so its total sill need not be 1.
Implementations§
Source§impl Gaussian
impl Gaussian
Sourcepub fn new(variogram: Variogram, seed: u64) -> Self
pub fn new(variogram: Variogram, seed: u64) -> Self
A plain (no-secondary) SGS spec from a data-space variogram and a seed. The
search neighbourhood defaults to a bounded window (DEFAULT_MAX_NEIGHBOURS
nodes within a variogram-range/lattice-scaled radius) — seconds on real-scale
lattices where the old whole-grid default took >15 min/cube. Beyond a
covariance range a conditioning node’s kriging weight is ~0, so the bounded
result matches the unbounded one within simulation tolerance.
Sourcepub fn with_search(self, max_neighbours: usize, radius_m: f64) -> Self
pub fn with_search(self, max_neighbours: usize, radius_m: f64) -> Self
Override the moving-neighbourhood search: at most max_neighbours
conditioning nodes within radius_m (world units).
Sourcepub fn with_unbounded_search(self) -> Self
pub fn with_unbounded_search(self) -> Self
Restore the legacy unbounded (whole-grid) search window — every previously-simulated node in the lattice is a search candidate. Pathologically slow on real-scale lattices; kept as an explicit opt-in for small grids or exact reproduction of pre-bounded-default results.
Sourcepub fn allow_mean_fill(self) -> Self
pub fn allow_mean_fill(self) -> Self
Opt into filling a simulated layer that carries no conditioning data with
the conditioned mean (a flat layer) rather than erroring — for a model where a
data-less layer is expected and a structureless mean-fill is acceptable. The
default errors loudly instead (task_petekstatic_canonical_fixes item 4).
Sourcepub fn with_trend(self, trend: TrendSurface, corr: f64) -> Self
pub fn with_trend(self, trend: TrendSurface, corr: f64) -> Self
Steer the simulation with a collocated secondary variable (trend cokriging,
Markov-1): the TrendSurface is resampled to the model areal lattice and
folded into each node’s kriging at correlation corr. corr == 0 recovers
plain SGS bit-for-bit; corr -> 1 pulls the field toward the trend pattern.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Gaussian
impl RefUnwindSafe for Gaussian
impl Send for Gaussian
impl Sync for Gaussian
impl Unpin for Gaussian
impl UnsafeUnpin for Gaussian
impl UnwindSafe for Gaussian
Blanket Implementations§
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> 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.