You are on page 1of 50

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: federico.bizzarri@polimi.it

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

You might also like