pub type UniformModel = Model<bool, bool, UniformContext>;Expand description
A type alias for a default, general-purpose Model configuration that uses
abstract “kind” enums for its spatial, temporal, and symbolic contexts.
This UniformModel alias represents a Model instance configured with a
standard set of generic parameters, making it suitable for common causal
modeling scenarios where the specific underlying concrete types for space,
time, and symbols can vary but are represented by their respective “kind” enums.
It provides a convenient and readable shorthand for defining a Model
that encapsulates:
Data<NumberType>: Used for its data component.NumberTypeis a generic numeric type, typically an alias for a floating-point or integer, allowing for flexible data representation within the model.SpaceKind: Defines the spatial context using an abstractSpaceKindenum. This allows the model to operate with various spatial representations (e.g.,EuclideanSpace,EcefSpace,NedSpace,GeoSpace) without changing theModel’s type signature, providing uniformity across different spatial contexts.TimeKind: Specifies the temporal context using an abstractTimeKindenum. This enables the model to handle different temporal representations (e.g.,EuclideanTime,DiscreteTime,EntropicTime,LorentzianTime) flexibly, offering a uniform temporal interface.SpaceTimeKind: Combines the spatial and temporal contexts into a unified spacetime representation using an abstractSpaceTimeKindenum, allowing for various spacetime geometries (e.g.,EuclideanSpacetime,LorentzianSpacetime,MinkowskiSpacetime) in a uniform manner.SymbolKind: Provides a basic symbolic representation for elements within the model using an abstractSymbolKindenum, useful for labeling, identification, or abstract reasoning across different symbolic types.FloatType(x2): TwoFloatTypeparameters, typically used for internal calculations, scalar values, metrics, or other generic numerical requirements within theModelstructure, such as probabilities, weights, or magnitudes.FloatTypeis generally an alias for a standard floating-point type.
This UniformModel is designed to be a sensible default for many applications
requiring a flexible yet consistent model structure that can adapt to different
underlying spatial, temporal, and symbolic representations through their
respective Kind enums. It promotes code reusability and simplifies type
declarations when the exact concrete type of a context component is not
fixed but rather belongs to a set of predefined “kinds”.
Aliased Type§
pub struct UniformModel { /* private fields */ }