Spatial dependence of dipolar interaction?

General forum for EasySpin: questions, how to's, etc.
Post Reply
christiansen
User
Posts: 21
Joined: Thu Apr 08, 2021 7:38 am

Spatial dependence of dipolar interaction?

Post by christiansen »

Dear Easyspin community

I wonder, how is the spatial dependence of the dipolar interaction implemented in Easyspin? Usually, the dipolar energy between two magnetic moments is defined by their dot product as well as their projections along the vector that separates them.

For example, consider four spins located at the corners of a square. For two spins located at one edge of the square, the dipolar interaction will favour ferromagnetic alignment along the edge. For two spins on opposing corners of the square, ferromagnetic alignment along the diagonal of the square is favoured.

How to implement this in Easyspin syntax? The case I am looking to implement is actually slightly more complicated: The dipolar couplings among 6 spins situated at the faces of a cube.

thanasis
Local Expert
Posts: 253
Joined: Thu Jan 21, 2016 6:28 am
Location: Strasbourg

Re: Spatial dependence of dipolar interaction?

Post by thanasis »

Overall, pairwise dipolar couplings can be calculated explicitly. This must be done for all spin pairs, just like exchange interactions.

In the case of the dipolar couplings between anisotropic spins, each spin's gFrame, along with each interspin vector needs to be explicitly provided. Then each 3x3 interaction matrix is simply added to Sys.ee. It can be a tedious process, but doable.

The diptensor function has recently been updated to handle for such cases (https://github.com/StollLab/EasySpin/issues/327).

Stefan Stoll
EasySpin Creator
Posts: 1108
Joined: Mon Jul 21, 2014 10:11 pm
Location: University of Washington

Re: Spatial dependence of dipolar interaction?

Post by Stefan Stoll »

Here is a quick example for 4 spins on the vertices of a square:

Code: Select all

clear, clc

Sys.S = [1/2 1/2 1/2 1/2];

a = 0.8;  % edge length of square, in nm
r = a*[1 0 0; 0 1 0; -1 0 0; 0 -1 0].'/2; % vertices of square in xy plane

% Calculate all dipolar coupling tensors and add to spin system
Sys.ee = [];
g = 2.0023;
for i = 1:3
  for j = i+1:4
    d = diptensor(g,g,r(:,i)-r(:,j));
    Sys.ee = [Sys.ee; d];
  end
end

Sys.lw = 1;

Exp.Field = 350;
Exp.mwRange = [8 11];

pepper(Sys,Exp)
Post Reply