Shooting Methods for Locating Grazing Phenomena in Hybrid Systems

Similar documents
SHOOTING METHODS FOR LOCATING GRAZING PHENOMENA IN HYBRID SYSTEMS *

POWER system dynamic behavior is subject to performance

New Tools for Analysing Power System Dynamics

VALUE-ADDED SIMULATION OF HYBRID SYSTEMS. Ian A. Hiskens Department of Electrical and Computer Engineering University of Wisconsin-Madison

Systematic Tuning of Nonlinear Power System Controllers

Phase Boundary Computation for Fault Induced Delayed Voltage Recovery

Iterative Computation of Marginally Stable Trajectories

ECE 422/522 Power System Operations & Planning/Power Systems Analysis II : 7 - Transient Stability

Linear Algebra and Robot Modeling

The Liapunov Method for Determining Stability (DRAFT)

Computing Periodic Orbits and their Bifurcations with Automatic Differentiation

Summary The paper considers the problem of nding points of maximum loadability which are closest (in a local

Lecture Notes: Geometric Considerations in Unconstrained Optimization

Introduction - Motivation. Many phenomena (physical, chemical, biological, etc.) are model by differential equations. f f(x + h) f(x) (x) = lim

Some of the different forms of a signal, obtained by transformations, are shown in the figure. jwt e z. jwt z e

ECE 585 Power System Stability

Analysis of Bifurcations in a Power System Model with Excitation Limits

Invariant Manifolds of Dynamical Systems and an application to Space Exploration

Chapter 3 AUTOMATIC VOLTAGE CONTROL

STABILITY. Phase portraits and local stability

Stability of Limit Cycles in Hybrid Systems

Lie Groups for 2D and 3D Transformations

IEEE PES Task Force on Benchmark Systems for Stability Controls

Delay Coordinate Embedding

THE GEOMETRY OF GENERIC SLIDING BIFURCATIONS

CHAPTER 2 DYNAMIC STABILITY MODEL OF THE POWER SYSTEM

THEODORE VORONOV DIFFERENTIABLE MANIFOLDS. Fall Last updated: November 26, (Under construction.)

Practice Problems for Final Exam

GENG2140, S2, 2012 Week 7: Curve fitting

Math 302 Outcome Statements Winter 2013

Lagrange Multipliers

Significance of Load Modelling in Power System Dynamics

NUMERICAL ACCURACY OF TWO BENCHMARK MODELS OF WALKING: THE RIMLESS SPOKED WHEEL AND THE SIMPLEST WALKER

MCE693/793: Analysis and Control of Nonlinear Systems

Numerical Algorithms as Dynamical Systems

Kinematics. Chapter Multi-Body Systems

CS 542G: Robustifying Newton, Constraints, Nonlinear Least Squares

Problem Set Number 02, j/2.036j MIT (Fall 2018)

Chapter 0 of Calculus ++, Differential calculus with several variables

Sliding Modes in Filippov Systems.

Ordinary differential equations - Initial value problems

Implicit Functions, Curves and Surfaces

MATH 353 LECTURE NOTES: WEEK 1 FIRST ORDER ODES

1.2 Derivation. d p f = d p f(x(p)) = x fd p x (= f x x p ). (1) Second, g x x p + g p = 0. d p f = f x g 1. The expression f x gx

Chapter 3 Numerical Methods

Hybrid Systems Course Lyapunov stability

Behaviour of synchronous machine during a short-circuit (a simple example of electromagnetic transients)

Low Frequency Transients

for changing independent variables. Most simply for a function f(x) the Legendre transformation f(x) B(s) takes the form B(s) = xs f(x) with s = df

Designing Information Devices and Systems I Fall 2018 Lecture Notes Note Introduction to Linear Algebra the EECS Way

II. DIFFERENTIABLE MANIFOLDS. Washington Mio CENTER FOR APPLIED VISION AND IMAGING SCIENCES

Lecture Notes to Accompany. Scientific Computing An Introductory Survey. by Michael T. Heath. Chapter 9

Nonlinear Autonomous Systems of Differential

The Effects of Machine Components on Bifurcation and Chaos as Applied to Multimachine System

BIFURCATION theory is the commonly used tool to analyze

Chaotifying 2-D piecewise linear maps via a piecewise linear controller function

Matrix power converters: spectra and stability

Complex Dynamic Systems: Qualitative vs Quantitative analysis

Examples of Applications of Potential Functions in Problem Solving (Web Appendix to the Paper)

11 a 12 a 21 a 11 a 22 a 12 a 21. (C.11) A = The determinant of a product of two matrices is given by AB = A B 1 1 = (C.13) and similarly.

MATH 415, WEEKS 7 & 8: Conservative and Hamiltonian Systems, Non-linear Pendulum

Numerical Approximation of Phase Field Models

A plane autonomous system is a pair of simultaneous first-order differential equations,

Scattering Parameters

WIND and solar power account for almost half of newly

Nonlinear Control Lecture 2:Phase Plane Analysis

Lecture 2 Machine Learning Review

fy (X(g)) Y (f)x(g) gy (X(f)) Y (g)x(f)) = fx(y (g)) + gx(y (f)) fy (X(g)) gy (X(f))

Definition 5.1. A vector field v on a manifold M is map M T M such that for all x M, v(x) T x M.

Practical Linear Algebra: A Geometry Toolbox

154 Chapter 9 Hints, Answers, and Solutions The particular trajectories are highlighted in the phase portraits below.

Scientific Computing: An Introductory Survey

Rectangular Systems and Echelon Forms

8.1 Bifurcations of Equilibria

Power System Stability and Control. Dr. B. Kalyan Kumar, Department of Electrical Engineering, Indian Institute of Technology Madras, Chennai, India

Design of PSS and SVC Controller Using PSO Algorithm to Enhancing Power System Stability

A STUDY OF THE EIGENVALUE ANALYSIS CAPABILITIES OF POWER SYSTEM DYNAMICS SIMULATION SOFTWARE

2.10 Saddles, Nodes, Foci and Centers

7 Planar systems of linear ODE

1 Differentiable manifolds and smooth maps. (Solutions)

Optimality Conditions

