pele.potentials.heisenberg_spin_RA#

class pele.potentials.heisenberg_spin_RA.HeisenbergModelRA[source]

Source

class HeisenbergModelRA(BasePotential):

The classical Heisenberg Model of 3d spins on a lattice with random anisotropy.

Parameters:
dim: list

an array giving the dimensions of the lattice

field_disorder: float

the magnitude of the randomness in the fields

fields: array

use this to explicitly set the values of the field disorder

Notes

The Hamiltonian is

H = - sum_ij J_ij dot( s_i, s_j ) - sum_i dot( h_i, s_i )**2

where h_i are quenched random variables. (h_i is a vector)

HeisenbergModelRA.getEnergy()[source]

Source

def getEnergy(self, coords):

coords is a list of (theta, phi) spherical coordinates of the spins where phi is the azimuthal angle (angle to the z axis)

HeisenbergModelRA.getEnergyGradient()[source]

Source

def getEnergyGradient(self, coords):

coords is a list of (theta, phi) spherical coordinates of the spins where phi is the azimuthal angle (angle to the z axis)