endorfrq
Introduced in 0.99
Synopsis

Computes ENDOR frequencies and transition amplitudes.

Pos = endorfrq(Sys,Par,Ori)
Pos = endorfrq(Sys,Par,Ori,Opt)
[Pos,Int] = endorfrq(...)
[Pos,Int,Tra] = endorfrq(...)

Description

endorfrq computes ENDOR frequencies and intensities, which can be used to build single-crystal spectra or crystal rotation patterns. endorfrq is used by salt, the solid-state ENDOR spectrum simulation function, to obtain ENDOR positions and intensities. The calling syntax of endorfrq is very similar to that of resfields, its EPR analogue.

The three mandatory input parameters characterise the spin system (Sys), the experiment parameters (Par) and the spin system's orientations in the external field (Ori). A fourth parameter Opt can be used to modify and tune endorfrq's computations.

Sys is a spin system structure. In addition to all the fields necessary to construct a spin Hamiltonian, endorfrq only uses the EPR line width field HStrain.

Par is a structure containing information related to the ENDOR experiment.

mwFreq Microwave frequency used in the ENDOR experiment, in GHz.
Field Magnetic field at which the ENDOR spectrum is to be computed, in mT.
Temperature Temperature of the spin system in the ENDOR experiment, in Kelvin. If it is given, thermal equilibrium populations are assumed, and their effect is included in the intensity computation. By default, Temperature is inf, and populations are not included in the intensity computation.
ExciteWidth The excitation width of the microwave in MHz (responsible for orientation selection). The excitation profile is assumed to be Gaussian, and ExciteWidth is its FWHM. The default is inf.

Ori gives a list of orientations for which ENDOR spectra should be computed. It can be either a 2xn or a 3xn array, giving either two (φ, θ) or three (φ, θ, χ) Euler angles in radians to characterise each orientation.

φ, in the first row, is the angle between the x axis and the xy plan projection of the orientation of the external field in the molecular frame of the spin system. θ, in the second row, is the angle at which the external field is off the z axis of the molecular axes system. The optional χ, in the third row, specifies the third Euler angle and fixes the x axis of the laboratory in the molecular system.

Altogether, these three angles define the relative orientation between the molecular and the laboratory coordinate system. The external field is along the lab z axis, and the excitation field is along the lab x axis. The detection field can be either along lab x (perpendicular mode) or along lab z (parallel mode). ENDOR frequencies depend only on the first two angles, intensities also on the third. If the third angle is not given, ENDOR intensities are integrated over all possible values of χ.

Opt contains a set of optional parameters used to adjust the computation to one's needs. If a field or the entire structure is omitted, default values are used. One part of the fields concerns the automatic or manual selection of transitions to include in the ENDOR computation, the other one allows to modify the ENDOR intensity calculation.

Verbosity Level of display. Opt.Verbosity=0 (default) means that endorfrq does not print to the command window. Opt.Verbosity=1 prints some log messages, higher values are given ever more details.
Transitions mx2 vector of integer
Determines manually the level pairs which are used in the spectrum calculation. If given, endorfrq uses them and skips its automatic transition selection scheme. Level pairs are specified in Transitions(k,:) by the level numbers, starting with 1 for the lowest-energy state.
Threshold Specifies the relative threshold for endorfrq's automatic transition selection scheme. Any transition with a relative average amplitude less than this number is not included in the calculation. The relative average amplitude of the strongest ENDOR transition found is 1. If levl pairs are manually specified in Transitions, the threshold setting is ignored.
Nuclei vector
Determines which nuclear Zeeman terms should be included in the automatic transition selection procedure. If a system contains two different types of nuclei, this allows the user to tune endorfrq to select only transitions belonging to a certain type of nuclei. 1 is the first nucleus in the spin system, 2 the second, and so on. If this field is absent, all nuclei are included by default. E.g. Opt.Nuclei=2 for a spin system with Sys.Nucs='63Cu,1H' will only include 1H ENDOR transitions.
Intensity 'on' (default) or 'off'
By default, ENDOR intensities are computed from ENDOR and EPR transition amplitudes between states and the EPR excitation width. If Intensity is set to off, no intensities are computed. If the endorfrq output parameter Int is given, it is set to empty. You can also switch off intensity computations by not giving the corresponding output parameter.
Enhancement 'off' (default) or 'on'
If on, endorfrq includes the hyperfine enhancement effect in the intensity computations by using the full Zeeman part of the spin Hamiltonian as detection operator. Otherwise only the nuclear Zeeman terms are used. The hyperfine enhancement effect causes intensity asymmetries of ENDOR lines at low fields, but it is often canceled by the amplitude characteristics of the RF amplifiers used in ENDOR experiments.

There are three output parameters to endorfrq, only the first one is mandatory.

Pos contains the positions of the ENDOR lines (in Megahertz). One column in the output corresponds to one orientation.

Int returns the ENDOR intensities, in an array the same size as Pos. If intensity computations have been switched off, this array is empty. If Int is omitted, intensities are not computed at all.

Tra is a list of the transitions included in the computation. It is a nx2 array containing pairs of level numbers along rows. Levels numbers relate to their energy: the lowest state in energy has number 1, the second lowest is 2, etc. See also the Transitions field in Opt.

Examples

The following code produces a plot of ENDOR frequencies and amplitudes as a function of the Q tensor axial parameter eqQ. First we define the three input structures to endorfrq and the range of eqQ values.

S = struct('S',.5,'g',[2 2 2],'Nucs','14N','A',[8 9 10]);
Params = struct('mwFreq',9.5,'Field',350);
Opt = struct('Enhancement','on','Threshold',1e-6);
eqQ = 0.01:.02:4;

Next we loop over all eqQ values and compute the associated ENDOR positions and amplitudes for an arbitrary orientation. The results are stored along columns in the array p and w.

for ieqQ = 1:length(eqQ)
  S.Q = [-1 -1 2]*eqQ(ieqQ);
  [p(:,ieqQ) w(:,ieqQ)] = endorfrq(S,Params,[10;40]*pi/180,Opt);
end

At the end, we plot the results. The ENDOR frequencies are scaled with the Larmor frequency of the nucleus.

NZ = larmorfrq('14N',Params.Field);
subplot(1,2,1); plot(eqQ/NZ,sort(p/NZ).','k');
axis tight, xlabel('eqQ/wnuc'); ylabel('frequency/wnuc');
subplot(1,2,2); plot(eqQ/NZ,sort(w).','k');
axis tight, ylabel('amplitude'); xlabel('eqQ/wnuc');
See also

garlic, levels, pepper, resfields, salt