There is something with blochsteady that I do not understand. It is about the z magnetization at large fied offset. Normally, I would expect this to remain unchanged at some offset that is well beyond B1, Bmod, etc, meaning that we should get Mz = 1. However, blochsteady reveals a decay in Mz with the modulation frequency. In the following, there is an example that points at this
Code: Select all
%% some test of blochsteady
DeltaB0 = 5; % range of B0 offset
Bvec = -DeltaB0;
T1 = 100; % microseconds
T2 = 0.2; % microseconds
B1 = 0.01; % microwave field amplitude, mT
Bmpp = 0.0000001; % peak-to-peak modulation amplitude, mT
fm = 1; % modulation frequency, kHz
fm_vec = linspace(0.1,100,101); % provoke the Mz scaling with different modfrqs
Options.nPoints = 1024; %
% time domain magnetization dynamics (in case of modulation)
M_td = zeros(Options.nPoints, 3);
% averaged time domain magnetization vs spectrum axis
M_vec = zeros(length(fm_vec), 3);
for kk = 1:numel(fm_vec)
[t,spc_x, spc_y, spc_z] = blochsteady(2,T1,T2,Bvec, B1, Bmpp, fm_vec(kk), Options);
% get state averaged over time domain (for debugging that offset)
M_vec(kk,:) = mean([spc_x, spc_y, spc_z]);
end
%%
figure(1);
clf();
plot(fm_vec,M_vec(:,3))
ylabel('M_z');
xlabel('Mod frq [kHz]');
title('M_z at large offset and negligible modulation field');
It looks to me like the part of Mz that would be able to follow the modulation field, thus its decay for modulation frequencies beyond 1/T1. I would have expected that this 'dynamic' part of Mz is important for its contribution to the modulation harmonics. However, for the unmodulated contribution, I would have expected that also contributions that cannot follow the modulation field need to be considered.
Thanks in advance, Andrin