PHYS 410/555 Computational Physics Solution of Non Linear Equations (a.k.a. Root Finding) (Reference Numerical Recipes, 9.0, 9.1, 9.

An introduction to Mathematical Theory of Control

Physics 202 Laboratory 5. Linear Algebra 1. Laboratory 5. Physics 202 Laboratory

Designing Information Devices and Systems I Spring 2018 Lecture Notes Note Introduction to Linear Algebra the EECS Way

Addendum: Lyapunov Exponent Calculation

Numerical Methods for Large-Scale Nonlinear Systems

University of Bath DOI: / Publication date: Link to publication SIAM

2tdt 1 y = t2 + C y = which implies C = 1 and the solution is y = 1

LECTURE NOTES ELEMENTARY NUMERICAL METHODS. Eusebius Doedel

Review of Linear Time-Invariant Network Analysis

Subject: Optimal Control Assignment-1 (Related to Lecture notes 1-10)

1MA6 Partial Differentiation and Multiple Integrals: I

z x = f x (x, y, a, b), z y = f y (x, y, a, b). F(x, y, z, z x, z y ) = 0. This is a PDE for the unknown function of two independent variables.

AC&ST AUTOMATIC CONTROL AND SYSTEM THEORY SYSTEMS AND MODELS. Claudio Melchiorri

AP Physics C Mechanics Objectives

COMP 558 lecture 18 Nov. 15, 2010

Wavelets For Computer Graphics

Numerical Methods I Solving Nonlinear Equations

EE Branch GATE Paper 2010

Transcription:

Shooting Methods for Locating Grazing Phenomena in Hybrid Systems Vaibhav Donde Ian A. Hiskens Lawrence Berkeley National Laboratory Dept. of Elect. and Comp. Engineering Cyclotron Road University of Wisconsin-Madison Berkeley, CA 9472 Madison, WI 5376 VDonde@lbl.gov April 4, 25 hiskens@engr.wisc.edu Abstract Hybrid systems are typified by strong coupling between continuous dynamics and discrete events. For such piecewise smooth systems, event triggering generally has a significant influence over subsequent system behaviour. Therefore it is important to identify situations where a small change in parameter values alters the event triggering pattern. The bounding case, which separates regions of (generally) quite different dynamic behaviour, is referred to as grazing. At a grazing point, the system trajectory makes tangential contact with an event triggering hypersurface. The paper formulates conditions governing grazing points. Both transient and periodic behaviour are considered. The resulting boundary value problems are solved using shooting methods that are applicable for general nonlinear hybrid (piecewise smooth) dynamical systems. The grazing point formulation underlies the development of a continuation process for exploring parametric dependence. It also provides the basis for an optimization technique that finds the smallest parameter change necessary to induce grazing. Examples are drawn from power electronics, power systems and robotics, all of which involve intrinsic interactions between continuous dynamics and discrete events. Introduction Many systems exhibit dynamic behaviour that is best characterized by strong coupling between continuous dynamics and discrete events. Trajectories evolve smoothly through state-space until satisfying conditions that trigger an event. The event alters the system description and/or induces an impulsive change in the state. Smooth evolution then continues until the next event is triggered. Such systems have come to be known as hybrid systems [van der Schaft and Schumacher, 2; Liberzon, 23] or piecewise smooth dynamical systems [di Bernardo et al., 23]. Examples can be drawn from a wide range of application areas, including process control [Lennartson et al., 996], constrained mechanical systems [Brogliato, 999], robotics [Spong and Vidyasagar, 989; Piiroinen, 22], power systems [Hiskens, 24], and power electronics [Rajaraman et al., 996; Yuan et al., 998]. In fact any physical device that exhibits hysteresis, or control loop with anti-wind-up limits [Goodwin et al., 2], is effectively a hybrid system. Event triggering generally has a significant influence over subsequent system behaviour. Therefore it is important to identify situations where a small change in parameter values alters the event triggering pattern. Figure provides an illustration. For a certain value of parameter θ hit, the Research supported by the National Science Foundation through grant ECS-332777. The term hybrid systems is preferred by the control community, whereas the bifurcation community is more familiar with piecewise smooth systems.

Parameter values θ g θ hit θ miss Triggering hypersurface x hit x g Figure : Trajectory grazing triggering hypersurface. system trajectory encounters an event triggering hypersurface at a point x hit. The event occurs, and the trajectory continues accordingly. However for a small change in parameter value to θ miss, the trajectory misses (at least locally) the triggering hypersurface, and subsequently exhibits a completely different form of response. At a parameter value θ g, lying between θ hit and θ miss, the continuous trajectory tangentially encounters (grazes) the triggering hypersurface. Behaviour beyond the grazing point x g is generally unpredictable, in the sense that without further knowledge of the system, it is impossible to determine whether or not the event triggers. This bounding case typifies grazing phenomena. The paper proposes a shooting method for locating grazing points x g and the associated critical parameter value θ g. The significance of grazing can be illustrated by considering power system protection. For a particular set of parameters, a disturbance may cause the system trajectory to pass close to (but not encounter) a protection triggering characteristic [Singh and Hiskens, 2]. The protection does not operate, no equipment is tripped, and the system recovers. However it may require only a small change in parameter values, such as loads, for protection to operate, perhaps leading to cascading outages and system fragmentation [U.S.-Canada Power System Outage Task Force, 24]. Knowledge of the grazing point would highlight system vulnerability. In a more general sense, grazing plays a fundamental role in dynamic embedded optimization of hybrid systems. Such optimization problems incorporate the system dynamic description into the constraint set [Galán and Barton, 998; Hiskens, 24]. As Galán and Barton [998] and Piccoli [998] have shown, even though hybrid system dynamics are non-smooth, the cost function is smooth away from grazing points. This statement is expressed using different terminology though, with Piccoli [998] requiring that all flows have the same history, and Galán and Barton [998] requiring the existence of trajectory sensitivities (discussed later). Therefore away from grazing points, gradient-based optimization techniques are appropriate. However smoothness, and even continuity, of the cost function is often lost at grazing points. This introduces the need for branch-and-bound algorithms that search over the grazing-induced partitions of parameter space. Grazing phenomena have been widely investigated recently, particularly with reference to periodic systems [Dankowicz et al., 22; Chin et al., 995; Fredriksson and Nordmark, 997]. In that context, grazing is closely related to border-collision bifurcations [di Bernardo et al., 2; Nusse et al., 994; Yuan et al., 998], also known as C-bifurcations [di Bernardo et al., 999]. Transient grazing is considered in [Rajaraman et al., 996; Jalali et al., 996], where switching-time bifurcations are analysed. These investigations have focused largely on classifying the (local) consequences of grazing through normal form analysis, particularly for periodic systems. Computation of actual grazing points has received less attention. With numerical packages such as AUTO [Doedel et 2

al., 998] generally unsuited to non-smooth systems, 2 ad hoc approaches have prevailed. This paper addresses that deficiency by establishing a shooting method that is applicable for general nonlinear hybrid (piecewise smooth) dynamical systems. The paper is organized as follows. Section 2 considers the modelling of hybrid systems. Section 3 provides background material for trajectory sensitivities and limit cycles. Conditions governing transient grazing are developed in Section 4, and adapted to periodic systems in Section 5. The grazing point formulation is extended to a continuation process in Section 6. Section 7 develops an optimization technique for finding the smallest parameter change necessary to induce grazing. Conclusions are provided in Section 8. 2 Hybrid System Representation 2. Model As mentioned previously, hybrid system behaviour is characterized by continuous and discrete states, continuous dynamics, discrete events (triggers), and mappings that define the evolution of discrete states at events. Numerous formal models exist for rigorously describing hybrid system dynamics. Examples include petri nets [David and Alla, 992] and hybrid automata [van der Schaft and Schumacher, 2]. However those representations are not immediately amenable to numerical implementation. A useful, non-restrictive model formulation should be, capable of capturing the full range of continuous/discrete hybrid system dynamics, computationally efficient, and consistent with the development of shooting methods 3. It is shown in [Hiskens and Pai, 2; Hiskens, 24] that these specifications can be met completely by a model that consists of a set of differential-algebraic equations, adapted to incorporate impulsive (state reset) action and switching of the algebraic equations. This DA Impulsive Switched (DAIS) model can be written in the form, where and g (i) (x, y) = m r ( ) ẋ = f(x, y) + δ(y r[j] ) h j (x, y) x j= m s = g(x, y) g () (x, y) + g (i) (x, y) (2) { g (i ) (x, y) g (i+) (x, y) i= y s[i] < y s[i] > x R n are dynamic states, and y R m are algebraic states; () i =,..., m s (3) δ(.) is the Dirac delta. Each impulse term of the summation in () can be expressed in the alternative state reset form x + = h j (x, y ) when y r[j] = (4) where the notation x + denotes the value of x just after the reset event, while x and y refer to the values of x and y just prior to the event. This form motivates a generalization to an implicit mapping h j (x+, x, y ) =. 2 A related package called SlideCont [Dercole and Kuznetsov, 25] does address non-smooth systems, but in the context of using a Filippov approach to describe sliding mode behaviour. Grazing conditions are not considered. 3 Shooting methods couple Newton s method with numerical integration, see [Stoer and Bulirsch, 993]. Such methods are discussed in detail later in the paper. 3

Subscripts r[j], s[i] index elements of y that trigger the j-th state reset (impulsive) event and i-th algebraic switching event respectively. (This refers to the i-th modelled event not the event that occurs i-th in the time sequence.) f, h j : R n+m R n. g (), g (i±) : R n+m R m. Some elements of each g (.) will usually be identically zero, but no elements of the composite g should be identically zero. Each g (i±) may itself have a switched form, and is defined similarly to (2)-(3), leading to a nested structure for g. A non-autonomous version of the DAIS model follows from explicit inclusion of time t in f, g, and h. Alternatively time can be modelled as a state, with dynamics ẋ t = and initial condition x t () = t. This monotonic state x t may complicate analysis of periodic systems. If so, periodic x t can be achieved using a reset equation of the form (4), x + t = x t T when x t = t + T, where T is the period. A compact development of the equations describing grazing phenomena results from incorporating parameters p R l into the dynamic states x. (Numerical implementation is also simplified.) This is achieved by introducing trivial differential equations ṗ = (5) into (), and results in the natural partitioning [ ] [ x f x =, f = p ] [ hj ], h j = p (6) where x are the true dynamic states, and p are parameters. Away from events, system dynamics evolve smoothly according to the familiar differentialalgebraic model ẋ = f(x, y) (7) = g(x, y) (8) where g is composed of g () together with appropriate choices of g (i ) or g (i+), depending on the signs of the corresponding elements of y s[i]. At switching events (3), some component equations of g change. To satisfy the new g = constraints, algebraic variables y may undergo a step change. Impulse events () (equivalently reset events (4)) force a discrete change in elements of x. Algebraic variables may again step to ensure g = is always satisfied. The flows of x and y are defined as [ ] φ(x, t) x(t) = φ(x, t) = (9) p where x(t) and y(t) satisfy ()-(3), along with initial conditions, The partitioning of φ in (9) is in accordance with (6). y(t) = ψ(x, t) () φ(x, t ) = x () g ( x, ψ(x, t ) ) =. (2) 4

2.2 Example (Modelling) The simple static var compensator (SVC) of Figure 2 provides a practical illustration of the DAIS model formulation. This example will be revisited later to examine various algorithms for locating grazing phenomena. The parameters of this model are taken from [Jalali et al., 996]. For clarity of presentation we consider only a single thyristor, whereas [Jalali et al., 996] used a back-to-back pair. Resistor R s and inductor L s characterize the transformer and source impedance, while R r and L r are the resistance and inductance of the inductor coil in series with the thyristor switch. The thyristor conducts current i Lr only in the forward direction. It turns on when triggered by a firing pulse at firing angle α, and continues to conduct while i Lr remains positive. It turns off (commutates) when i Lr becomes zero. The thyristor is assumed ideal, so detailed nonlinearities in the on/off process are neglected. The model consists of differential equations together with algebraic equations d dt x t i Ls i Lr v c x rr x stat = v Ls /L s v Lr /L r i c /C (3) = R s i Ls + v Ls + v c sin(ωx t ) (4) = i Ls i c i Lr (5) y on = ωx t π x rr α 8 (6) } v Lr = y off = x stat < (thyristor open circuit) (7) v c R r i Lr v Lr = } y off = i Lr x stat > (thyristor conducting) (8) and state reset equations x + rr = x x + rr + 2 stat = x stat + 2 } when y on = (9) x + stat = x stat 2 when y off =. (2) Model behaviour can be best explained by referring to Figure 3. Assume that initial time x t =, and the thyristor is in blocking (open circuit) mode, that is x stat =. Initially x rr =, so according to (6), the turn-on indicator y on <. Subsequently y on increases linearly with time until a reset event (9) is triggered when y on =. At that event, the thyristor status x stat toggles from to +, i.e., from blocking to conducting. Also, a step occurs in x rr, forcing y on < again. While the thyristor is conducting, the turn-off indicator y off monitors the thyristor current i Lr. If i Lr drops to zero, reset event (2) toggles x stat from + to, and the thyristor self commutates (blocks). In order to motivate later grazing analysis, Figure 4 shows thyristor current i Lr for various values of firing angle. It can be seen that as the firing angle increases from α = 2 o to 25 o, the dip during the first conduction period distorts towards zero. Somewhere between 25 o and 3 o, the increasing distortion causes the current to fall to zero, and the thyristor prematurely commutates. The pivotal case, separating the two qualitatively different forms of behaviour, corresponds to grazing. As the firing angle increases further, another grazing situation occurs between 3 o and 35 o, with premature commutation occurring during the second conduction period. 5

