## Coupling two radical spins

General forum for EasySpin: questions, how to's, etc.

### Coupling two radical spins

Hi,
I have an EPR spectrum where two individual radical spins (no coupling) exist with hyperfine coupling in a donor-acceptor system.

How can I convert the current spectrum to a situation where the two spins are coupled with each other?
Which parameters (exchange, dipolar coupling etc) are important while coupling the two spins?

I'm just a beginner in EPR acquisition and simulation, any help in this direction would be appreciated.

Code: Select all
`clear%Experimental spectrum[B,spc] = eprload('Exp');%Spin A(acceptor):SysA.S = 1/2;SysA.g = [2.00986];SysA.Nucs = '14N,1H,1H,1H,1H';SysA.A = [1.74,4.810,2.2,1.63,0.36];SysA.weight = 2.50;SysA.lwpp = [0.6];VaryA.A = [0.1,0.1,0.1,0.1,0.1];VaryA.g = [0.5];VaryA.lwpp = 0.5;VaryA.weight = 0.3;%Spin D (donor):SysD.S = 1/2;SysD.g = [2.009967];SysD.weight = 0.908;SysD.lwpp = [0.15566];SysD.Nucs = '1H,1H,1H,1H,1H';SysD.A = [18.81675,9.0468,3.9166,8.46,4.16];VaryD.A = [0.2,0.2,0.2,0.2,0.2];VaryD.g = [0.5];VaryD.lwpp = 0.5;VaryD.weight = 0.3;%Defining the two spins together:Sys = {SysD SysA};Vary = {VaryD VaryA};%Experimental details:Exp.mwFreq = 9.452387;Exp.Range = [320.873 350.873];Exp.nPoints = 65536;Exp.ModAmp = mhz2mt(0.1); %in mTExp.Temperature = 298; %in KelvinExp.Mode = 'perpendicular';B = linspace(Exp.Range(1),Exp.Range(2),Exp.nPoints); % Calling the fitting function%SimOpt.nKnots = 35;SimOpt.Method = 'perturb';FitOpt.Method = 'simplex fcn'; % simplex algorithm, %FitOpt.Scaling = 'maxabs';[fitparams,spc] = esfit('pepper',spc,Sys,Vary,Exp,SimOpt,FitOpt);hold on;%Loading experimental spectrum.data=textread('Exp_Spec.dat');x=data(:,1);y=data(:,2);plot(x,y,'k');%Saving in ascii formatdata = [B(:) spc(:)];save('Code_ES_Sim.dat','data','-ascii');plot(B,spc,'r');hold off;`

Please help if possible.
Abbey Philip
User

Posts: 15
Joined: Tue Nov 03, 2015 4:44 am

### Re: Coupling two radical spins

I suggest You have to define the spin system with two coupling electron spins `Sys.S=[0.5,0.5]`, `Sys.g=[2.00986,2.009967]`. And define electron-electron spin-spin coupling either via `Sys.J` or `Sys.ee` http://easyspin.org/easyspin/documentation/spinsystem.html#ee. The nuclei list should be concatenated (one 14N and nine 1H for Your case). Hyperfine constants for each spin should be partly zeroes for each spin `Sys.A = [1.74,4.810,2.2,1.63,0.36,0,0,0,0,0; 0,0,0,0,0,18.81675,9.0468,3.9166,8.46,4.16]`.
Good luck.
katarkon
Resident User

Posts: 91
Joined: Mon Jan 12, 2015 4:01 am

### Re: Coupling two radical spins

Thank you very much for your kind reply and the suggestions to couple the two spins. I have had made the suggested modification in the code, but I'm having the following error

Code: Select all
`Error using resfields_perturb (line 83)Perturbation theory available only for systems with 1 electron. Yours has 2.Error in pepper (line 647)Error in pepper (line 159)Error in esfit>assess (line 831)Error in esfit_simplex (line 77)Error in esfit>runFitting (line 677)Error in esfit (line 552)Error in Code_ES_3_coupled (line 31)[fitparams,spc] = esfit('pepper',spc,Sys,Vary,Exp,SimOpt,FitOpt);`

