pub struct ElementLoad {
pub beam_uniform: [f64; 2],
pub body: [f64; 2],
pub edge_traction: [[f64; 2]; 4],
pub edge_pressure: [f64; 4],
}Expand description
The load on a 2D element: an additive accumulator with one field group per
load kind, so that the sum of every pattern’s load on an element (each
scaled by its factor) is just a field-wise sum. Uniform + Body is simply
both fields set. Which kinds an element accepts is decided by
ElementOps::accepts_load, checked by Domain::validate before any load
is accumulated.
Component frames differ by kind: beam_uniform is in the element’s
local axes (local x is the member axis), as in OpenSees’s
-beamUniform; body, edge_traction and edge_pressure are in global
axes (pressure along the inward normal).
Fields§
§beam_uniform: [f64; 2]Beam-columns: uniform load (force/length) [wx, wy], wx along the
member axis and wy transverse in local +y.
body: [f64; 2]Continuum elements: body force per unit volume [bx, by].
edge_traction: [[f64; 2]; 4]Continuum elements: traction [tx, ty] per unit edge length on edge
k, which joins local node k to k + 1.
edge_pressure: [f64; 4]Continuum elements: pressure on edge k, positive acting into the
element along the inward normal.
Implementations§
Source§impl ElementLoad
impl ElementLoad
Sourcepub fn uniform(wx: f64, wy: f64) -> Self
pub fn uniform(wx: f64, wy: f64) -> Self
A uniform beam load (the former ElementLoad::Uniform { wx, wy }).
Sourcepub fn edge_traction(edge: usize, tx: f64, ty: f64) -> Self
pub fn edge_traction(edge: usize, tx: f64, ty: f64) -> Self
A global-axes traction per unit length on edge edge (0..4).
Sourcepub fn edge_pressure(edge: usize, pressure: f64) -> Self
pub fn edge_pressure(edge: usize, pressure: f64) -> Self
A pressure on edge edge (0..4), positive into the element.
Sourcepub fn has_edge_from(&self, edges: usize) -> bool
pub fn has_edge_from(&self, edges: usize) -> bool
Whether any edge >= edges carries a traction or pressure.
Trait Implementations§
Source§impl Add for ElementLoad
impl Add for ElementLoad
Source§fn add(self, other: ElementLoad) -> ElementLoad
fn add(self, other: ElementLoad) -> ElementLoad
Field-wise sum — several loads on one element accumulate, as in OpenSees.
Source§type Output = ElementLoad
type Output = ElementLoad
+ operator.Source§impl Clone for ElementLoad
impl Clone for ElementLoad
Source§fn clone(&self) -> ElementLoad
fn clone(&self) -> ElementLoad
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for ElementLoad
Source§impl Debug for ElementLoad
impl Debug for ElementLoad
Source§impl Default for ElementLoad
impl Default for ElementLoad
Source§fn default() -> ElementLoad
fn default() -> ElementLoad
Source§impl ElementLoadComponents for ElementLoad
Component layout: [wx, wy, bx, by, t0x, t0y, p0, t1x, t1y, p1, t2x, t2y, p2, t3x, t3y, p3]
(beam uniform, body force, then traction and pressure per edge).
impl ElementLoadComponents for ElementLoad
Component layout: [wx, wy, bx, by, t0x, t0y, p0, t1x, t1y, p1, t2x, t2y, p2, t3x, t3y, p3]
(beam uniform, body force, then traction and pressure per edge).
Source§impl Mul<f64> for ElementLoad
impl Mul<f64> for ElementLoad
Source§type Output = ElementLoad
type Output = ElementLoad
* operator.Source§impl PartialEq for ElementLoad
impl PartialEq for ElementLoad
impl StructuralPartialEq for ElementLoad
Auto Trait Implementations§
impl Freeze for ElementLoad
impl RefUnwindSafe for ElementLoad
impl Send for ElementLoad
impl Sync for ElementLoad
impl Unpin for ElementLoad
impl UnsafeUnpin for ElementLoad
impl UnwindSafe for ElementLoad
Blanket Implementations§
impl<T> Boilerplate 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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T, U> Imply<T> for U
impl<T> Scalar for T
§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.