pub struct DoubleLayerCapacitance {
pub concentration_mol_m3: f64,
pub permittivity: f64,
pub temperature: f64,
}Expand description
Gouy-Chapman-Stern (GCS) model for the electrical double layer.
Models the differential capacitance of the diffuse layer as a function of potential difference across the Helmholtz layer.
The Debye length κ⁻¹ = sqrt(ε·RT / (2·n0·F²)) where n0 is bulk ion concentration [mol/m³] and ε is permittivity [F/m].
Fields§
§concentration_mol_m3: f64Bulk ion concentration [mol/m³] (symmetric 1:1 electrolyte)
permittivity: f64Permittivity of solvent [F/m] (water ≈ 78.5 × ε_0)
temperature: f64Temperature [K]
Implementations§
Source§impl DoubleLayerCapacitance
impl DoubleLayerCapacitance
Sourcepub fn new(
concentration_mol_m3: f64,
permittivity: f64,
temperature: f64,
) -> Self
pub fn new( concentration_mol_m3: f64, permittivity: f64, temperature: f64, ) -> Self
Create a new double-layer model.
Sourcepub fn kcl_01_mol_l() -> Self
pub fn kcl_01_mol_l() -> Self
Aqueous KCl at 0.1 mol/L and 25°C.
Sourcepub fn debye_length(&self) -> f64
pub fn debye_length(&self) -> f64
Debye length [m]: κ⁻¹ = sqrt(ε·R·T / (2·c·F²))
Sourcepub fn capacitance_at_pzc(&self) -> f64
pub fn capacitance_at_pzc(&self) -> f64
Diffuse-layer capacitance per unit area [F/m²] at the potential of zero charge.
C_d = ε / κ⁻¹
Sourcepub fn differential_capacitance(&self, psi: f64) -> f64
pub fn differential_capacitance(&self, psi: f64) -> f64
Differential capacitance [F/m²] at potential ψ [V] (linearised GC model).
C(ψ) = ε * κ * cosh(F·ψ / (2·R·T))
Trait Implementations§
Source§impl Clone for DoubleLayerCapacitance
impl Clone for DoubleLayerCapacitance
Source§fn clone(&self) -> DoubleLayerCapacitance
fn clone(&self) -> DoubleLayerCapacitance
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 DoubleLayerCapacitance
impl RefUnwindSafe for DoubleLayerCapacitance
impl Send for DoubleLayerCapacitance
impl Sync for DoubleLayerCapacitance
impl Unpin for DoubleLayerCapacitance
impl UnsafeUnpin for DoubleLayerCapacitance
impl UnwindSafe for DoubleLayerCapacitance
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