R s,l s R s =.9 mω L s =.95 mh R r =3.3 mω L r =.66 mh + v Ls + v Lr i Ls i Lr C R r,l r Vs = sin ωt C=.5 mf v c Firing angle, α (a) One-line diagram. (b) Circuit representation. Figure 2: Static var compensator (SVC)..5 Firing angle, α = 2 o.5.5.5 2 Thyristor current, i Lr Source voltage Thyristor status, x stat Thyristor trigger, y on 2.5.5..5.2.25.3.35.4.45.5 Time (sec) Figure 3: SVC model behaviour. 2.3 Numerical integration Predicting the dynamic response of a system, for a given set of initial conditions, generally requires numerical integration. The accuracy of the resulting approximate trajectory depends on factors such as integration technique, time step and round-off error [Parker and Chua, 989; Shampine, 994]. Gross errors, including numerical instability, can be avoided by using implicit integration with an appropriate time step. However some inaccuracy will always remain. In cases where event triggering hypersurfaces are encountered transversally, slight inaccuracy in the predicted trajectory will have only a minor effect on the triggering point. 4 However in grazing situations, where the encounter is tangential, behaviour will be as sensitive to simulation parameters as it is to true system parameters. 4 The point where the trajectory encounters the triggering hypersurface can be accurately located by adapting the implicit integration solver. Normal progression from time t k to t k+ = t k + t step, for a given time-step t step, is achieved by solving a (typically nonlinear) implicit algebraic equation of the form, F int (x k, y k, x k+, y k+, t step ) = (2) for x k+, y k+. When locating a triggering point, t step becomes a variable, and (2) is augmented by the triggering hypersurface equation s(x k+, y k+ ) =. 6

