pub struct ElectroactivePoly {
pub eap_type: EapType,
pub max_strain: f64,
pub v_half: f64,
pub elastic_modulus: f64,
pub time_constant: f64,
pub state: f64,
}Expand description
Electroactive polymer (EAP) model.
Covers both ionic (low voltage, large bending) and electronic (high voltage, large area strain) EAP types.
Fields§
§eap_type: EapTypeType of EAP.
max_strain: f64Maximum actuation strain (dimensionless).
v_half: f64Half-wave voltage V_50 at which strain = 50 % max [V].
elastic_modulus: f64Elastic modulus [Pa].
time_constant: f64Bandwidth (time constant) [s].
state: f64Current actuation state (0..1).
Implementations§
Source§impl ElectroactivePoly
impl ElectroactivePoly
Sourcepub fn new(
eap_type: EapType,
max_strain: f64,
v_half: f64,
elastic_modulus: f64,
time_constant: f64,
) -> Self
pub fn new( eap_type: EapType, max_strain: f64, v_half: f64, elastic_modulus: f64, time_constant: f64, ) -> Self
Create an EAP model.
Sourcepub fn dielectric_elastomer() -> Self
pub fn dielectric_elastomer() -> Self
Standard dielectric elastomer model (electronic).
Sourcepub fn steady_state_strain(&self, voltage: f64) -> f64
pub fn steady_state_strain(&self, voltage: f64) -> f64
Steady-state strain from applied voltage (sigmoid model).
Sourcepub fn transient_strain(&self, voltage: f64, t: f64) -> f64
pub fn transient_strain(&self, voltage: f64, t: f64) -> f64
Transient strain at time t after step voltage.
Sourcepub fn blocking_stress(&self, voltage: f64) -> f64
pub fn blocking_stress(&self, voltage: f64) -> f64
Blocking stress (force per area) [Pa].
Sourcepub fn current_strain(&self) -> f64
pub fn current_strain(&self) -> f64
Current strain from state.
Trait Implementations§
Source§impl Clone for ElectroactivePoly
impl Clone for ElectroactivePoly
Source§fn clone(&self) -> ElectroactivePoly
fn clone(&self) -> ElectroactivePoly
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 ElectroactivePoly
impl RefUnwindSafe for ElectroactivePoly
impl Send for ElectroactivePoly
impl Sync for ElectroactivePoly
impl Unpin for ElectroactivePoly
impl UnsafeUnpin for ElectroactivePoly
impl UnwindSafe for ElectroactivePoly
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