Page 1 of 1

DStrainCorr

Posted: Tue Jun 15, 2021 6:41 am
by SoniaChabbra

Dear all,

Can somebody please explain me what does the correlation coefficient DStrainCorr means in EasySpin? How the value of this parameter can be interpreted in terms of an electron structure of high spin system?

Thanks in advance!


Re: DStrainCorr

Posted: Tue Jun 15, 2021 9:47 am
by Stefan Stoll

Here is one way to think about it: If the structure of your paramagnetic center changes a bit (e.g. small changes in the ligand-ion-ligand angles), then all spin Hamiltonian parameters will change, including D and E. Whether D and E change in the same direction (DStrainCorr = +1) or in opposite directions (DStrainCorr = -1) is something that only a quantum chemical calculation with a geometry scan can reveal.


Re: DStrainCorr

Posted: Wed Jun 16, 2021 11:39 am
by SoniaChabbra

Thanks Stefan!! It makes sense but I am still a bit confused about this

For example, If I have a Fe(III) complex with D = [1 0.1 ]cm-1. Now, if I apply Dstrain = [0.1 0.01] cm-1. That means D will have a gaussian profile over a range of D+- DStrain. Thus, DstrainCorr would be a number for each confirmation. No?

How is this converted into a coefficient?


Re: DStrainCorr

Posted: Wed Jun 16, 2021 12:55 pm
by Stefan Stoll

Maybe a picture helps. Here is a Gaussian (D,E) distribution with a correlation coefficient of -0.9.

DE_distribution.png
DE_distribution.png (133.84 KiB) Viewed 2808 times

And here is the script that generated this plot:

Code: Select all

clear, clc

% Demonstration of (D,E) distribution when using DStrain and DStrainCorr

% Relevant pin system parameters
Sys.D = [1 0.1]; % D and E
Sys.DStrain = [0.2 0.2]; % FWHM of D and E Gaussian distributions
Sys.DStrainCorr = -0.9; % correlation coefficient between D and E

% Center of (D,E) distribution
Dcenter = Sys.D(1);
Ecenter = Sys.D(2);

% Get widths (fwhm) and convert to standard deviations
Dfwhm = Sys.DStrain(1); % FWHM of Gaussian distribution of D
Efwhm = Sys.DStrain(2); % FWHM of Gaussian distribution of E
Dsigma = Dfwhm/sqrt(2*log(2))/2; % convert FWHM to standard deviation
Esigma = Efwhm/sqrt(2*log(2))/2; % convert FWHM to standard deviation

% Get the correlation coefficient between D and E
rDE = Sys.DStrainCorr;

% Build the covariance matrix
R12 = rDE*Dsigma*Esigma;
CovMatrix = [Dsigma^2 R12; R12 Esigma^2];

% Generate D and E ranges
D = Dcenter + Dsigma*linspace(-3,3,501);
E = Ecenter + Esigma*linspace(-3,3,502);
[D_,E_] = meshgrid(D,E);
y = gaussian2d(D_,E_,[Dcenter Ecenter],CovMatrix);

dD = D(2)-D(1);
dE = E(2)-E(1);

pcolor(D,E,y);
hold on
contour(D,E,y);
set(gca,'Layer','top');
shading flat
grid on
xlabel('D');
ylabel('E');
colorbar
title(sprintf('Gaussian (D,E) distribution, correlation coefficient %g',Sys.DStrainCorr));

function y = gaussian2d(x1,x2,mu,Sigma)
y = zeros(size(x1));
x = [x1(:) x2(:)];
dx = x-mu(:).';
invSigma = inv(Sigma);
for i = 1:numel(y)
  y(i) = exp(-dx(i,:)*invSigma*dx(i,:).'/2);
end
y = y/sqrt(det(Sigma))/sqrt((2*pi)^2);
end

Re: DStrainCorr

Posted: Wed Jun 16, 2021 3:15 pm
by SoniaChabbra

This helps to visualize it. Many thanks Stefan!!