.5 α=2 o.5..5.2.25.3.35.4.45.5 Thyristor current, i Lr (A).5 α=25 o.5..5.2.25.3.35.4.45.5.5 α=3 o.5..5.2.25.3.35.4.45.5.5 α=35 o.5..5.2.25.3.35.4.45.5 Time (sec) Figure 4: Thyristor current waveforms for various firing angles. Firing angle, α = 25 o.6 Time step =. sec Time step =. sec.5 Thyristor current, i Lr (A).4.3.2..2.4.6.8..2.4.6 Time (sec) Figure 5: Integration time step comparison. To illustrate, Figure 5 shows the first cycle of SVC inductor current i Lr, for a firing angle α = 25 o. Trapezoidal integration was used to obtain this trajectory; the responses predicted using two different time steps are shown. The two trajectories are almost identical, except for slight divergence around the peaks and troughs. However referring to Figure 4, it is the trough that undergoes grazing as the firing angle α is increased. The predicted grazing value of α will therefore depend (slightly) on the integration time step. There are certainly integration techniques that are more accurate than trapezoidal, so numerical inaccuracies can be further reduced. However the tangential contact implicit in grazing suggests that any inaccuracy will (slightly) alter the grazing point prediction. 7

3 Background 3. Trajectory sensitivities Shooting method algorithms, which form the basis for locating grazing phenomena, require the sensitivity of a trajectory to perturbations in parameters and/or initial conditions [Stoer and Bulirsch, 993]. To obtain the sensitivity of the flows φ and ψ to initial conditions x, the Taylor series expansions of (9)-() are formed. Neglecting higher order terms gives x(t) = x(t) x x Φ(x, t) x (22) y(t) = y(t) x x Ψ(x, t) x (23) where Φ and Ψ are the sensitivity transition matrices, or trajectory sensitivities, associated with the x and y flows respectively [Frank, 978]. Equations (22)-(23) describe the changes x(t) and y(t) in a trajectory, at time t along the trajectory, for a given (small) change in initial conditions x = [ x T p T ] T. In accordance with the partitioning (6), Φ can be decomposed as [ ] Φx Φ Φ = p (24) I l where I l is the l l identity matrix. An overview of the variational equations describing the evolution of these sensitivities is provided in Appendix A. It should be emphasized that Φ and Ψ do not require smoothness of the underlying flows φ and ψ. As shown in Appendix A, they are well defined for non-smooth and/or discontinuous flows generated by hybrid systems. 3.2 Limit cycles 3.2. Poincaré maps Periodic behaviour of limit cycles implies that the system state returns to its initial value every cycle. This can be expressed in terms of the flow as x = φ(x, T ) (25) where T is the limit cycle period 5. For non-autonomous systems, the period T is a known quantity. However it is not known a priori for autonomous systems. The unknown period, or return time, can be found using Poincaré map concepts [Parker and Chua, 989; Seydel, 994]. These concepts are well known; the following summary is provided as it underlies later analysis of grazing bifurcations in periodic systems. Referring to Figure 6, let Σ be a hyperplane that is transversal to the flow φ(x, t), and defined by Σ = {x : σ T (x x) = } (26) where x is a point anchoring Σ, and σ is a vector normal to Σ. The return time τ r for a trajectory emanating from x Σ is therefore given by σ T (φ(x, τ r ) x) =. (27) Because the flow φ(x, t) transversally encounters Σ at τ r, the tangent to the flow at that intersection point φ t (τ r) = f(x(τ r ), y(τ r )) f τr (28) 5 It is assumed throughout that the algebraic equations g(x, y) = are always satisfied. 8

φ(x,t) P(x ) Γ Σ x ~ x * x σ Figure 6: Poincaré map. satisfies By differentiating (27) with respect to x and τ r, σ T f τr. (29) σ T Φ(x, τ r )dx + σ T f τr dτ r =, (3) and taking account of the transversality condition (29), it can be seen that the implicit function theorem [Fleming, 977] guarantees the existence of a function τ r (x ) which (locally) satisfies (27), σ T (φ(x, τ r (x )) x) =. (3) The flow φ and hyperplane Σ together describe a Poincaré map P : Σ Σ, defined by P (x ) = φ(x, τ r (x )) (32) where τ r (.) is given (implicitly) by (27). Therefore from (25), a limit cycle of an autonomous system must satisfy x = P (x ) = φ(x, τ r (x )). (33) The corresponding limit cycle is labelled Γ in Figure 6. For a non-autonomous system, the Poincaré map P : R n R n becomes simply with limit cycles given by x = P (x ). 3.2.2 Locating limit cycles P (x ) = φ(x, T ), (34) Limit cycles can be located by solving (25) for non-autonomous systems or (33) for autonomous systems. In the case of non-autonomous systems, rewriting (25) gives F l (x ) = φ(x, T ) x =. (35) The solution x can be obtained using a shooting method 6, which solves the iterative scheme x k+ = x k ( DF l (x k ) ) Fl (x k ) (36) 6 Reformulation as a multiple shooting method [Stoer and Bulirsch, 993] is straightforward. Likewise for the grazing shooting methods discussed later. 9

where and I is the n-dimensional identity matrix. For autonomous systems, rewriting (33) gives Again (36) can be used to find the solution x. In this case The term dτr dx DF l (x k ) = Φ(x k, T ) I (37) F l (x ) = φ(x, τ r (x )) x =. (38) DF l (x k ) = Φ(x k, τ r (x k dτ r )) + f τr(x k ) dx (xk ) I. (39) in (39) can be obtained from (3), giving DF l (x k ) = Φ(x k, τ r (x k σ T Φ(x k, τ r (x k )) )) f τr (x k ) σ T I (4) f τr(x k ) ( = I f ) τ r(x )σ T k σ T Φ(x k, τ r (x k )) I. (4) f τr (x k ) Recall from Appendix A that the sensitivity transition matrix Φ in (37) and (4) is well defined for hybrid (piecewise smooth) systems. Therefore the proposed shooting method is suitable for piecewise smooth limit cycles. This will be illustrated in later examples. 3.2.3 Parameters within the state It can be seen from (9) that the last l states within x, those corresponding to parameters p, always remain constant. Therefore the last l equations in (35) or (38) are always satisfied by default, and hence are redundant. Discarding those l equations results in the under-constrained problem, F l (x) = (42) where F l : R n R n l. Furthermore, (24) indicates that the last l rows of Φ are identical to the corresponding rows of the identity matrix I. Therefore from (37), [ ] DF DF l = l (43) where l n refers to the l n matrix of zeros. Likewise, it is straightforward to show that DF l in (4) also has the structure (43). It follows that solutions of (35) or (38) are well defined only when l =, i.e., no parameters are incorporated into x. In that case F l F l. It will be shown in Section 5. though that periodic grazing requires l =, and in Section 6 that continuation requires l = 2. Closest grazing point concepts, developed in Section 7, require l 2. 4 Transient Grazing 4. Mathematical description Grazing is characterised by a trajectory (flow) of the system touching a triggering hypersurface tangentially. Let the target hypersurface be described by l n b(x, y) = (44)

