Time-domain Shooting Method:
"the gunner playing with the boomerang!"
Federico Bizzarri
Dipartimento di Elettronica e Informazione, Politecnico di Milano
P.za Leonardo da Vinci 32, I-20133 Milano, Italy
e-mail:
[email protected] Genova – a.a. 2021-2022 1
Summary
something about what one should know when dealing with circuits (and systems)
described by a smooth vector field and working at periodic steady state
• Periodic Steady State Analysis (time-domain shooting method)
• Floquet Theory (stability)
Genova – a.a. 2021-2022 2
Summary
extension to circuits (and systems) described by a “non-smooth” vector field
• Hybrid dynamical systems (in a nutshell)
• Saltation matrix
• Details in the switching scenario
• General formulation
• A case study from power electronics
Genova – a.a. 2021-2022 3
Summary
something about what one should know when dealing with circuits (and
systems) described by a smooth vector field working at periodic steady state
• Steady State Analysis (time-domain shooting method)
• Floquet Theory (stability)
Genova – a.a. 2021-2022 4
Steady State Analysis (time-domain shooting method)
Efficiently means that we do not want to
Smooth Circuit/System perform a long lasting transient analysis
to obtain the steady state behavior but
we aim at directly find it.
Goal: efficiently find a
periodic steady state
solution of the ODE,
i.e., a limit cycle (say γ)
This is not a whim!
For instance, if we design a high-Q
oscillator a long lasting transient
analysis could take hours!
Genova – a.a. 2021-2022 5
Steady State Analysis (time-domain shooting method)
Smooth Circuit/System
If a first shot misses the target, the gunner will
Goal: efficiently find a change the tilt of the cannon, evaluate how
periodic steady state much closer or farther he gets from his
solution of the ODE, objective and finally adjust the tilt in order to
i.e., a limit cycle (say γ) (hopefully) hit the target with the next shot.
The key of the gunner’s method is the
perturbation of the initial guess and evaluation
of the sensitivity of the solution (the arrival
position of the cannonball) to this perturbation.
Genova – a.a. 2021-2022 6
Steady State Analysis (time-domain shooting method)
We are not gunners … we play with a
Smooth Circuit/System boomerang since we are looking for a
periodic trajectory (the initial point must
coincide we the final one)
Goal: efficiently find a
periodic steady state
solution of the ODE,
i.e., a limit cycle (say γ)
Do not worry! Shooting method is hopefully
easier than throwing a boomerang … even if
we do need some math!
Genova – a.a. 2021-2022 7
A basic example … (Van der Pol oscillator)
Transient analysis Shooting method (T= 6.2871s)
Genova – a.a. 2021-2022 8
Steady State Analysis (time-domain shooting method)
We can formulate the problem “to locate the periodic steady
state” as a Boundary Value Problem (BVP)
Let’s assume that the circuit is autonomous (it does not
explicitly depend on the t independent variable).
i.e., we introduce the state transition function from 0 to t.
Am I able to understand how I should modify
the initial condition and the period that I
guessed in such a way that the residue is null?
The sensitivity of the last point of the
trajectory w.r.t. to both the initial one and the
period should be available!
Genova – a.a. 2021-2022 9
Steady State Analysis (time-domain shooting method)
To locate the initial condition and the
period such that …
… is a problem that admits infinite solution
each one sliding on top of the others!
Let it be a proper “phase condition” that guarantees a unique
solution of the BVP … it is a non linear algebraic equation depending on
… the overall BVP becomes …
Genova – a.a. 2021-2022 10
Steady State Analysis (time-domain shooting method)
Newton’s method
At the p-th iteration of the method one has
This BVP depends on N+1 unknowns and it is
a set of N+1 non linear algebraic equations which is an approximation of the solution
that can be numerically solved for instance
using the iterative Newton’s method.
We assume that
hence
Genova – a.a. 2021-2022 11
At fourth iteration:
At tenth iteration:
At eleventh iteration:
Genova – a.a. 2021-2022 12
Steady State Analysis (time-domain shooting method)
La La
Are you
satisfied with
current
END
YES
Trajectory sensitivity w.r.t solution?
initial conditions
NO
La
Genova – a.a. 2021-2022 13
Steady State Analysis (time-domain shooting method)
Linearized problem
Linear and time-varying homogeneous ODE
(Variational equation)
Genova – a.a. 2021-2022 14
Linear Time-varying Differential Equations
If B(t) is continuous in the [0, t1] interval then the
problem admits one and only one solution.
The set of all the solutions of the homogeneous ODE is
an N-dimensional subspace.
A fundamental matrix contains by definition a basis
of that subspace. The determinant of that matrix,
must be different from zero.
It is a fundamental matrix too.
Genova – a.a. 2021-2022 15
Linear Time-varying Differential Equations
It’s unique solution is given by
It is the canonical fundamental matrix.
Genova – a.a. 2021-2022 16
Steady State Analysis (time-domain shooting method)
Trajectory sensitivity w.r.t initial conditions is provided by
a fundamental matrix computed along the trajectory
(during each iteration of the Newton method)
Genova – a.a. 2021-2022 17
Steady State Analysis (time-domain shooting method)
Be careful … this is a LTV ODE that we want to
solve N times with N linearly independent initial
conditions! (the N columns of the identity matrix)
Genova – a.a. 2021-2022 18
Steady State Analysis (time-domain shooting method)
La La
Are you
What happens if
satisfied with
we assume to current
END
know the period? YES
solution?
… some ingredients are still
NO missing…
La
Genova – a.a. 2021-2022 19
Steady State Analysis (time-domain shooting method)
Trajectory sensitivity w.r.t initial conditions is provided by
a fundamental matrix computed along the trajectory
(during each iteration of the Newton method)
… once the periodic steady state solution has been found …
Genova – a.a. 2021-2022 20
Periodic Linear Time-varying Differential Equations
Every thing I told before is still valid if B(t)=B(t+T)
but I should say something more …
Hence, by definition W(t+T,t0) is once more a fundamental matrix that can be written as:
In particular:
Principal or
Monodromy matrix
The eigenvalues of the Monodromy matrix are the
characteristic or Floquet multipliers
Genova – a.a. 2021-2022 21
Linear Time-varying Differential Equations
is a characteristic multiplier of if a generic solution of exists such that
or, if for a solution of we have that
than is a characteristic multiplier of , is the corresponding eigenvector.
(Note: is not periodic, in general!).
is T-periodic solution of iff is a characteristic multiplier of .
Genova – a.a. 2021-2022 22
Non Linear Differential Equations
admits a non trivial T-periodic solution iff
exhibits a multiplier equal to 1 and
is a solution of
If is a non trivial T-periodic solution, then is periodic too. Moreover,
hence it admits a multiplier equal to 1.
The M corresponding monodromy matrix is then such that:
Genova – a.a. 2021-2022 23
Steady State Analysis (time-domain shooting method)
La La
What happens if we assume
to know the period? Are you
The Jacobian of the satisfied with
Newton scheme current
END
YES
becomes singular as solution?
the methods
converges! NO
La
Genova – a.a. 2021-2022 24
Bordering the Jacobian
Let's consider an NxN singular matrix
and assume that the dimension of its right and left eigenspace is equal to 1.
The right-null space is The left-null space is
orthogonal to the image of orthogonal to the image of
viz. it is not possible "to generate" the viz. it is not possible "to generate" the
right-null space through left-null space through
Let's consider an NxN singular matrix
The following bordered matrix is not singular (if it were singular so its transposed)
This is not possible since
Genova – a.a. 2021-2022 25
Bordering the Jacobian
Becomes singular as the methods converges,
so we do need the phase condition even if
we know the period!
Can we choose the bordering vectors in
order to have an overall non singular matrix?
Let's consider an NxN singular matrix
is not singular!
Can we setup the Newton scheme in such a way that when it converges to the
solution of the BVP its Jacobian is the one reported above? Yes, we can!
Bordering the Jacobian
Instead of using a phase condition, let's us assume to
use an update of the initial conditions orthogonal to the
vector field …
singular matrix
… and now let's compute the sensitivity of the
residue w.r.t. the T working period:
(this is the derivative of the
last point of the trajectory
w.r.t. the unknown period)
The ultimate update schema
Due to the orthogonality constraint, this method is not the standard Newton-Raphson
algorithm, that is, there is no function F(y) such that JF is the matrix reported above. It
is, however, similar enough that it inherits the convergence properties of the standard
Newton-Raphson algorithm.
Genova – a.a. 2021-2022 28
Shooting (T= 6.2871s)
Genova – a.a. 2021-2022 29
Steady State Analysis (time-domain shooting method)
Things are easier if the circuit is non autonomous and, in particular, if it is periodically
driven by voltage and/or a current sources.
In this case the phase condition is not necessary since the input signal gives itself a
time reference and the T period is no longer an unknown. The unit multiplier is not
present and there are no singularity issues (there is no need to border the Jacobian).
autonomous non autonomous
(the initial time can be
arbitrarily fixed to 0)
Genova – a.a. 2021-2022 30
The variational system
From a practical point of view the fundamental matrix can be obtained by
solving the variational problem:
If xs (t) is the solution then it is possible to
compute (at first order) the effect ∆xs(t) on
the solution produced by a small
perturbation ∆x0 of the initial conditions
∆xs(t) = W(t,t0) ∆x0(t0)
Genova – a.a. 2021-2022 31
What happens if …
The constitutive equation of the non linear resistor becomes piecewise smooth
and the dynamics of the circuit can be described by resorting to two vector fields
according to the value of x1:
The event x1=0 rules the
switching between the two
vector fields and the 2D state
space is partitioned by a surface
Genova – a.a. 2021-2022 32
What happens if …
Let’s try to perform a transient simulation
looking for the zero crossings of x1
In correspondence with the
commutations of the vector field
the state of the system is
continuous but the trajectory is no
longer smooth, the direction of its
tangent vector changes
discontinuously.
Genova – a.a. 2021-2022 33
What happens if …
If we plot the result of our transient
simulation and we plot the
trajectory in the state space, I dare
say that we should be convinced
the a periodic steady state solution
is admitted …
Could we use the shooting
method and do everything as
we did in the smooth case?
Genova – a.a. 2021-2022 34
What happens if …
It is not valid in x1=0
Let’s apply the shooting method as we did before …
Genova – a.a. 2021-2022 35
What happens if …
… it converges …
T= 6.3975 s
… but the monodromy
matrix is wrong!
Genova – a.a. 2021-2022 36
What happens if …
The switching system with the Jacobian that is not defined across the
discontinuity is such that the Newton method succeeds. In fact, if the
Jacobian is not “too wrong” the Newton method is able to correct such
“small” mistakes owing to its iterative nature and robustness. In this
case the discontinuity is moderated and so we found the limit cycle.
But we got it just thanks to the numerical method … the properties of
linearization are completely lost.
We must do something better if we want to retain all the
properties we derived in the smooth case (and also
guarantee the convergence if the Jacobian is really “wrong”)
Genova – a.a. 2021-2022 37
Hybrid dynamical systems
“Hybrid systems are made up of dynamical continuous/discrete time evolution
processes interacting with logical/decisional processes”
Peters, K., & Parlitz, U. (2003). Hybrid systems forming strange billiards. International Journal of Bifurcation and Chaos in Applied
Sciences and Engineering, 13(9), 2575– 2588.
“Switching” dynamical systems “Impact” systems
Discontinuous vector field but no discontinuity The state exhibits discontinuity in time
in the state (Filippov system)
(Continuous but not
differentiable vector fields)
Genova – a.a. 2021-2022 38
Hybrid dynamical systems
For hybrid dynamical systems the
variational problem is not defined at
switching/impact points since at
those points the trajectory is not
differentiable.
This problem can be overcome by
resorting to a proper correction
factor, the saltation matrix,* to be
used at switching/impact points.
*M. DI BERNARDO, C.J. BUDD, A.R. CHAMPNEYS,
AND P. KOWALCZYK, Piecewise-smooth Dynamical
Systems, Theory and Applications, Springer-Verlag,
London, 2008.
Genova – a.a. 2021-2022 39
Hybrid dynamical systems
Genova – a.a. 2021-2022 40
Saltation Matrix
Region 2 – Vector field f2
First goal
(at first order)
in ∆t
Switching
Manifold
Unperturbed IC
in t1−t0
Perturbed IC
Second goal
Region 1 – Vector field f1
Genova – a.a. 2021-2022 (at first order) 41
Saltation Matrix
The purple point is approximated by an
expansion centered in the blue point
The red point is approximated by an
expansion centered in the green point
approximated by an
expansion centered in the blue point
Genova – a.a. 2021-2022 42
Saltation Matrix
Let’s consider now the linearization of the manifold at first in the red point …
and then in the green one …
Genova – a.a. 2021-2022 43
Saltation Matrix
Genova – a.a. 2021-2022 44
Saltation Matrix
Saltation matrix S
Genova – a.a. 2021-2022 45
Saltation Matrix
switching vector field and time-varying manifold
Genova – a.a. 2021-2022 46
Saltation Matrix
impact and time-varying manifold
Jacobian of the mapping function
Genova – a.a. 2021-2022 47
Saltation Matrix
The most general case (switching, impact and time-varying)
Genova – a.a. 2021-2022 48
In our example the Saltation matrix is given by …
The variable z1 plays the role of
a digital state variable
Genova – a.a. 2021-2022 49
Or depending on the model we choose by …
Genova – a.a. 2021-2022 50