Calculates the steady-state solutions of the Bloch equations with field modulation.
blochsteady(g,T1,T2,deltaB0,B1,ModAmp,ModFreq); blochsteady(g,T1,T2,deltaB0,B1,ModAmp,ModFreq,Opt); [t,My] = blochsteady(...); [t,Mx,My,Mz] = blochsteady(...);
See also the user guide on how to use
blochsteady calculates the steady-state solution of the Bloch equations for a spin-1/2 in the presence of field modulation. This is a general solver. It correctly treats all passage and saturation regimes.
The function returns the three time-dependent components of the magnetization.
Mxis the dispersion (transverse magnetization component in-phase with the microwave)
Myis the the absorption (transverse magnetization in quadrature with the microwave)
Mzis the longitudinal magnetization
t spans one modulation period. For example, for a 100 kHz modulation frequency, the period is 10 μs.
If no outputs are requested,
blochsteady plots the result.
There are several inputs. Unlike other EasySpin functions, these are not grouped in spin system and experimental structure (although this will likely change in a future release).
The first few input parameters contain information from the spin system necessary for the calculation.
gis the g value of the S=1/2 electron spin.
T1is the longitudinal relaxation time of the spin, in microseconds.
T2is the transverse relaxation time of the spin, in microseconds.
The next few input parameters provide experimental settings.
deltaB0is the static field offset, in mT. This is the difference between the applied magnetic field and the resonance field of the spin.
B1is the amplitude of the oscillating microwave magnetic field, in mT.
ModAmpis the peak-to-peak amplitude of the modulation field, in mT.
ModFreqis the field modulation frequency, in kHz.
Opt collects calculation settings.
Opt need not be specified, in which case default values for all fields are used. The field names and their possible values are as follows.
blochsteadyautomatically sets it high enough such that the output is accurate.
Opt.Method = 'td'indicates time-domain evolution, which is straightforward, but slow.
Opt.Method = 'fft'indicates Fourier transform, which is faster and therefore the default.
blochsteadyprints to the command window. If
pepperis silent. 1 logs relevant information, 2 gives more details.
Here is a simple example.
g = 2; % g factor T1 = 10; % longitudinal relaxation time, us T2 = 2; % transverse relaxation time, us deltaB0 = -0.05; % field offset, mT B1 = 0.002; % microwave field amplitude, mT ModAmp = 0.3; % peak-to-peak field modulation amplitude, mT ModFreq = 50; % field modulation frequency, kHz [t,My] = blochsteady(g,T1,T2,deltaB0,B1,ModAmp,ModFreq); plot(t,My);
blochsteady sets up a linear system of equations in the Fourier coefficients of the magnetization components.
blochsteady automatically determines the maximum Fourier coefficient necessary to provide a converged solution.