Page 1 of 1

Rotation patterns

Posted: Wed Nov 01, 2017 7:43 pm
by Khalif
Hi All,
I succeeded to simulate the rotation patterns of a spin ladder system imbedded in triclinic single crystal using the simplest Hamiltonian constituting of Zeeman term with anisotropic g-tensor and ZFS D and E. The rotations were around 3 perpendicular axes in the respect of the ladder which is aligned along the [011] crystal axis ‘or the ladder legs direction’. But in the simulation, I used [100] and [010] and [210] as rotN which are almost perpendicular regarding to the crystal symmetry parameters.
The point is that for each rotation the main g-tensor and D-tensor are the same but the g-frame and D-frame were different. The difference between the g and D Frame in each rotation pattern experiment can be seen in term of non-collinearity of the principal axes which is a common effect in such system. But the frames of both tensors are not the same from rotation experiment to another. In first glance, I can say that is the effect of non-perpendicular axes that I chose to make simulation, but as you can see below the difference if g frame from rotation to another was so great and I could not make a connection between the frame changing in respect of the rotation.
Below you may find the tables of the Hamiltonian parameters and the cod used to simulate those rotation pattern experiments.
My question is how it could be possible physically to explain this disparity of g and D frames as function of rotation axes and the difference between g frame from rotation to another where the fit was almost perfect?
Thank you in advance for your help.
Best regards.
Khalif.
Orientation of g- and D-tensors within the crystal frame
Rotation axis [100] [010] [210]
Euler angle α β γ α β γ α β γ
g-Frame (°) 0 46 60 0 40 32 95 70 85
D-Frame (°) 0 0 0 37 42 12 71 83 24
cod:
Sys1 = struct ('S',1, 'g',[2.041 0 0;0 2.105 0;0 0 2.001], 'D', mt2mhz([12 0 0;0 26 0;0 0 -38]));
Sys1.gFrame=[0 42 60]*pi/180;
Sys1.DFrame=[0 0 0]*pi/180;
Exp.mwFreq = 9.8;
Exp.Range = [250 450];
Exp.CrystalSymmetry = 'P1';
rotN = [1 0 0]; N = 31;
[phi,theta] = rotplane(rotN,[0 pi],N);
chi = zeros(N,1);
Exp.CrystalOrientation = [phi(:) theta(:) chi];
Opt.Output = 'separate';
Opt.Method='perturb2';
Bres1 = resfields(Sys1,Exp,Opt);
plot(Bres1,(theta*180/pi))

Re: Rotation patterns

Posted: Thu Nov 02, 2017 1:49 pm
by Stefan Stoll
Be careful how you specify the rotation axis. EasySpin needs it represented in a coordinate frame with orthogonal axes. In a triclinic system, the angles alpha, beta, gamma might deviate from 90 degrees. In that case you can't use [1 0 0], [0 1 0], [2 1 0], which are defined in the oblique abc frame, but you need to transform these vectors to an orthogonal frame (e.g. ab*c* IIRC).

Re: Rotation patterns

Posted: Mon Nov 06, 2017 7:30 pm
by Khalif
Dear Stefan,
I am agreeing, the rotations must be around orthogonal axes. In fact, the ladder is aligned along [011], where the experimental rotation was usually done around this later and the axes constituting the perpendicular plan of [011]. But EasySpin does not simulate the entire rotation pattern for rotation axes [hkl] with k≠0. For example, for a rotation around [011], the simulation could be show only the part between the magic angles;
Would like to explain to me why please :?: ?
Best regards.
Khalif.

Re: Rotation patterns

Posted: Tue Nov 07, 2017 1:32 pm
by Stefan Stoll
The two lines

Code: Select all

rotN = [1 0 0]; N = 31;
[phi,theta] = rotplane(rotN,[0 pi],N);
in your script define the rotation completely. rotN is the axis, N is the number of points, and the chosen angle range is [0 pi]. If you want a full rotation, then use [0 2*pi] as angle range.

Re: Rotation patterns

Posted: Thu Nov 09, 2017 12:25 am
by Khalif
Dear Stephan,
It does not work even for [0 2*pi], the figure was the same without any changing (see the cod and the figure).
Best regards
Khalif.

Code: Select all

close all
clear all
clc
Sys1 = struct ('S',1, 'g',[2.041 0 0;0 2.105 0;0 0 2.001], 'D', mt2mhz([12 0 0;0 26 0;0 0 -38]));
Sys2 = struct ('S',1, 'g',[2.041 0 0;0 2.105 0;0 0 2.001], 'D', mt2mhz([10 0 0;0 16 0;0 0 -26]));
Sys3 = struct ('S',1/2, 'g', [2.041 0 0; 0 2.105  0;0 0 2.001]);
% Experimental parameters
Exp.mwFreq = 9.48; 
Exp.Range = [250 470];
Exp.CrystalSymmetry = 'P1';
rotN = [0 1 1];  
N = 31;
[phi,theta] = rotplane(rotN,[0 2*pi],N);
chi = zeros(N,1);
Exp.CrystalOrientation = [phi(:) theta(:) chi];
% Simulate spectra
Opt.Output = 'separate';  
Opt.Method='perturb2';
Bres1 = resfields(Sys1,Exp,Opt);
Bres2 = resfields(Sys2,Exp,Opt);
Bres3 = resfields(Sys3,Exp,Opt);
% plotting
hold all
plot(Bres1,(theta*180/pi),'r')
plot(Bres2,(theta*180/pi))
plot(Bres3,(theta*180/pi))
%legend
xlabel('magnetic field (mT)');
ylabel('theta (°)');

Re: Rotation patterns

Posted: Thu Nov 09, 2017 11:10 pm
by Stefan Stoll
You need to plot the resonance fields against the actual rotation angle, and not against theta:

Code: Select all

rho = linspace(0,2*pi,N)
plot(Bres1,rho*180/pi)

Re: Rotation patterns

Posted: Mon Nov 13, 2017 6:01 pm
by Khalif
Hello,
It’s work very well with rho, after defining a non-collinear adequate g- and D-frame, but what angle is rho? between which axes is it?
‘resfields’ calculates the resonance field as function of theta (angle between anisotropic axes and the magnetic field) right…., but rho seems to be independent angle!!!!!
I need to understand those points, I know that they are naïve questions but is very important to me to understand them ‘very well’ to make good point.
Thank you in advance.

Re: Rotation patterns

Posted: Tue Nov 14, 2017 9:22 am
by Stefan Stoll
rho is the rotation angle around your axis of rotation, corresponding to the angle on the goniometer in the experimental setup.

Re: Rotation patterns

Posted: Wed Nov 15, 2017 2:47 am
by Khalif
Many Thanks