Landau-Lifshitz-Gilbert (LLG)
- spirit.parameters.llg.get_convergence(p_state, idx_image=-1, idx_chain=-1)
Returns the convergence value.
- spirit.parameters.llg.get_damping(p_state, idx_image=-1, idx_chain=-1)
Returns the Gilbert damping parameter.
- spirit.parameters.llg.get_direct_minimization(p_state, idx_image=-1, idx_chain=-1)
Returns whether only energy minimisation will be performed.
- spirit.parameters.llg.get_iterations(p_state, idx_image=-1, idx_chain=-1)
Returns the maximum number of iterations and the step size.
- spirit.parameters.llg.get_non_adiabatic_damping(p_state, idx_image=-1, idx_chain=-1)
Returns the non-adiabatic damping parameter.
- spirit.parameters.llg.get_stt(p_state, idx_image=-1, idx_chain=-1)
Returns the spin current configuration.
magnitude
direction, array of shape(3)
whether the spatial gradient is used
- spirit.parameters.llg.get_temperature(p_state, idx_image=-1, idx_chain=-1)
Returns the temperature configuration.
global base temperature [K]
inclination of the temperature gradient [K/a]
direction of the temperature gradient, array of shape(3)
- spirit.parameters.llg.get_timestep(p_state, idx_image=-1, idx_chain=-1)
Returns the time step [ps].
- spirit.parameters.llg.set_convergence(p_state, convergence, idx_image=-1, idx_chain=-1)
Set the convergence limit.
When the maximum absolute component value of the force drops below this value, the calculation is considered converged and will stop.
- spirit.parameters.llg.set_damping(p_state, damping, idx_image=-1, idx_chain=-1)
Set the Gilbert damping parameter [unitless].
- spirit.parameters.llg.set_direct_minimization(p_state, use_minimization, idx_image=-1, idx_chain=-1)
Set whether to minimise the energy without precession.
This only influences dynamics solvers, which will then perform pseudodynamics, simulating only the damping part of the LLG equation.
- spirit.parameters.llg.set_iterations(p_state, n_iterations, n_iterations_log, idx_image=-1, idx_chain=-1)
Set the number of iterations and how often to log and write output.
n_iterations: the maximum number of iterations
n_iterations_log: the number of iterations after which status is logged and output written
- spirit.parameters.llg.set_non_adiabatic_damping(p_state, beta, idx_image=-1, idx_chain=-1)
Set the Gilbert damping parameter [unitless].
- spirit.parameters.llg.set_output_configuration(p_state, step=False, archive=True, filetype=3, idx_image=-1, idx_chain=-1)
Set whether to write spin configuration output files.
step: whether to write a new file after each set of iterations
archive: whether to append to an archive file after each set of iterations
filetype: the format in which the data is written
- spirit.parameters.llg.set_output_energy(p_state, step=False, archive=True, spin_resolved=False, divide_by_nos=True, add_readability_lines=True, idx_image=-1, idx_chain=-1)
Set whether to write energy output files.
step: whether to write a new file after each set of iterations
archive: whether to append to an archive file after each set of iterations
spin_resolved: whether to write a file containing the energy of each spin
divide_by_nos: whether to divide energies by the number of spins
add_readability_lines: whether to separate columns by lines
- spirit.parameters.llg.set_output_folder(p_state, folder, idx_image=-1, idx_chain=-1)
Set the folder, where output files are placed.
- spirit.parameters.llg.set_output_general(p_state, any=True, initial=False, final=False, idx_image=-1, idx_chain=-1)
Set whether to write any output files at all.
- spirit.parameters.llg.set_output_tag(p_state, tag, idx_image=-1, idx_chain=-1)
Set the tag placed in front of output file names.
If the tag is “<time>”, it will be the date-time of the creation of the state.
- spirit.parameters.llg.set_stt(p_state, use_gradient, magnitude, direction, idx_image=-1, idx_chain=-1)
Set the spin current configuration.
use_gradient: True: use the spatial gradient, False: monolayer approximation
magnitude: current strength
direction: current direction or polarisation direction, array of shape(3)
- spirit.parameters.llg.set_temperature(p_state, temperature, gradient_inclination=0, gradient_direction=[1.0, 0.0, 0.0], idx_image=-1, idx_chain=-1)
Set the temperature configuration.
temperature: homogeneous base temperature [K]
gradient_inclination: inclination of the temperature gradient [K/a]
gradient_direction: direction of the temperature gradient, array of shape(3)
- spirit.parameters.llg.set_timestep(p_state, dt, idx_image=-1, idx_chain=-1)
Set the time step [ps] for the calculation.