pub trait HamiltonianSystem {
// Required methods
fn ndof(&self) -> usize;
fn hamiltonian(&self, q: &[f64], p: &[f64]) -> f64;
fn dh_dq(&self, q: &[f64], p: &[f64]) -> Vec<f64>;
fn dh_dp(&self, q: &[f64], p: &[f64]) -> Vec<f64>;
}Expand description
A Hamiltonian system with n degrees of freedom.
State is (q1,…,qn, p1,…,pn). Implement hamiltonian(),
dh_dq(), and dh_dp().
Required Methods§
Sourcefn hamiltonian(&self, q: &[f64], p: &[f64]) -> f64
fn hamiltonian(&self, q: &[f64], p: &[f64]) -> f64
Evaluate the Hamiltonian H(q, p).