pub struct Fmi2VariableDependency {
pub index: u32,
pub dependencies: Vec<u32>,
pub dependencies_kind: Vec<DependenciesKind>,
}
Expand description
Dependency of scalar Unknown from Knowns in Continuous-Time and Event Mode (ModelExchange), and at Communication Points (CoSimulation): Unknown=f(Known_1, Known_2, …). The Knowns are “inputs”, “continuous states” and “independent variable” (usually time)“.
Fields§
§index: u32
ScalarVariable index of Unknown
dependencies: Vec<u32>
Defines the dependency of the Unknown (directly or indirectly via auxiliary variables) on
the Knowns in Continuous-Time and Event Mode (super::ModelExchange
) and at
Communication Points (super::CoSimulation
).
If not present, it must be assumed that the Unknown depends on all Knowns. If present as
empty list, the Unknown depends on none of the Knowns. Otherwise the Unknown depends on
the Knowns defined by the given super::ScalarVariable
indices. The indices are
ordered according to size, starting with the smallest index.
dependencies_kind: Vec<DependenciesKind>
If not present, it must be assumed that the Unknown depends on the Knowns without a particular structure. Otherwise, the corresponding Known v enters the equation as:
DependenciesKind::Dependent
: no particular structure, f(v)DependenciesKind::Constant
: constant factor, c*v (only for Real variablse)DependenciesKind::Fixed
: fixed factor, p*v (only for Real variables)DependenciesKind::Tunable
: tunable factor, p*v (only for Real variables)DependenciesKind::Discrete
: discrete factor, d*v (only for Real variables)
If Self::dependencies_kind
is present, Self::dependencies
must be present and must
have the same number of list elements.
Trait Implementations§
Source§impl Debug for Fmi2VariableDependency
impl Debug for Fmi2VariableDependency
Source§impl Default for Fmi2VariableDependency
impl Default for Fmi2VariableDependency
Source§fn default() -> Fmi2VariableDependency
fn default() -> Fmi2VariableDependency
Source§impl PartialEq for Fmi2VariableDependency
impl PartialEq for Fmi2VariableDependency
Source§impl YaDeserialize for Fmi2VariableDependency
impl YaDeserialize for Fmi2VariableDependency
fn deserialize<R: Read>(reader: &mut Deserializer<R>) -> Result<Self, String>
Source§impl YaSerialize for Fmi2VariableDependency
impl YaSerialize for Fmi2VariableDependency
fn serialize<W: Write>(&self, writer: &mut Serializer<W>) -> Result<(), String>
fn serialize_attributes( &self, source_attributes: Vec<OwnedAttribute>, source_namespace: Namespace, ) -> Result<(Vec<OwnedAttribute>, Namespace), String>
impl StructuralPartialEq for Fmi2VariableDependency
Auto Trait Implementations§
impl Freeze for Fmi2VariableDependency
impl RefUnwindSafe for Fmi2VariableDependency
impl Send for Fmi2VariableDependency
impl Sync for Fmi2VariableDependency
impl Unpin for Fmi2VariableDependency
impl UnwindSafe for Fmi2VariableDependency
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
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 more