650 likes | 950 Views
Steady-State Methods. UCB EE219A Oct 31 2002 Joel Phillips, Cadence Berkeley Labs. Thanks to: K. Kundert. Steady-State Methods: Goals. Understand alternative way of analyzing differential equations Faster Application-Specific “Tie together” several numerical themes Circuit theory
E N D
Steady-State Methods UCB EE219A Oct 31 2002 Joel Phillips, Cadence Berkeley Labs Thanks to: K. Kundert
Steady-State Methods: Goals • Understand alternative way of analyzing differential equations • Faster • Application-Specific • “Tie together” several numerical themes • Circuit theory • Solution of ODEs/DAEs • Newton methods • Iterative solvers & preconditioning
Today • Review material from last time • In-depth look at time-domain methods for periodic steady-state problem • Matrix-implicit implementation • Analysis • Quick survey of more advanced techniques • Small-signal, RF noise analysis • Oscillators • Multi-frequency steady-state, envelope
Review: AC Small-Signal • Find DC operating point • Linearize around operating point • Solve the AC analysis equation
w w 1 2 Simple Nonlinear Steady-State Problems * • Compute harmonic distortion in the amplifier • Compute conversion gain in the mixer • Compute noise with large-signal bias
IVP Approach • Apply source • Solve IVP (Trap, Euler, etc.) • Wait till steady state is reached • Fourier-transform the output
Problems with IVP • Speed -- Especially with multiple periodic inputs • Accuracy • Steady-state not reached, a-periodicity errors, aliasing errors, interpolation errors Sim Time ~ Fmax / Fmin
Periodic Steady-State Computation • Apply a sinusoid or other periodic input signal • Directly solve for the periodic response • Time-domain solution over one “fundamental” period • Or spectrum: Fourier coefficients at fundamental + harmonics • Need to solve a boundary value problem (BVP)
Note on PBCs • If solution to DAE is unique, then solution on one period determines solution for all time • Both the shooting method and spectral interval methods (harmonic balance) use this fact • From knowledge of solution at one timepoint, can easily construction solution over entire period by solving IVP • We will exploit this in the shooting method
Enforcing PBCs • Approach 1: Build BCs in basis function • Example: Fourier series satisfy periodic boundary conditions • Approach 2: Write extra equations • PBC
PSS Algorithm #1: Harmonic Balance • Periodic solution can be expressed in terms of Fourier series with fundamental frequency • Pick • Spectral derivatives (real solutions please!)
Harmonic Balance: Equation Formation • Enforce • Pseudo-spectral approach: force at selected timepoints • Uniformly spaced to compute derivatives via FFT
Equation Structure • BVP becomes • Jacobian with
Equation Solution • We need to solve • These matrices are dense in either Fourier- or real- space LU factorization is bad news • They are potentially very large • Yet a matrix-vector product can be done fast • Ideal candidate for iterative solution methods (GMRES!) • Good preconditioners are necessary, but hard to construct
Algorithm #2: “Finite Difference” • Given the same derivative discretization for IVP (Gear, trapezoidal, etc.) • Step 1: Write all the discretized circuit equations for the whole period
Algorithm #2: “Finite Difference” • Step 2: Write the PBC equation
Algorithm #2: “Finite Difference” • Step 2: Write the PBC equation
Algorithm #2: “Finite Difference” • Step 3: Solve them • With N circuit equations, M timepoints, system has O(MN) unknowns • Big system! • Recall: Newton method for IVP at timestep n, iteration k
Newton for PSS-FD • Step 2: Write the equations w/ PBC PBC
Algorithm #2: “Finite Difference” • Jacobian structure PBC
Similar Concept, Distinctive Computations • AC • PSS-HB • PSS-FD
Algorithm #2: “Finite Difference” • Linear system solution • With N circuit equations, M timepoints, system has O(MN) unknowns • Big system! • Will use iterative methods • GMRES in particular • Efficient? • How many iterations? • Cost of each iteration? (matrix-vector product?)
GMRES Convergence Analysis • Phillips’ rule of preconditioner analysis: • Real life is always worse than an example you can solve analytically • Simplified PSS-FD matrices • Consider linear case • Consider one variable • Constant timestep
Eigenvalues of PSS-FD Matrix • Eigenvalues tend to unit circle as h0 • Very bad for GMRES!!!! • Need a preconditioner!
PSS-FD Solution Procedure • Viewpoint 1: Preconditioning • Hard to invert/factor entire matrix • Can invert lower-triangular piece fairly easily
GMRES with FD System • Need to solve system with • We will use iterative method (GMRES). • Can combined preconditioner and matrix product! • Must exploit structure for efficiency! • Must compute • Products with • Solves with
Exploiting Structure in • Step 1: Compute • Step 2: Compute
PSS-FD Solution Procedure • Viewpoint 2: Compressed System • If we knew the last point/first point, we can easily obtain all the rest of the points by a forward-substitution
Compressed FD System Structure • Need to solve system with
Compressed FD System Structure • Need to solve system with Apply GMRES to !!
Compressed GMRES Products • Step 1: Compute • Step 2: Compute
Final PSS-FD Procedure • Form equations • For each Newton iteration • Compute residual • Compute Jacobian matrices • Solve PSS-FD Jacobian equation • Preconditioned by L: Using GMRES, solve compressed matrix equation • Find update on whole interval by forward substitution (application of ) • Update solution waveform on interval
Compressed System Analysis • GMRES convergence? • With N equations, M timesteps, have reduced system size from MN to N. Nice! • What is eigenvalue distribution? Must consider for a meaningful analysis. • What about the nonlinear part of the solution? Can we apply a similar trick?
Recall: Note on PBCs • If solution to DAE is unique, then solution on one period determines solution for all time • From knowledge of solution at one timepoint, can easily construction solution over entire period by solving IVP • We will exploit this in the shooting method
Shooting Procedure • Guess x(0) • Integrate to get x(T) • Update x(0) to correct residual • How? Newton! T 0
T 0 Transition Function • Define transition function s.t • Physical interpretation: integrate forward in time with as initial condition • Periodicity condition is
Transition Function Example • Consider linear system • Recall from theory of (homogeneous) linear ODEs
Shooting Method Updates • Periodicity condition is • Want to solve this equation via Newton • Need: Sensitivity matrix • How to compute? Depends on method used for shooting….
Sensitivity Computation • Given equation for final timepoint, take partial derivatives • Use chain rule
Sensitivity Computation • Apply this formula recursively • Starting condition is
Sensitivity Matrix-Vector Product • GMRES needs matrix-vector productfor some • Compute, starting at step 1, proceed to step M • Convenient: • At step k, solve
Remarkable Fact: Connection Shooting/FD • We have the *same equations* to compute the sensitivity update. Yet not the same method.
Final PSS-Shooting Procedure • Form equations • For each Newton iteration • Compute residual in periodicity condition • By integrating IVP forward to find x(T) • Solve shooting update equation • Using GMRES, solve sensitivity matrix equation • Update first time point x(0)
Shooting vs. PSS-FD Procedures • Same linear system is solved • Same GMRES convergence properties • Different nonlinear updates • Different Newton convergence properties • Shooting • Updates end point only • Satisfies ODE at every iteration • Tries to converge boundary condition • PSS-FD • Updates entire interval • Satisfies BC at every iteration • Tries to converge ODE solution
GMRES Convergence Analysis • Consider linear model problem • Transition function / matrix: • Eigenvalues of exponential matrix are exponentials of eigenvalues • Stability analysis: circuits tend to be designed to be stable eigenvalues have negative real parts all eigevalues of are inside unit circle
GMRES convergence • “Stiff” modes go away immediately • “Neutrally stable” modes slow convergence problems • With DAEs: • Algebraic equations, conservations (e.g. KCL) • Only dynamic modes show up in matrix • Resistors do not hold “state”, only capacitors, inductors, other energy storage elements
Irony • Consider transient matrix: • Ill-conditioned if stiff bad for iterative methods • PSS-FD • Stiff modes: eigenvalues with large negative real part • Map to unity in this procedure • What made transient hard (esp. iterative methods) makes PSS problem easy!!
Subintervals Multi-Interval Chebyshev Discretization Multi-Interval Decomposition • Low-order where needed, high-order where possible • Refinement strategy: • order increase, in smooth region, III, • interval decomposition, in sharp-transition region, II. IV V III II I
Example Convergence Result 100 Uniform high-order 10-1 Relative error of output 10-3 uniform 2nd-order MIC 10-5 10-6 100 1000 500 Total # of time steps or collocation points High order is more efficient and MIC (2-16) is more efficient than uniform high order!
Linear Periodically Varying Circuits • Model Frequency-Translating Devices • Assume devices is near-linear with respect to data inputs May be very nonlinear with respect to other inputs