where b : R n+m R. Vectors that are normal to b are therefore given by b = [ b x b y ] T [b x b y ] T, and the tangent hyperplane is spanned by vectors [u T v T ] T that satisfy [ ] u [b x b y ] =. (45) v The vector [ẋ T ẏ T ] T is directed tangentially along the flow, so it must satisfy (45) at a grazing point. Furthermore, differentiating (8) and substituting (7) gives, = g xẋ + g y ẏ (46) = g x f(x, y) + g y v (47) where for notational convenience v replaces ẏ. A single degree of freedom is available for varying parameters (and initial conditions) to find a grazing point. This single degree of freedom can be achieved by parametrization x (θ), where θ is a scalar. Grazing points are then described by combining together the flow definition (9) (appropriately parameterized by θ), algebraic equations (8), target hypersurface (44), and tangency conditions (45),(47), to give F g (x g, θ, t g ) := φ(x (θ), t g ) x g = (48) F g2 (x g, y g ) := g(x g, y g ) = (49) F g3 (x g, y g ) := b(x g, y g ) = (5) [ ] [ ] bx b F g4 (x g, y g, v) := y f(xg, y g ) =. (5) g x g y v (x g,y g ) The grazing encounter occurs at time t g along the trajectory, and its state-space location is given by x g, y g. This set of equations may be written compactly as F g (x g, y g, θ, t g, v) = F g (z) = (52) where F g : R n+2m+2 R n+2m+2 and z = [x T g y T g θ t g v T ] T. Solution of (52) can be achieved using a shooting method, as discussed in the following section. 4.2 Shooting Method 4.2. Algorithm Numerical solution of (52) using Newton s method amounts to iterating on the standard update formula z k+ = z k ( DF g (z k ) ) Fg (z k ) (53) where DF g is the Jacobian matrix I Φ dx dθ f g x g y DF g = b x b y f t b xx + b x f x + v t b yx f t b xy + b x f y + v t b yy b y ˆf t g xx + g x f x + ˆv t g yx ˆf t g xy + g x f y + ˆv t g yy g y (54) with ˆf = f f f... f R mn m, ˆv = v v v... v R m2 m (55)

g xx = g yy = 2 g x 2 2 g 2 x 2.. 2 g m x 2 2 g y 2 2 g 2 y 2.. 2 g m y 2 Rmn n, g yx = R m2 m, g xy = 2 g y x 2 g 2 y x.. 2 g m y x 2 g x y 2 g 2 x y.. 2 g m x y R m2 n (56) R mn m. (57) The matrices g xx, g yx, g xy and g yy are usually extremely sparse. It has been found that often the error introduced into DF g by ignoring them has negligible effect on convergence. However situations can arise where these terms are vital for reliable convergence. This is the case, for example, when the trajectory has multiple turning points (peaks and troughs) in the vicinity of the target hypersurface. The example of Section 4.4 provides an illustration. Two approaches have been used to obtain the second derivative terms:. Numerical differencing. Many simulators provide direct computation 7 of g x and g y. Numerical differencing of g x and g y is straightforward, but not particularly efficient for high dimensional systems. 2. Direct computation. By utilizing an object oriented modelling structure [Hiskens and Sokolowski, 2], second derivative terms occur only within components. There are no terms introduced by inter-component dependencies. Explicit formulae for second derivative terms can be established for each component model. The sparse matrices can then be efficiently constructed. Care must be taken in evaluating the terms of (52) and (54) that relate to trajectory solution. The flow term φ(x (θ k ), t k g) in (48) evaluates, via numerical integration, to the value of x at time t k g along the trajectory that has initial value x (θ k ). Likewise, the terms Φ and f in the first row of DF g should also be evaluated at time t k g along that trajectory. All other terms in DF g should be evaluated at x k g, y k g. 4.2.2 Initialization of variables As with all iterative procedures, solution of (53) requires a good initial guess z. In terms of the original system variables, initial (approximate) grazing point values of x g, y g, θ, t g, and v are required. These can be obtained from regular simulation. Referring to Figure, parameter values that are near the critical value result in trajectories that either, ) encounter the target hypersurface, or 2) just miss the hypersurface. Therefore the trajectory induced by parameter θ should be monitored for, ) a point where b(x, y) =, i.e., an intersection with the target hypersurface, or 2) an appropriate local minimum of b(x, y), i.e., a point where the trajectory passes close by the target hypersurface. This point is given by db dt =, which implies b xẋ+b y ẏ =. Substituting for ẏ from (46), and using (7), gives db dt = (b x b y g y g x )f(x, y) =. 7 These quantities are required for implicit numerical integration. 2

.9.8 Original firing angle, α=2 o Grazing, α=29.43 o.7 Thyristor current, i Lr (A).6.5.4.3.2..5..5.2.25.3.35.4.45.5 Time (sec) Figure 7: Comparison of original and grazing behaviour of i Lr. In both cases, the identified point directly provides initial values for x g, y g, and t g. The corresponding value of v can be obtained from (47) as with all partial derivatives evaluated at x g, y g. v = g y g x f(x g, y g) 4.3 Example 2 (Switching-time bifurcation) Referring to Figure 4, variation of the thyristor firing angle α suggests that a switching-time bifurcation [Rajaraman et al., 996; Jalali et al., 996] occurs between 25 o and 3 o. The triggering hypersurface in this case is given by i Lr =. The shooting method (53) was used to determine the conditions that gave rise to grazing. For illustration purposes, an initial parameter value of α = 2 o was chosen, even though it was known that the actual grazing value α lay in the range 25 o < α < 3 o. The solution process converged in 3 iterations, with convergence progress given in Table. Figure 7 shows the behaviour of i Lr for the initial guess α = 2 o and the grazing value α = 29.43 o. It can be seen that grazing occurred at time t g =.7946 sec, when the dip during the first conduction period dropped to i Lr =. Behaviour is ill-defined at that point; i Lr could continue as shown in Figure 7, or the thyristor could commutate and i Lr remain at zero. Exact behaviour would be governed by unmodelled effects. Figure 4 also indicates that a switching-time bifurcation can occur during the second conduction period, for a value of firing angle in the range 3 o < α < 35 o. The shooting method (53) was Table : Shooting method convergence, first conduction period. Iteration Grazing values Firing angle, α Time, t g 2..79 28.28.7954 2 29.39.7947 3 29.43.7946 3