The following is the modified code:
Code: Select all
`clear%Experimental spectrum[B,spc] = eprload('Exp');%Coupled Spin: Sys.S = [0.5,0.5];Sys.g = [2.00986,2.009967];Sys.J = 200;Sys.Nucs = ['14N,1H,1H,1H,1H,1H,1H,1H,1H,1H'];Sys.A = [1.74,4.810,2.2,1.63,0.36,0,0,0,0,0;0,0,0,0,0,18.81675,9.0468,3.9166,8.46,4.16];Sys.weight = 2.50;Sys.lwpp = [0.6];Vary.A = [0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1];Vary.g = [0.5];Vary.lwpp = 0.5;Vary.weight = 0.3;%Experimental details:Exp.mwFreq = 9.452387;Exp.Range = [320.873 350.873];Exp.nPoints = 65536;Exp.ModAmp = mhz2mt(0.1); %in mTExp.Temperature = 298; %in KelvinExp.Mode = 'perpendicular';B = linspace(Exp.Range(1),Exp.Range(2),Exp.nPoints); % Calling the fitting functionSimOpt.Method = 'perturb';FitOpt.Method = 'simplex fcn'; % simplex algorithm, [fitparams,spc] = esfit('pepper',spc,Sys,Vary,Exp,SimOpt,FitOpt);hold on;%Loading experimental spectrum.data=textread('Exp_Spec.dat');x=data(:,1);y=data(:,2);plot(x,y,'k');%Saving in ascii formatdata = [B(:) spc(:)];save('Code_ES_3_Sim.dat','data','-ascii');plot(B,spc,'r');hold off;`
Abbey Philip
User

Posts: 15
Joined: Tue Nov 03, 2015 4:44 am

### Re: Coupling two radical spins

You have use matrix diagonalization method instead perturbation theory. Just use `SimOpt.Method = 'matrix'`.
katarkon
Resident User

Posts: 91
Joined: Mon Jan 12, 2015 4:01 am

### Re: Coupling two radical spins

Thank you for the suggestion. I have tried running the code with your suggestion, however the simulation seems stuck (for more than 3 hours) at the initial stage itself and terminated with the following error.

Code: Select all
`Code_ES_3a-- esfit ------------------------------------------------Simulation function:      pepperProblem size:             1 spectra, 1 components, 8 parametersMinimization method:      Nelder/Mead simplexResiduals computed from:  data as isScaling mode:             lsq0---------------------------------------------------------initial simplex...Error using eigEIG did not converge.Error in resfields (line 1041)Error in pepper (line 644)Error in pepper (line 159)Error in esfit>assess (line 831)Error in esfit_simplex (line 77)Error in esfit>runFitting (line 677)Error in esfit (line 552)Error in Code_ES_3a (line 34)[fitparams,spc] = esfit('pepper',spc,Sys,Vary,Exp,SimOpt,FitOpt); `

Is it because, I have many interacting nuclei in Sys.A?
Abbey Philip
User

Posts: 15
Joined: Tue Nov 03, 2015 4:44 am

### Re: Coupling two radical spins

The spin system is really large. It have 6144 states, so the diagonalization of 6144x6144 matrix is required at least several times. It is really time-cost. It even does not start on my 32bit system due to insuffitient memory. However, I threw out two 1H nuclei and `pepper` finished after ~15min without errors.
You may try to start `pepper` with `SimOpt.Verbosity=2` to localize the error.
katarkon
Resident User

Posts: 91
Joined: Mon Jan 12, 2015 4:01 am

### Re: Coupling two radical spins

You may try to use the hybrid method after updating to last EasySpin version. It seems to be much faster and enough for Your spin system.
katarkon
Resident User

Posts: 91
Joined: Mon Jan 12, 2015 4:01 am

### Re: Coupling two radical spins

Thanks for the help and update regarding the hybrid method. I have updated to easyspin 5.2.7, however I'm facing a new issue when having more than two nuclei in the Sys.A.

Code: Select all
`Error using isotopologues (line 321)Sys.A size (2x8) is inconsistent with number of spins (2 electrons, 8 nuclei).`

Using Opt.HybridCoreNuclei=[], is not helping.
Abbey Philip
User

Posts: 15
Joined: Tue Nov 03, 2015 4:44 am

### Re: Coupling two radical spins

For 2 electron spins, N nuclei and isotropic hyperfine coupling, `Sys.A` needs to be an Nx2 and not a 2xN matrix. Each row of `Sys.A` must contain the hyperfine couplings of a particular nucleus to all electrons, as explained in the documentation.
Stefan Stoll
EasySpin Creator

Posts: 528
Joined: Mon Jul 21, 2014 10:11 pm
Location: University of Washington

Return to General forum

### Who is online

Users browsing this forum: jiten.phy and 2 guests