Files
lammps/examples/SPIN/test_problems/validation_langevin_precession_d1.0/langevin.py

23 lines
560 B
Python
Executable File

#!/usr/bin/env python3
import numpy as np, pylab, tkinter
import matplotlib.pyplot as plt
import mpmath as mp
mub=5.78901e-5 # Bohr magneton (eV/T)
kb=8.617333262145e-5 # Boltzman constant (eV/K)
g=2.0 # Lande factor (adim)
Hz=10.0 # mag. field (T)
#Definition of the Langevin function
def func(t):
return mp.coth(g*mub*Hz/(kb*t))-1.0/(g*mub*Hz/(kb*t))
npoints=200
ti=0.01
tf=20.0
for i in range (0,npoints):
temp=ti+i*(tf-ti)/npoints
print('%lf %lf %lf' % (temp,func(temp),-g*mub*Hz*func(temp)))