[ < ] | [ > ] | [Contents] | [Index] | [ ? ] |
The feedback dynamic gain associated with a feedback loop can be expressed as the inverse Borel transform of the coefficient of the reduced scalar coupling matrix, g(τ), associated with a transfer. A Borel sweep provides this g(τ). Therefore it is an interesting tool for the characterization of the feedback loop8.
As explained in the ZOOM web page document http://www.lmd.jussieu.fr/ZOOM/doc/Feedback_Gain.pdf, this allows for the calculation of the dynamic gain and factor of any feedback that goes through a unique transfer variable. An example of the conclusions that can be drawn from such an analysis is provided in the same document.
For linear systems – whose GTLS are autonomous along the whole trajectory – the τ function of the feedback gain is independent of the position on the system trajectory. But in general it is dependant, and one can analyse the function g(τ;t) defined on a segment t of the trajectory.
The document introducing the TEF-ZOOM technique explains how a Crank-Nicolson
scheme for the time discretisation
symbolically gives the solution of the Borel transform of the system. One can
identify the dt
variable with the Borel τ within a
factor 2. Hence, to numerically study the τ dependency of
the transform of various coefficients in the system coupling matrix at one
point in time, one can calculate the Borel transform of the TLS solutions
by making a time-step sweep.
The function g(τ;t) is simply output for the feedback gain
attached to a unique ff(k)
transfer variable.
All the relevant informations should be entered in the zinit sequence.
[ < ] | [ > ] | [Contents] | [Index] | [ ? ] |
First of all the logical flag ZBorel
should be raised:
ZBorel=.true.;
The index of the studied transfer is given in the index_ff_gain
variable
index_ff_gain=7;
At each time step a Borel sweep may be performed. The time steps of interest are specified with three variables, one for the first step, one for the last step and one for the number of steps between two Borel sweeps:
istep_B_deb
First time step for the Borel sweep.
istep_B_fin
Last time step for the Borel sweep.
istep_B_inc
Number of time steps between Borel sweeps.
In the following examples Borel sweeps are performed from the time step 1000 up to the time step 1200, with a sweep at each time step:
istep_B_deb=1000; istep_B_fin=1200; istep_B_inc=1;
For each Borel sweep, the range of the τ variable should be set. As this is a multiplicative variable the initial value, a multiplicative factor and the number of values are to be given.
tau_B_ini
Initial value for τ.
tau_B_mult
Multiplicative factor for sweep in tau.
itau_max
Number of τ values.
For example, in the following, at each time step, the Borel transform will be computed for τ values starting at 0.2 and then multiplied a hundred times by ∘ __√ _2
tau_B_ini=0.2; tau_B_mult=sqrt(sqrt(2.)); itau_max=100;
When the initial value of τ is set to a negative value
(i.e. tau_B_ini=-0.2;
),
the Borel sweep will first be applied with itau_max
negative values
for -0.2
, tau_B_mult*(-0.2)
,..., then for the zero value,
and finally for the symetric positive values, resulting in 2*itau_max+1
values for τ.
The whole example reads
! ------------------- ! Feedback gain ! Borel ! ------------------- ZBorel=.true.; if ZBorel < istep_B_deb=1000; istep_B_fin=1200; istep_B_inc=1; ; index_ff_gain=7; tau_B_ini=0.2; tau_B_mult=sqrt(sqrt(2.)); itau_max=100; z_pr/Borel/:tau_B_mult,tau_B_ini*(tau_B_mult)**itau_max; >;
Instead of using the index of the transfer in index_ff_gain
it is
possible to specify the name of the transfer.In that case the transfer is specified
by the zborel for
macro. For example if the transfer selected for the
feedback gain computation is b_transfer, it can be selected
with:
zborel for: b_transfer;
[ < ] | [ > ] | [Contents] | [Index] | [ ? ] |
The file tau_Borel.data gives the τ values of the tau sweep,
and the file gains.data records the feedback gain function values of
g(τ), with
one line for each sweep along the trajectory. In the 1.01 version, a new
feature is also provided giving the poles and residuals of the Borel
transform in the file vpgains.data. Consult the subroutine
Boreleig
for (not definitive) output description.
One can easily obtain the surface contours of g(t,τ) using the Fortran program provided as gains.f and its compilation shell gains.xqt, that builds 2D histograms for PAW, in which one uses the borels.kumac provided kumac.
[Contents] | [Index] | [ ? ] |
This document was generated on a sunny day using texi2any.