[][src]Trait qmc::sse::qmc_traits::diagonal::Hamiltonian

pub trait Hamiltonian<'a> {
    pub fn hamiltonian(
        &self,
        vars: &[usize],
        bond: usize,
        inputs: &[bool],
        outputs: &[bool]
    ) -> f64;
pub fn edge_fn(&self, bond: usize) -> (&'a [usize], bool);
pub fn num_bonds(&self) -> usize; }

An object which provides all required details of the hamiltonian.

Required methods

pub fn hamiltonian(
    &self,
    vars: &[usize],
    bond: usize,
    inputs: &[bool],
    outputs: &[bool]
) -> f64
[src]

Maps (vars, bond, inputs, outputs) to a float matrix element.

pub fn edge_fn(&self, bond: usize) -> (&'a [usize], bool)[src]

Give edges for a bond, and if the bond is a constant.

pub fn num_bonds(&self) -> usize[src]

The number of bonds which exist.

Loading content...

Implementors

Loading content...