Table 2: Shooting method convergence, second conduction period. Iteration Grazing values Firing angle, α Time, t g 2..246 3.89.2487 2 32.47.2498 3 32.66.2499 V V t ~ Efd AVR Exciter PSS Figure 8: Single machine infinite bus system. V t +st R V ref + Σ + +st C +st B K A +st A E fdmax E fd V PSS E fdmin V max +st 3 +st +st 4 +st 2 V min st w +st w K PSS ω Figure 9: Excitation system (AVR/PSS) representation. again used to find this grazing value. An initial guess of α = 2 o was used, with solution progress given in Table 2. Even though the initial guess for α was (deliberately) quite poor, convergence was obtained in 3 iterations. Grazing occurs at t g =.2499 sec, with a firing angle α = 32.66 o. 4.4 Example 3 (Performance specification) Performance specifications often place bounds on transient excursions of system quantities. Determining parameter values that ensure the specifications are satisfied can be formulated as a grazing problem (52). The single machine infinite bus power system of Figure 8 will be used to illustrate this application. For this example, the generator was accurately represented by a sixth order machine model 8, and the generator excitation system was modelled according to Figure 9. Note that the output limits on the field voltage E fd are anti-wind-up limits, while the limits on the stabilizer output V P SS are clipping limits [Goodwin et al., 2]. Therefore even though this example utilizes a simple network structure, it exhibits nonlinear, non-smooth, hybrid system behaviour. Larger systems are no more challenging. A single phase fault was applied at the generator terminal bus at.5 sec. The fault was cleared, without line tripping, at.28 sec. Generators are susceptible to over-voltage protection operation if their terminal voltage rises too high. This may occur during transients following a large disturbance. The field voltage maximum limit E fdmax has a large influence on transient over-voltages. Therefore this example 8 The sixth order machine model consists of two axes, with two windings in each axis [Sauer and Pai, 998]. 4

Table 3: Shooting method convergence. Iteration Grazing values Param, E fdmax Time, t g 5.8.4 3.6.28 2 4.37.9 3 4.72.2 4 4.78.2 considers the maximum value of E fdmax that ensures the initial terminal voltage overshoot does not rise above a specified value of.2 pu. The target hypersurface in this case is therefore V t.2 =. Results of the iterative process are given in Table 3, and presented graphically in Figures and. Convergence of the shooting method was achieved in four iterations. This is an encouraging result, as an onerous test condition was chosen. Referring to Figure, it can be seen that the original voltage trajectory is quite flat over the first extended peak. The grazing formulation (52) not only describes peaks, but also troughs and points of inflection. It turns out that for this example, (52) actually has three solutions in close proximity. Accordingly, the Jacobian DF g is quite ill-conditioned. It was found that if the second derivative terms in (52) were ignored, the shooting method converged, but to the wrong solution. This occurred for initial conditions over most of the extended peak. Clearly the directional information provided by the second derivative terms is important in cases such as this, where the encounter between the trajectory and the border is not unimodal. It is evident from Figures and that this system exhibits quite non-smooth behaviour. In fact fifteen events occur over the initial 2 sec transient, primarily V P SS banging on maximum and minimum limits. Discrete events clearly exert a strong influence on system dynamics. However because the trajectory sensitivities, and hence the Jacobian DF g, take those events into account, shooting method convergence is unaffected. Notice in Figure that enforcing the performance specification at the first peak has a detrimental effect on the second peak. This reflects the fact that the grazing formulation (52) solves for local encounters between the trajectory and the tangent hypersurface. However the specification could be enforced at both peaks by freeing a second parameter, and coupling together two sets of equations of the form (48)-(5). 5 Periodic Grazing 5. Algorithm For a grazing bifurcation to occur in a periodic system, the conditions governing limit cycles, (35) or (38), and grazing (52) must be jointly satisfied. This requires more degrees of freedom than was the case for transient grazing. In order to locate a limit cycle, the initial point x must be free to vary. Also, grazing point solution requires one free parameter. Computational and notational advantages follow from a consistent treatment of all variables. Therefore throughout subsequent developments, parameters p R l will be incorporated into x in accordance with (6). To allow for the extra degrees of freedom, (48) should be restated, F g(x g, x, t g ) := φ(x, t g ) x g =. (58) Also, recall from Section 3.2.3 that with parameters p incorporated into x, the equations describing limit cycles take the form (42). Assembling the full set of equations governing grazing and limit 5

.3.2 Hypersurface b(x,y): V t.2=. Terminal voltage, V t (pu).9.8.7.6.5.4 Initial trajectory Grazing trajectory.3.2.4.6.8.2.4.6.8 2 Time (sec) Figure : Terminal voltage, V t. 6 5 4 Field voltage, E fd (pu) 3 2 Initial trajectory Grazing trajectory.2.4.6.8.2.4.6.8 2 Time (sec) Figure : Generator field voltage, E fd. cycles gives F gl (z) F gl (x g, y g, x, t g, v) := F g(x g, x, t g ) F g2 (x g, y g ) F g3 (x g, y g ) F g4 (x g, y g, v) F l (x ) = (59) where z = [x T g y T g x T t g v T ] T and F gl : R 2n+2m+ R 2n+2m+2 l. Point solutions of (59) require a match between the number of equations and variables. This is achieved when l =, i.e., a single free parameter. When l >, (59) describes a continuum of solutions. That situation arises in Sections 6 and 7. 6

Table 4: Shooting method convergence to grazing bifurcation. Iteration Limit cycle initial point, x Grazing values i Ls v c Firing angle, α Time, t g 3.8462 -.5853..5 4.6489 -.962 2.3.43 2 4.6628 -.964 2.6.43 3 4.6627 -.964 2.6.43 As in the case of transient grazing, numerical solution of (59) using Newton s method amounts to iterating on the standard update formula z k+ = z k ( DF gl (z k ) ) Fgl (z k ) (6) where now DF gl is the Jacobian matrix I Φ f g x g y DF gl = b x b y f t b xx + b x f x + v t b yx f t b xy + b x f y + v t b yy b y ˆf t g xx + g x f x + ˆv t g yx ˆf t g xy + g x f y + ˆv t g yy g y DF l (6) with ˆf, ˆv, and the second order partial derivatives defined by (55)-(57). The term DF l is defined by (43). As noted in Section 4.2., care must be given to evaluating terms of (59) and (6) that relate to trajectory solution. Referring to (59), the flow term φ(x, k t k g) in F g evaluates, via numerical integration, to the value of x at time t k g along the trajectory initialized at x k. The associated Jacobian entries Φ and f in the first row of DF gl should also be evaluated at t k g along that trajectory. Similarly, F l in (59) involves the flow term φ(x k, T ) or φ(x k, τ r (x k )) for non-autonomous or autonomous systems respectively. The former evaluates to x at time T along the trajectory initiated from x k. The latter gives x at the point where the trajectory, starting from x k Σ, re-encounters Σ. 9 The associated Jacobian entry DF l, which involves Φ, should be evaluated at time T, or the return point, accordingly. 5.2 Example 4 (Non-autonomous limit cycles) The SVC of Section 2.2 was previously used (in Section 4.3) to illustrate transient grazing. In steady state, the SVC exhibits (non-autonomous) limit cycle behaviour. Figure 2 shows steady state operation for a range of firing angles α. These limit cycles were located using the shooting method (36). It is apparent from Figure 2 that the limit cycles for α = o and α = 5 o have structurally different forms. A grazing bifurcation occurs somewhere between these two cases. The shooting method of Section 5. was used to determine the value of α corresponding to this grazing bifurcation. Initial conditions were given by the α = o limit cycle. Convergence progress is reported in Table 4. The bifurcation occurs at α = 2.6 o, and is shown in Figure 3, along with the initial condition limit cycle. Figure 3 also shows the post-bifurcation limit cycle that develops when α is incrementally perturbed above the bifurcation value. Interestingly, this single-trough limit cycle co-exists with the double-trough version over the range 97.73 o < α < 2.6 o. Both co-existing limit cycles are stable, though the region of attraction for the single-trough one is quite small. At α = 97.73 o, the single-trough limit cycle undergoes its own grazing bifurcation and vanishes. 9 This occurs at return time τ r(x k ), though that time is not explicitly determined. The SVC model is non-autonomous, due to the time-dependent source. 7

