# Teaching

• EECE 7807 and EECE 8907: Computational Science and Engineering 1

Course Abstract: The following topics are covered in this class to learn the theoretical foundation, to program and to use the finite element method to solve linear boundary value problems in 1-D and 2-D: 1) Review of tools and methods from ordinary differential equations, partial differential equations, and calculus of variation for solving boundary value problems; 2) Review of Hilbert and Banach spaces; 3) Overview of finite difference and finite element methods for solving boundary value problems; 4) Deriving strong and weak formulation, Galerkin approximation and matrix formulation; 5) Finite element formulation; 6) Conjugate gradient method and other numerical techniques for solving the finite element formulation; 7) Finite element formulation for solving 2-D boundary value problems; 8) Mesh generation; 9) Programming a finite element; 10) Convergence, exactness and error analysis od the finite element method; and 11) Student will complete a project work in their area of interest/research.

• EECE 7903 and EECE 8903: Computational Science and Engineering 2: Fluid Flow

Course Abstract: Modeling of transport phenomena from governing physical principles (e.g. fluid flow) and numerical analysis of the underlying differential equations have a broad spectrum of applications ranging from biomedicine, engineering design and simulation, aerodynamics, weather forecasting to animated motion pictures. Topics covered will emphasize on a collective learning of physical phenomena and theoretical models that govern fluid flow, mathematical formulation, numerical analysis and visualization of fluid flow.  Particular emphasis will be on mathematical development of finite-element methods for incompressible Navier-Stokes equations governing fluid flow in a non-moving domain.  Class projects will be structured to aid learning key theoretical concepts and techniques such as implementation of numerical techniques and simulation of fluid flow, smoke and fire or a similar transport problem related to students’ research interests.  Specific topics that will be covered are: 1) A general form of differential equation governing transport phenomena; 2) strong form of the incompressible Navier-Stokes equations governing fluid flow; 3) stability and oscillatory-solution issues with Galerkin finite element; 4) streamline-upwind/Petrov-Galerkin (SUPG) formulation; 5) residual-based variational multiscale formulation (RBVMS); 6) modeling laminar and turbulent flows; 7) finite element formulation of water, fire, smoke and viscous fluids; 8) error analysis; and 9) students will complete a project work in their area of interest / research.  PhD students registering at the 8000 level will exhibit deeper understanding by submitting / presenting a research paper based on their projects or on more advanced topics in modeling transport phenomena.

• EECE 7905 / 8905: Computational Science and Engineering 3: Fluid-Structure Interaction

Course Abstract: Multiphysics simulations are useful for modeling the behavior of coupled systems governed by two or more physical laws and their interactions.  Examples are modeling of blood flow in arteries and veins, pulmonary gas exchange and transport, hydrodynamics and aerodynamics during power generation and electro-thermal-structural interface during drug delivery.  Emphasis of this course is on computational modeling of fluid-structure interaction in a moving domain.  Topics covered will emphasize on deriving theoretical models from physical laws and constitutive equations governing fluid-structure interaction, and developing finite element procedures for modeling fluid-structure interaction in a moving domain.  PhD students registering at the 8000 level will exhibit deeper understanding by submitting / presenting a research paper based on their projects or on more advanced topics in multiphysics.

• EECE 7902 / 8902: Computational Science and Engineering 0: Scientific Computing

Course Abstract: This course is structured to review mathematical preliminaries, provide necessary foundation in scientific computing techniques at the graduate level, and to prepare for advanced computing work in scientific, research and engineering problems.  Early stage graduate students will gain experience in programming scientific computing techniques in MATLAB.  The following topics will be covered: 1) Numerical linear algebra; 2) orthogonality and orthogonalization procedures; 3) eigenvalues and eigenvectors; 4) review of initial and boundary value problems involving differential equations; 5) finite difference approach to solving initial / boundary value problems, and Lax equivalence theorem; 6) integral equations and Green’s function; 7) numerical integration procedures; 8) basic iterative methods; 9) Krylov subspace methods; 10) preconditioning techniques for iterative methods; 11) solving nonlinear equations; 12) introduction to parallel programming and message passing interface; 13) multiresolution / multigrid techniques; 14) domain decomposition methods; 15) constrained and unconstrained optimization techniques; 16) introduction to wavelets; and 17) Fast Fourier Transform and Discrete Cosine Transform.  PhD students registering at the 8000 level will exhibit deeper understanding by submitting / presenting a research paper based on their projects or on more advanced topics in scientific computing.