- For Paramag. simulations, the option "atom_modify" has to be set ex: atom_modify sort 1000 4.0 (Freq,Dist). - Actual time is now printed (c_mag[0] in compute_spin) - Value of Gilbert's damping corrected - Now even results for SD/Lammps comp. in purely paramg. or aniso. situations - Pack and unpack reverse needed corrections (f only was set, not fm) - Spin temperature is now computed (data c_mag[7] in spin_compute) To do: - Fcc with p p p bc is still not working - If Zeeman/Aniso force not defined, error => to be removed - Add DMI and ME (see if new file or add in the exchange file)
97 lines
2.8 KiB
Plaintext
97 lines
2.8 KiB
Plaintext
###################
|
|
#######Init########
|
|
###################
|
|
|
|
clear
|
|
#setting units. default: lj(unitless). Others: metal(Ang, picosecs, eV, ...), real(Ang, femtosecs, Kcal/mol, ...), ...
|
|
units metal
|
|
|
|
#setting dimension of the system (N=2 or 3)
|
|
dimension 3
|
|
|
|
#setting boundary conditions. (p for periodic, f for fixed, ...)
|
|
boundary p p p
|
|
#boundary f f f
|
|
|
|
#setting atom_style, defines what can of atoms to use in simulation (atomic, molecule, angle, dipole, ...)
|
|
atom_style spin
|
|
#Define sort for paramagnetic simulations (if no pair interaction)
|
|
#atom_modify sort 1000 4.0
|
|
|
|
###########################
|
|
#######Create atoms########
|
|
###########################
|
|
|
|
#Lattice constant of fcc Cobalt
|
|
lattice fcc 3.54
|
|
#lattice sc 3.54
|
|
|
|
#Defining a geometric region of space. Sets ID(user's choice), style(block, sphere, ...), then, args depends on the style chosen
|
|
#(for block, one has x0, xf, y0, yf, z0, zf, in distance units)
|
|
region box block 0.0 3.0 0.0 3.0 0.0 3.0
|
|
|
|
#Creating a simulation box based on the specified region. Entries: number of atom types and box ref.
|
|
create_box 1 box
|
|
|
|
#Creating atoms (or molecules) on a lattice, or a single atom (or molecule), ...
|
|
#Entries: atom type,
|
|
create_atoms 1 box
|
|
|
|
#Replicating NxNxN the entire set of atoms
|
|
#replicate 1 1 1
|
|
|
|
|
|
#######################
|
|
#######Settings########
|
|
#######################
|
|
|
|
#Setting one or more properties of one or more atoms.
|
|
#Setting mass
|
|
mass 1 1.0
|
|
#set group all mass 1.0
|
|
#Setting spins orientation and moment
|
|
#set group all spin/random 11 1.72
|
|
set group all spin 1.72 1.0 0.0 0.0
|
|
|
|
#Magnetic exchange interaction coefficient for bulk fcc Cobalt
|
|
pair_style pair/spin 4.0
|
|
pair_coeff * * 0.0446928 0.003496 1.4885
|
|
#pair_coeff * * 0.0 0.003496 1.4885
|
|
|
|
#Fix Langevin spins (merging damping and temperature)
|
|
#Defines a cutof distance for the neighbors.
|
|
#neighbor 0.5 bin
|
|
#Magnetic field fix
|
|
fix 1 all force/spin zeeman 1.0 0.0 0.0 1.0
|
|
#fix 1 all force/spin zeeman 0.0 0.0 0.0 1.0
|
|
#fix 1 all force/spin anisotropy 0.001 0.0 0.0 1.0
|
|
|
|
#Fix Langevin spins (merging damping and temperature)
|
|
fix 2 all langevin/spin 0.0 0.1 0.0 21
|
|
#fix 2 all langevin/spin 0.0 0.0 0.0 21
|
|
|
|
#Magnetic integration fix
|
|
fix 3 all nve/spin
|
|
|
|
#compute total magnetization and magnetic energy
|
|
compute mag all compute/spin
|
|
fix outmag all ave/time 1 1 50 c_mag[1] c_mag[2] c_mag[3] c_mag[4] c_mag[5] c_mag[6] c_mag[7] file mag.dat
|
|
|
|
#Defining a computation that will be performed on a group of atoms.
|
|
#Entries: ID(user assigned), group-ID(group of atoms to peform the sim on), style(temp, pe, ...), args
|
|
|
|
#Setting the timestep for the simulation
|
|
timestep 0.000005
|
|
|
|
##################
|
|
#######run########
|
|
##################
|
|
|
|
#Dump the positions and spin directions of magnetic particles (vmd format)
|
|
dump 1 all custom 50 dump_spin.lammpstrj type x y z spx spy spz
|
|
|
|
#Running the simulations for N timesteps
|
|
run 200000
|
|
#run 2
|
|
|