Spirit Qt desktop UI

June 25, 2021 · View on GitHub

Logo

The cross-platform QT desktop user interface provides a productive tool for Spin simulations, providing powerful real-time visualisations and access to simulation parameters, as well as other very useful features.

See the build instructions for Unix/OSX and Windows for information on how to build the graphical user interface on your machine.

Physics features

Insert Configurations:

  • White noise
  • (Anti-) Skyrmions
  • Domains
  • Spin Spirals

You can manipulate the Hamiltonian as well as simulation parameters and your output file configuration.

You can start and stop simulation and directly interact with a running simulation.

  • LLG Simulation: Dynamics and Minimization
  • GNEB: create transitions and calculate minimum energy paths

By copying and inserting spin systems and manipulating them you may create arbitrary transitions between different spin states to use them in GNEB calculations. Furthermore you can choose different images to be climbing or falling images during your calculation.

Real-time visualisation

This feature is most powerful for 3D systems but shows great use for the analysis of dynamical processes and understanding what is happening in your system during a simulation instead of post-processing your data.

  • Arrows, Surface (2D/3D), Isosurfaces
  • Spins or eff. field
  • Every n'th arrow
  • Spin sphere
  • Directional & position filters
  • Various colourmaps

You can also create quite complicate visualisations by combining these different features in order to visualise complex states in 3D systems:

Visualisation of a complicated state

Additional features

  • Drag mode: drag, copy, insert, change radius
  • Screenshot
  • Read configuration or chain
  • Save configuration or chain
  • Take a screenshot

How to perform an energy minimisation

The most straightforward way of minimising the energy of a spin configuration is to use the LLG method and the velocity projection (VP) solver:

GUI controls

By pressing "start" or the space bar, the calculation is started.

How to perform an LLG dynamics calculation

To perform a dynamics simulation, use for example the Depondt solver. In this case, parameters such as temperature or spin current will have an effect and the passed time has physical meaning:

GUI info panel

How to perform a GNEB calculation

Select the GNEB method and the VP solver.

In order to perform a geodesic nudged elastic band (GNEB) calculation, you need to first create a chain of spin systems, in this context called "images". You can set the chain length directly in the field nex to the start/stop button.

You can also manipulate the chain by copying the current image using ctrl+c (on mac replace ctrl with cmd) and then ctrl+rightarrow/ctrl+leftarrow to insert the copy into the chain and ctrl+v to overwrite the current image. See the help menu for all keybindings.

The GUI will show the length of the chain:

GUI controls

You can use the buttons or the right and left arrow keys to switch between images.

A data plot is available to visualise your chain of spin systems. The interpolated energies become available when you run a GNEB calculation.

GNEB Transition Plot

Key bindings

Note that some of the keybindings may only work correctly on US keyboard layout.

UI Controls

EffectKeystroke
Show thisF1
Toggle SettingsF2
Toggle PlotsF3
Toggle DebugF4
Toggle "Dragging" modeF5
Toggle large visualizationF10 / Ctrl+F
Toggle full-screen windowF11 / Ctrl+Shift+F
Screenshot of Visualization regionF12 / Home
Toggle OpenGL VisualizationCtrl+Shift+V
Try to return focus to main UIEsc

Camera Controls

EffectKeystroke
Rotate the camera aroundLeft mouse / W A S D ( Shift to go slow)
Move the camera aroundLeft mouse / T F G H ( Shift to go slow)
Zoom in on focus pointScroll mouse ( Shift to go slow)
Set the camera in X, Y or Z directionX Y Z ( shift to invert)

Control Simulations

EffectKeystroke
Play/PauseSpace
Cycle MethodCtrl+M
Cycle SolverCtrl+S

Manipulate the current image

EffectKeystroke
Random configurationCtrl+R
Add tempered noiseCtrl+N
Insert last used configurationEnter

Manipulate the chain of images

EffectKeystroke
Switch between images and chains
Cut imageCtrl+X
Copy imageCtrl+C
Paste image at current indexCtrl+V
Insert left/right of current indexCtrl+ /
Delete imageDel

Home