pub struct SquareWellFreelyJointedChain {
pub link_length: Scalar,
pub number_of_links: u8,
pub well_width: Scalar,
pub ensemble: Ensemble,
}Expand description
The square-well freely-jointed chain model.1
M.R. Buche, M.N. Silberstein, and S.J. Grutzik, Physical Review E 106, 024502 (2022). ↩
Fields§
§link_length: ScalarThe link length $\ell_b$.
number_of_links: u8The number of links $N_b$.
well_width: ScalarThe well width $w_b$.
ensemble: EnsembleThe thermodynamic ensemble.
Trait Implementations§
Source§impl Clone for SquareWellFreelyJointedChain
impl Clone for SquareWellFreelyJointedChain
Source§fn clone(&self) -> SquareWellFreelyJointedChain
fn clone(&self) -> SquareWellFreelyJointedChain
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SquareWellFreelyJointedChain
impl Debug for SquareWellFreelyJointedChain
Source§impl Inextensible for SquareWellFreelyJointedChain
impl Inextensible for SquareWellFreelyJointedChain
Source§fn maximum_nondimensional_extension(&self) -> Scalar
fn maximum_nondimensional_extension(&self) -> Scalar
\lim_{\eta\to\infty}\gamma(\eta) = 1 + \frac{w_b}{\ell_b} = \varsigmafn nondimensional_extension_check( &self, nondimensional_extension: Scalar, ) -> Result<(), SingleChainError>
Source§impl Isometric for SquareWellFreelyJointedChain
impl Isometric for SquareWellFreelyJointedChain
Source§fn nondimensional_helmholtz_free_energy(
&self,
_nondimensional_extension: Scalar,
) -> Result<Scalar, SingleChainError>
fn nondimensional_helmholtz_free_energy( &self, _nondimensional_extension: Scalar, ) -> Result<Scalar, SingleChainError>
Source§fn nondimensional_force(
&self,
_nondimensional_extension: Scalar,
) -> Result<Scalar, SingleChainError>
fn nondimensional_force( &self, _nondimensional_extension: Scalar, ) -> Result<Scalar, SingleChainError>
Source§fn nondimensional_stiffness(
&self,
_nondimensional_extension: Scalar,
) -> Result<Scalar, SingleChainError>
fn nondimensional_stiffness( &self, _nondimensional_extension: Scalar, ) -> Result<Scalar, SingleChainError>
Source§fn nondimensional_spherical_distribution(
&self,
_nondimensional_extension: Scalar,
) -> Result<Scalar, SingleChainError>
fn nondimensional_spherical_distribution( &self, _nondimensional_extension: Scalar, ) -> Result<Scalar, SingleChainError>
Source§fn nondimensional_helmholtz_free_energy_per_link(
&self,
nondimensional_extension: Scalar,
) -> Result<Scalar, SingleChainError>
fn nondimensional_helmholtz_free_energy_per_link( &self, nondimensional_extension: Scalar, ) -> Result<Scalar, SingleChainError>
Source§fn nondimensional_radial_distribution(
&self,
nondimensional_extension: Scalar,
) -> Result<Scalar, SingleChainError>
fn nondimensional_radial_distribution( &self, nondimensional_extension: Scalar, ) -> Result<Scalar, SingleChainError>
Source§impl Isotensional for SquareWellFreelyJointedChain
impl Isotensional for SquareWellFreelyJointedChain
Source§fn nondimensional_gibbs_free_energy(
&self,
nondimensional_force: Scalar,
) -> Result<Scalar, SingleChainError>
fn nondimensional_gibbs_free_energy( &self, nondimensional_force: Scalar, ) -> Result<Scalar, SingleChainError>
\beta\varphi(\eta) = N_b\ln\left[\frac{\eta^3}{\varsigma\eta\cosh(\varsigma\eta) - \sinh(\varsigma\eta) - \eta\cosh(\eta) + \sinh(\eta)}\right]Source§fn nondimensional_extension(
&self,
nondimensional_force: Scalar,
) -> Result<Scalar, SingleChainError>
fn nondimensional_extension( &self, nondimensional_force: Scalar, ) -> Result<Scalar, SingleChainError>
\gamma(\eta) = \frac{\varsigma^2\eta\sinh(\varsigma\eta) - \eta\sinh(\eta)}{\varsigma\eta\cosh(\varsigma\eta) - \sinh(\varsigma\eta) - \eta\cosh(\eta) + \sinh(\eta)} - \frac{3}{\eta}Source§fn nondimensional_compliance(
&self,
nondimensional_force: Scalar,
) -> Result<Scalar, SingleChainError>
fn nondimensional_compliance( &self, nondimensional_force: Scalar, ) -> Result<Scalar, SingleChainError>
\zeta(\eta) = \frac{\left(\varsigma^2\sinh(\varsigma\eta)+\varsigma^3\eta\cosh(\varsigma\eta)-\sinh(\eta)-\eta\cosh(\eta)\right)\left(\varsigma\eta\cosh(\varsigma\eta)-\sinh(\varsigma\eta)-\eta\cosh(\eta)+\sinh(\eta)\right)-\left(\varsigma^2\eta\sinh(\varsigma\eta)-\eta\sinh(\eta)\right)^2}{\left(\varsigma\eta\cosh(\varsigma\eta)-\sinh(\varsigma\eta)-\eta\cosh(\eta)+\sinh(\eta)\right)^2}+\frac{3}{\eta^2}Source§fn nondimensional_gibbs_free_energy_per_link(
&self,
nondimensional_force: Scalar,
) -> Result<Scalar, SingleChainError>
fn nondimensional_gibbs_free_energy_per_link( &self, nondimensional_force: Scalar, ) -> Result<Scalar, SingleChainError>
Source§impl Legendre for SquareWellFreelyJointedChain
impl Legendre for SquareWellFreelyJointedChain
Source§fn nondimensional_spherical_distribution(
&self,
_nondimensional_extension: Scalar,
) -> Result<Scalar, SingleChainError>
fn nondimensional_spherical_distribution( &self, _nondimensional_extension: Scalar, ) -> Result<Scalar, SingleChainError>
Source§fn nondimensional_helmholtz_free_energy(
&self,
nondimensional_extension: Scalar,
) -> Result<Scalar, SingleChainError>
fn nondimensional_helmholtz_free_energy( &self, nondimensional_extension: Scalar, ) -> Result<Scalar, SingleChainError>
Source§fn nondimensional_helmholtz_free_energy_per_link(
&self,
nondimensional_extension: Scalar,
) -> Result<Scalar, SingleChainError>
fn nondimensional_helmholtz_free_energy_per_link( &self, nondimensional_extension: Scalar, ) -> Result<Scalar, SingleChainError>
Source§fn nondimensional_force(
&self,
nondimensional_extension: Scalar,
) -> Result<Scalar, SingleChainError>
fn nondimensional_force( &self, nondimensional_extension: Scalar, ) -> Result<Scalar, SingleChainError>
Source§fn nondimensional_stiffness(
&self,
nondimensional_extension: Scalar,
) -> Result<Scalar, SingleChainError>
fn nondimensional_stiffness( &self, nondimensional_extension: Scalar, ) -> Result<Scalar, SingleChainError>
Source§fn nondimensional_radial_distribution(
&self,
nondimensional_extension: Scalar,
) -> Result<Scalar, SingleChainError>
fn nondimensional_radial_distribution( &self, nondimensional_extension: Scalar, ) -> Result<Scalar, SingleChainError>
Source§fn nondimensional_gibbs_free_energy(
&self,
nondimensional_force: Scalar,
) -> Result<Scalar, SingleChainError>
fn nondimensional_gibbs_free_energy( &self, nondimensional_force: Scalar, ) -> Result<Scalar, SingleChainError>
Source§fn nondimensional_gibbs_free_energy_per_link(
&self,
nondimensional_force: Scalar,
) -> Result<Scalar, SingleChainError>
fn nondimensional_gibbs_free_energy_per_link( &self, nondimensional_force: Scalar, ) -> Result<Scalar, SingleChainError>
Source§fn nondimensional_extension(
&self,
nondimensional_force: Scalar,
) -> Result<Scalar, SingleChainError>
fn nondimensional_extension( &self, nondimensional_force: Scalar, ) -> Result<Scalar, SingleChainError>
Source§fn nondimensional_compliance(
&self,
nondimensional_force: Scalar,
) -> Result<Scalar, SingleChainError>
fn nondimensional_compliance( &self, nondimensional_force: Scalar, ) -> Result<Scalar, SingleChainError>
Source§impl MonteCarlo for SquareWellFreelyJointedChain
impl MonteCarlo for SquareWellFreelyJointedChain
fn random_configuration(&self) -> Configuration
Source§impl SingleChain for SquareWellFreelyJointedChain
impl SingleChain for SquareWellFreelyJointedChain
fn link_length(&self) -> Scalar
fn number_of_links(&self) -> u8
Source§impl Thermodynamics for SquareWellFreelyJointedChain
impl Thermodynamics for SquareWellFreelyJointedChain
fn ensemble(&self) -> Ensemble
fn temperature(&self) -> Scalar
fn nondimensional_helmholtz_free_energy( &self, nondimensional_extension: Scalar, ) -> Result<Scalar, SingleChainError>
fn nondimensional_helmholtz_free_energy_per_link( &self, nondimensional_extension: Scalar, ) -> Result<Scalar, SingleChainError>
fn nondimensional_force( &self, nondimensional_extension: Scalar, ) -> Result<Scalar, SingleChainError>
fn nondimensional_stiffness( &self, nondimensional_extension: Scalar, ) -> Result<Scalar, SingleChainError>
fn nondimensional_radial_distribution( &self, nondimensional_extension: Scalar, ) -> Result<Scalar, SingleChainError>
fn nondimensional_spherical_distribution( &self, nondimensional_extension: Scalar, ) -> Result<Scalar, SingleChainError>
fn nondimensional_gibbs_free_energy( &self, nondimensional_force: Scalar, ) -> Result<Scalar, SingleChainError>
fn nondimensional_gibbs_free_energy_per_link( &self, nondimensional_force: Scalar, ) -> Result<Scalar, SingleChainError>
fn nondimensional_extension( &self, nondimensional_force: Scalar, ) -> Result<Scalar, SingleChainError>
fn nondimensional_compliance( &self, nondimensional_force: Scalar, ) -> Result<Scalar, SingleChainError>
Auto Trait Implementations§
impl Freeze for SquareWellFreelyJointedChain
impl RefUnwindSafe for SquareWellFreelyJointedChain
impl Send for SquareWellFreelyJointedChain
impl Sync for SquareWellFreelyJointedChain
impl Unpin for SquareWellFreelyJointedChain
impl UnwindSafe for SquareWellFreelyJointedChain
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