Numerical Simulation and Modeling: EECS 219A, Fall 2019
Links:
Numerical simulation and computational modelling are technologies that pervade science and engineering, from electronics (e.g., analog/RF/mixed-signal circuits, high-speed digital circuits, interconnect, etc.) to optics, nanotechnology, chemistry, biology and mechanics. Moreover, knowing the analytical techniques underlying modelling and simulation is crucial for designing systems. This course provides a detailed introduction to the fundamental principles of these technologies and techniques.
Starting with an introduction to equation-based system modelling, the course covers fundamental concepts and algorithms in numerical simulation, including nonlinear and linear algebraic system solution, numerical algorithms for ODEs and DAEs, frequency-domain solution of linear(ized) systems and algorithms for simulating the effects of noise and parametric variability. Modelling and simulation concepts are developed in the context of system examples so that students are able to apply them immediately to their own research projects. Electronic, mechanical and biochemical systems (including variability-aware and stochastic representations) are used to ground theory and numerics.
The course emphasizes hands-on programming and application to examples as an important means to understand and benefit from the material. Pre-requisites are reviewed in class to make the course as self-contained as possible.
This course is relevant to the BIO, CIR, DMA, INC, MEMS, PHY and SCI areas of EECS, and is a part of Berkeley's Designated Emphasis in Computational Science and Engineering (CSE).
This offering of the class will be re-designed to be accessible to students who have taken the 16A/B series of classes.
Topics to be covered include:
- from ODEs to DAEs: nonlinear differential-algebraic equations (DAEs) for realistic modelling of circuits and systems.
- computational DC analysis: the Newton-Raphson method with initialization and limiting.
- solving sparse linear Ax=b systems numerically: LU factorization.
- solving DAE systems numerically in the time domain: transient analysis.
- modelling and solving biochemical reaction systems; SVDs for identifying and applying conservation laws.
- linearization and AC analysis: numerical phasor analysis of large circuits and systems.
- eigenanalysis: using eigendecomposition for identifying poles and residues of transfer functions. Numerical eigendecomposition: how it is done.
- sensitivity analysis and its uses, including variability characterization and back-propagation in machine learning. basics of numerical optimization.
- noise analysis: random variables, stochastic processes and their use in numerical estimation of noise propagation; direct and adjoint noise computation.
EE16A/B or equivalent.
Course format
- The grade for the course will be based on assigned homeworks, an open-book midterm exam, a project, and class attendance/participation.
- 4 credits. Class# (CCN): 33884.
- MW 4-6pm in 540 Cory Hall
- except on 8/28, 9/4, & 9/11, when it will be held in 299 Cory.
- Slides/notes will be made available to the students.
- Prof. Jaijeet Roychowdhury.