Unexpected behaviour of eigfields()
Posted: Wed Jan 31, 2018 1:16 am
I found that
The second problem concerns the order of output. The swaping or the nuclei order in the spin system have no effect on the output sequence, although spin hamiltonians are different. Here the script illustrating the problem.
UPD. It seems that MATLAB function
Opt.Threshold
parameters is ignored if output of intensities is not requested. Here the script illustrating the problem.
Code: Select all
clear;
Op.Threshold=0.001;
Exp.mwFreq=9.65;
Sys.g=gfree;
Sys.A=mt2mhz([10 20]/10);
Sys.Nucs='31P,31P';
[Pos,I]=eigfields(Sys,Exp,Op);
disp(Pos');
Pos=eigfields(Sys,Exp,Op);
disp(Pos');
Code: Select all
clear;
Op.Threshold=0.001;
Exp.mwFreq=9.65;
Sys.g=gfree;
Sys.A=mt2mhz([10 20]/10);
Sys.Nucs='31P,31P';
B0=344;
B=[0 0 B0]; %in mT
H=sham(Sys,B);
disp(H);
[Pos,I]=eigfields(Sys,Exp,Op);
disp(Pos');
Sys.A=mt2mhz([20 10]/10);
H=sham(Sys,B);
disp(H);
[Pos,I]=eigfields(Sys,Exp,Op);
disp(Pos');
eig()
sorts its output according to increment of eigenvalues.