pub enum LoadSeries {
Constant,
Linear {
slope: f64,
},
Path {
times: Vec<f64>,
factors: Vec<f64>,
},
BoundedPath {
times: Vec<f64>,
factors: Vec<f64>,
use_last: bool,
},
}Expand description
The pseudo-time-to-load-factor function a LoadPattern scales its
reference loads by — Xara/OpenSees’s TimeSeries family, cut down to
exactly the three shapes Carapace’s scope actually needs (Trig/
Rectangular/Pulse etc. are for shaping a dynamic excitation
pattern, not a quasi-static load/displacement protocol — out of scope
until something needs them). Closed enum.
Variants§
Constant
factor(t) = 1.0 for every t — the pattern is always fully
applied, independent of pseudo-time.
Linear
factor(t) = slope * t. slope: 1.0 reproduces the single-pattern,
load_factor-scales-everything behavior every Analysis had before
multi-pattern support existed.
Path
Piecewise-linear interpolation between (times[i], factors[i])
control points — Xara’s PathSeries/PathTimeSeries. This is the
load-path / quasi-static cyclic-protocol vehicle: drive it with
Integrator::LoadControl (stepping pseudo-time along times) for a
load-controlled protocol, or read an accelerogram’s acceleration
values into factors for GroundMotion. Holds the last point’s
value beyond the last control point (Xara’s useLast default),
and the first point’s value before the first. times must be
sorted ascending and the same length as factors — not enforced by
the type (a malformed path is a model-construction error, not a
runtime failure, same class as AnalysisBuilder::build’s
ConstraintHandler assertion).
BoundedPath
OpenSees accelerogram bounds: zero before the first sample and after the last, unless use_last holds the last value.
Trait Implementations§
Source§impl Clone for LoadSeries
impl Clone for LoadSeries
Source§fn clone(&self) -> LoadSeries
fn clone(&self) -> LoadSeries
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 LoadSeries
impl RefUnwindSafe for LoadSeries
impl Send for LoadSeries
impl Sync for LoadSeries
impl Unpin for LoadSeries
impl UnsafeUnpin for LoadSeries
impl UnwindSafe for LoadSeries
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T, U> Imply<T> for U
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read more§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).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.