pub struct RockfillModel {
pub k_modulus: f64,
pub n_exponent: f64,
pub rf: f64,
pub cohesion: f64,
pub friction_angle: f64,
pub pa: f64,
}Expand description
Rockfill and embankment dam core material model (Duncan-Chang hyperbolic).
Fields§
§k_modulus: f64Tangential modulus number K [-].
n_exponent: f64Modulus exponent n [-].
rf: f64Failure ratio Rf [-] (≈ 0.7–0.9).
cohesion: f64Cohesion c [Pa].
friction_angle: f64Friction angle φ [radians].
pa: f64Atmospheric pressure pa [Pa].
Implementations§
Source§impl RockfillModel
impl RockfillModel
Sourcepub fn new(
k_modulus: f64,
n_exponent: f64,
rf: f64,
cohesion: f64,
friction_angle_deg: f64,
) -> Self
pub fn new( k_modulus: f64, n_exponent: f64, rf: f64, cohesion: f64, friction_angle_deg: f64, ) -> Self
Create a new rockfill model.
Sourcepub fn hard_quartzite_rockfill() -> Self
pub fn hard_quartzite_rockfill() -> Self
Typical hard rockfill (quartzite).
Sourcepub fn initial_tangent_modulus(&self, sigma3: f64) -> f64
pub fn initial_tangent_modulus(&self, sigma3: f64) -> f64
Initial tangent modulus Ei [Pa] (Duncan-Chang).
Ei = K * pa * (σ3/pa)^n
Sourcepub fn deviatoric_stress_at_failure(&self, sigma3: f64) -> f64
pub fn deviatoric_stress_at_failure(&self, sigma3: f64) -> f64
Deviatoric stress at failure (Mohr-Coulomb).
(σ1 - σ3)_f = 2*(ccos(φ) + σ3sin(φ)) / (1 - sin(φ))
Sourcepub fn tangent_modulus(&self, sigma1: f64, sigma3: f64) -> f64
pub fn tangent_modulus(&self, sigma1: f64, sigma3: f64) -> f64
Tangent modulus Et [Pa] from current stress ratio.
Et = Ei * (1 - Rf * (σ1 - σ3) / (σ1 - σ3)_f)^2
Trait Implementations§
Source§impl Clone for RockfillModel
impl Clone for RockfillModel
Source§fn clone(&self) -> RockfillModel
fn clone(&self) -> RockfillModel
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for RockfillModel
impl RefUnwindSafe for RockfillModel
impl Send for RockfillModel
impl Sync for RockfillModel
impl Unpin for RockfillModel
impl UnsafeUnpin for RockfillModel
impl UnwindSafe for RockfillModel
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
Mutably borrows from an owned value. Read more