Thyristor current, i Lr (A) 3 2 α=2 o.5..5.2.25.3.35.4.45.5 3 2 α=5 o.5..5.2.25.3.35.4.45.5 3 2 α= o.5..5.2.25.3.35.4.45.5 3 2 α=5 o.5..5.2.25.3.35.4.45.5 3 2 α= o.5..5.2.25.3.35.4.45.5 Time (sec) Figure 2: SVC steady state behaviour over a range of firing angles. 3.5 3 Initial condition, α= o Bifurcation, α=2.636 o Post bifurcation 2.5 Thyristor current, i Lr (A) 2.5.5.5..5.2.25.3 Time (sec) Figure 3: SVC grazing bifurcation. 5.3 Example 5 (Autonomous limit cycles) 5.3. Robot model A model of the compass gait biped robot is discussed in detail in [Goswami et al., 998]. A summary is included here for completeness. The biped robot can be treated as a double pendulum, with point masses m H and m concentrated at the hips and legs respectively. Figure 4 provides a schematic representation and identifies other important parameters: lengths a and b, and incline angle γ. The robot configuration is described by the support angle θ s and the non-support angle 8

γ Figure 4: Compass gait biped robot. θ ns. The dynamic equations describing the robot can be written M(θ) θ + N(θ, θ) θ + g(θ) = (62) a where θ = [θ ns θ s ] T. The state vector is therefore x = [θ ns θ s θns θs ] T R 4. The matrix coefficients of (62) are given by, [ ] β M(θ) = 2 ( + β)β cos θ d ( + β)β cos θ d ( + β) 2 (µ + ) + [ N(θ, θ) ( + β)β = θ ] s sin θ d ( + β)β θ ns sin θ d [ ] gβ sin θ g(θ) = ns ((µ + )( + β) + )g sin θ s where θ d = θ s θ ns, β = b/a, µ = m H /m, and g = 9.8 is the gravitational constant. The model can be simply manipulated into the form ()-(2), though the impulse effects are added below. An event occurs when the non-support (swinging) leg collides with the ground. This establishes the triggering condition θ ns + θ s + 2γ =. (63) At the event, the non-support leg becomes the support leg, and vice-versa. Velocities θ ns and θ s undergo step changes to ensure conservation of momentum through the collision. The resulting reset equations can be written [ ] [ ] + [ ] = (64) θ θ θ θ Q + (θ d ) Q (θ d ) where [ ( ) Q + β β ( + β) cos θd (θ d ) = Q (θ d ) = β 2 [ β β + ( µ( + β) 2 + 2( + β) ) cos θ d β ( + β) ( ) ( + β) β cos θ d + + µ( + β) 2 β( + β) cos θ d ]. ] Equation (64) matches the form (4). The event triggering state y r follows from (63) as y r = θ ns + θ s + 2γ. 9

Table 5: Shooting method convergence to grazing bifurcation. Iteration Limit cycle initial point, x Grazing values θ ns θ s θns θs Slope (deg), γ Time, t g -.35.2. -. 3..28 -.476.2253. -.48 4.66.2742 2 -.47.2223. -.278 5.7.2762 3 -.495.222. -.25 4.99.2764 3 2.5 b(x,y): d/dt(θ ns ) 2.5= 2.5 d/dt(θ ns ).5 Poincare hyperplane, Σ.5.5 2 Initial trajectory Final grazing limit cycle 2.5.5.4.3.2...2.3.4.5 θ ns Figure 5: Non-support leg angle θ ns versus velocity θ ns. 5.3.2 Results To illustrate the shooting algorithm, a triggering hypersurface (border) was established by b(x, y) = x 3 2.5 = where x 3 θ ns. This could be interpreted as a maximum allowable non-support leg velocity. (Perhaps the robot falls apart at higher velocities!) Walking motion that just satisfied this constraint was achieved by varying the incline angle γ. Solution progress is given in Table 5, and illustrated in Figure 5. The figure shows the initial trajectory, and final grazing limit cycle. The Poincaré hyperplane Σ is defined by normal vector σ = [ ] T and anchor point x equal to the initial guess for x. This gave Σ = {x : x 3 =.}. A projection of this hyperplane is shown in Figure 5. The initial trajectory started from, and returned to, this hyperplane. It was not a limit cycle. The final solution started from a point on the hyperplane and returned to that same point. Along the way it grazed the surface b(x, y) =. The characteristic multipliers for the grazing limit cycle are:.549,.873 and.97. Because one of the eigenvalues lies outside the unit circle, this limit cycle is unstable. Even so, shooting method convergence was fast and reliable. On the other hand, locating this limit cycle by repeated simulations would be extremely difficult. 2

Tangent vector, κη Hyperplane (z-z ) T η=κ z zp Next point on curve, z 2 Continuation curve Figure 6: Predictor-corrector process. 6 Continuation method for grazing limit cycles 6. Algorithm When a single parameter is free to vary, (59) describes isolated grazing limit cycles. If two parameters are free, then F gl : R 2n+2m+ R 2n+2m, so F gl (z) = describes a -manifold, or curve, of solutions. Such curves are useful for exploring parameter dependencies, but cannot be computed directly. Rather, a continuation process is required to generate successive points along the curve. This can be achieved robustly using an Euler homotopy algorithm [Garcia and Zangwill, 98]. A brief description of this predictor-corrector process follows. Assume the algorithm starts from a point z on the curve. The first step of the algorithm, as illustrated in Figure 6, is the prediction of the next point on the curve. This is achieved by determining the unit vector that is tangent to the curve at z, and moving along that vector a predefined distance κ. This κ is a (scalar) control parameter that effectively determines the distance between successive points along the curve. In regions of high curvature, κ may need to be small. When the curve is almost linear, a large value of κ would suffice. The unit vector η R 2n+2m+ that is tangent to the curve at z is given by, DF gl (z )η = (65) η 2 = (66) where DF gl is the Jacobian (6) which, because of the two free parameters, now has dimension (2n + 2m) (2n + 2m + ). 2 The prediction of the next point on the curve is given by, z p = z + κη. (67) Having found the prediction point, the next step is to correct to a point z 2 on the curve. The Euler homotopy method does this by solving for the point of intersection of the curve and a hyperplane which passes through z p and that is orthogonal to η. Points z on this hyperplane are given by, (z z p ) T η = (68) or alternatively (z z ) T η = κ. (69) Either (68) or (69) can be used. The point of intersection of the curve and the hyperplane is then given by, [ ] Fgl cont F gl (z) (z) = (z z ) T =. (7) η κ This point would be obtained by solving (59), as discussed in Section 5.. 2 A numerically robust method of obtaining η follows from the factorization DFgl T = QR, where Q is orthogonal and R upper triangular. The last column of Q is exactly the desired η. 2

