szf.m
Applies a discrete single-zero filter:
Y(k)=X(k)/(1-z)-z*X(k-1)/(1-z);
to a Spinach optimal control module waveform. Treats odd rows of multi-row waveform arrays as real, and even rows as imaginary, components of a complex signal.
Syntax
[w,J]=szf(w,z)
Parameters
w - waveform, one time slice per column, and
rows arranged as XYXY... with respect to
in-phase and quadrature parts on each
control channel
z - a vector (one element per XY control pair)
containing the filter coefficient:
p=exp(-r*dt+1i*(omega-omega_rf)*dt)
where r is the damping rate, omega is the
pole frequency, omega_rf is the rotating
frame frequency, and dt is the time dis-
cretisation step.
Outputs
w - distorted waveform, same dimension as the
input waveform; leaving sufficient ring-
down margin is the user's responsibility
J - Jacobian matrix with respect to vectori-
sations of the output and the input arrays
See also
amp_root.m, amp_tanh.m, firf.m, kernelest.m, no_dist.m, penalty.m, restrans.m, spf.m, transfermat.m, Optimal_control_module
Version 2.11, authors: Uluk Rasulov, Ilya Kuprov