.54.535.53.525 Capacitance, C (mf).52.55.5.55 Original parameter values.5 Cases considered in Figure 8.495..2.3.4.5.6.7.8 Inductance, L r (mh) Figure 7: Curve relating L r and C, given by the continuation process. Note that in (7), z, η and κ are fixed, with z being the only unknown. The first 2n + 2m equations ensure the point is on the desired curve. The last scalar equation ensures the point is on the hyperplane. Altogether (7) forms a set of 2n + 2m + equations in the same number of unknowns. They can be solved for z 2 using a standard Newton-based shooting method, of the form (6), with ] DF cont gl = [ DFgl η T. (7) The complete predictor-corrector process is illustrated in Figure 6. After the second point z 2 on the curve has been determined, an approximate tangent vector can generally be used for obtaining successive points. The approximate tangent vector at the i-th point, which is used to calculate the (i + )-th point, is given by, η i = z i z i z i z i 2. (72) Obtaining the approximate tangent vector involves much less computation than finding the exact tangent vector using (65),(66). However the approximation may not be adequate in regions of high curvature. 6.2 Example 6 (Continuation) Illustration of the continuation process again utilizes the SVC model of Section 2.2. The aim is to explore the relationship between values of L r and C that give rise to grazing. In Section 5.2, an isolated grazing limit cycle was found by allowing the firing angle α to vary, while holding all other parameters constant. That case, corresponding to α = 2.6 o, L r =.66mH, and C =.5mF, provides an initial point for the continuation process. Now though, the firing angle is fixed at α = 2.6 o, and L r and C are allowed to vary. The Euler homotopy algorithm provides a sequence of points along the resulting -manifold. Figure 7 shows the outcome of this continuation process. Notice that the initial point is located quite close to a sharp turn in the curve. Even so, the continuation process proceeded reliably. Grazing trajectories typically separate different forms of dynamic behaviour. The curve of grazing points in Figure 7 therefore separates regions where behaviour is structurally different. 22

2.5 L r =.3mH.5.2.4.6.8..2.4.6 Thyristor current, i Lr (A) 4 3 2 L r =.4mH.2.4.6.8..2.4.6 2.5 L r =.55mH.5.2.4.6.8..2.4.6 Time (sec) Figure 8: Limit cycles for C =.5mF and three values of L r. To illustrate, Figure 8 shows limit cycles corresponding to parameter values C =.5mF, and L r =.3mH,.4mH and.55mh. The parameter space locations of these three cases are identified in Figure 7. Notice that the parameter set (L r =.4mH) from the region inside the curve gives rise to a limit cycle that differs greatly from the two cases that lie outside the curve. 7 Closest grazing It has been established previously that when l 2, i.e., two or more parameters are free to vary, F gl : R 2n+2m+ R 2n+2m+2 l describes an (l )-manifold, or hypersurface. Let P denote the projection of that manifold onto parameter space. As indicated in Figure 8, limit cycles corresponding to parameters p / P do not undergo grazing. However the parameter space distance between p and P provides an indication of the closeness, or robustness, of that limit cycle to grazing phenomena. A small distance would suggest that the system was vulnerable to grazing. Therefore identifying points on P that are (locally) closest to a nominal parameter set p provides important design information. 7. Mathematical formulation In order to establish the closest grazing minimization problem, it is helpful to distinguish the parameters in (59). It follows from the partitioning (6), which specifies x T = [x T p T ], that (59) can be restated F gl ( z, p) = (73) where z = [x T g y T g x T t g v T ] T R k and k = 2n + 2m + l. The minimization therefore takes the form min p 2 p p 2 A (74) s.t. F gl ( z, p) = (75) 23

where p p 2 A denotes the A-norm (p p ) T A(p p ). For this to be a valid norm, A must be (symmetric) positive definite. It is common for A to be diagonal, with entries taking account of scaling differences between parameters. The Lagrangian corresponding to (74)-(75) is and therefore optimal solutions are given by L( z, p, λ) = 2 p p 2 A + λ T F gl ( z, p), (76) L( z, p, λ) = F gl T z λ A(p p ) + F gl p F gl ( z, p) T λ = (77) where F gl z is the (k + ) k matrix constructed from DF gl in (6) by removing the columns corresponding to parameters p. Those columns form the (k + ) l matrix F gl p. Well defined solutions of (77) require rank{ F gl z } = k. To understand the significance of (77), consider the hyperplane that is tangent to the manifold described by (73). Vectors (d z, dp) on that tangent hyperplane satisfy F gl Premultiplying by the Lagrangian multiplier λ T results in z d z + F gl dp =. (78) p λ T F gl z d z + F λt gl dp =. (79) p But it follows from (77) that the coefficient of d z in (79) equals zero. Therefore λ T F gl p dp =, implying that the parameter space vector F T gl p λ N(p) is normal to P at ( z, p). It may be concluded that (77) describes points on the manifold (73) where the normal vector N(p) aligns with A(p p ). 7.2 Algorithm An iterative procedure for finding the closest (in parameter space) grazing point can be established by utilizing the fact that vectors A(p p ) and N(p) align at that closest point. The following algorithm is adapted from [Dobson, 23]. It converges locally if P is convex (at least locally) or if it is only slightly concave. Parameter values along the ray emanating from p and in the direction of unit vector ρ R l are given by p = p + θρ, where θ is a scalar. As parameters vary along that ray, the grazing hypersurface P will be encountered at a point described by F gl ( z, p + θρ) =. This is a slightly modified version of (59), and can be solved using a shooting method similar to (6). The following iterative procedure seeks to minimize p p A.. Choose an initial ρ. For example, this initialization could be achieved by freeing a single parameter and holding other parameters fixed. 2. Given ρ i, compute the first grazing point in the direction ρ i ; that is, compute θ i such that p i = p + θ i ρ i P. 3. Compute the vector N(p i ) = F T gl p λ normal to P at p i. The Lagrangian multiplier vector λ is given by the first equation in (77), and can be obtained directly from the factorization F gl z = QR. The last column of Q is the desired λ. Computation of N(p i ) is then straightforward. 24