STEM / applied
Computational methods · Graduate · Math
Learning objectives from the Computational methods syllabus, grouped by unit. Click an objective for study materials.
Topics typically covered
Click a topic for the full text and related unit practice.
Graduate Computational Methods — scope drawn from open computational mathematics notes and typical US graduate computational methods syllabi.
Discretization frameworks
- Finite difference and finite volume methods — Finite difference and finite volume methods
- Finite element paradigms — Finite element paradigms
- Consistency and stability — Consistency and stability
- Convergence for discretizations — Convergence for discretizations
- CFL conditions — CFL conditions
- Von Neumann analysis (introduction) — Von Neumann analysis (introduction)
- Adaptive discretization strategies — Adaptive discretization strategies
- Meshless and particle methods (overview) — Meshless and particle methods (overview)
Linear and nonlinear solvers
- Sparse matrix storage and direct solvers — Sparse matrix storage and direct solvers
- Krylov methods — Krylov methods
- Preconditioning in practice — Preconditioning in practice
- Newton–Krylov methods for nonlinear systems — Newton–Krylov methods for nonlinear systems
- Multigrid — Multigrid
- Domain decomposition (introduction) — Domain decomposition (introduction)
- Parallel algorithms — Parallel algorithms
- Scalability basics — Scalability basics
Time integration and optimization
- Explicit and implicit time-stepping for ODE/PDE systems — Explicit and implicit time-stepping for ODE/PDE systems
- Stiff problems and A-stable methods — Stiff problems and A-stable methods
- Optimal control discretization (introduction) — Optimal control discretization (introduction)
- PDE-constrained optimization (overview) — PDE-constrained optimization (overview)
- Uncertainty quantification via sampling — Uncertainty quantification via sampling
- Surrogate models — Surrogate models
Software engineering for scientific computing
- Version control and testing — Version control and testing
- Continuous integration for research code — Continuous integration for research code
- Profiling and memory management — Profiling and memory management
- Performance tuning — Performance tuning
- GPU computing for linear algebra — GPU computing for linear algebra
- PDEs (introduction) — PDEs (introduction)
- Workflow tools — Workflow tools
- Reproducible pipelines — Reproducible pipelines
- Visualization of large-scale simulation output — Visualization of large-scale simulation output
Project-based applications
- Team projects in CFD, structural mechanics, or imaging — Team projects in CFD, structural mechanics, or imaging
- Coupling solvers in multiphysics settings — Coupling solvers in multiphysics settings
- Benchmarking against published test cases — Benchmarking against published test cases
- Documentation — Documentation
- Presentation of computational studies — Presentation of computational studies
- Ethics and validation in computational science — Ethics and validation in computational science
Learning objectives
Click an objective for study materials.
Discretization frameworks
- Finite difference and finite volume methods — Finite difference and finite volume methods
- Finite element paradigms — Finite element paradigms
- Consistency and stability — Consistency and stability
- Convergence for discretizations — Convergence for discretizations
- CFL conditions — CFL conditions
- Von Neumann analysis (introduction) — Von Neumann analysis (introduction)
- Adaptive discretization strategies — Adaptive discretization strategies
- Meshless and particle methods (overview) — Meshless and particle methods (overview)
Linear and nonlinear solvers
- Sparse matrix storage and direct solvers — Sparse matrix storage and direct solvers
- Krylov methods — Krylov methods
- Preconditioning in practice — Preconditioning in practice
- Newton–Krylov methods for nonlinear systems — Newton–Krylov methods for nonlinear systems
- Multigrid — Multigrid
- Domain decomposition (introduction) — Domain decomposition (introduction)
- Parallel algorithms — Parallel algorithms
- Scalability basics — Scalability basics
Time integration and optimization
- Explicit and implicit time-stepping for ODE/PDE systems — Explicit and implicit time-stepping for ODE/PDE systems
- Stiff problems and A-stable methods — Stiff problems and A-stable methods
- Optimal control discretization (introduction) — Optimal control discretization (introduction)
- PDE-constrained optimization (overview) — PDE-constrained optimization (overview)
- Uncertainty quantification via sampling — Uncertainty quantification via sampling
- Surrogate models — Surrogate models
Software engineering for scientific computing
- Version control and testing — Version control and testing
- Continuous integration for research code — Continuous integration for research code
- Profiling and memory management — Profiling and memory management
- Performance tuning — Performance tuning
- GPU computing for linear algebra — GPU computing for linear algebra
- PDEs (introduction) — PDEs (introduction)
- Workflow tools — Workflow tools
- Reproducible pipelines — Reproducible pipelines
Project-based applications
- Team projects in CFD, structural mechanics, or imaging — Team projects in CFD, structural mechanics, or imaging
- Coupling solvers in multiphysics settings — Coupling solvers in multiphysics settings
- Benchmarking against published test cases — Benchmarking against published test cases
- Documentation — Documentation
- Presentation of computational studies — Presentation of computational studies
- Ethics and validation in computational science — Ethics and validation in computational science
Definitions and structure
- Finite difference and finite volume methods — Finite difference and finite volume methods
- Finite element paradigms — Finite element paradigms
- Consistency and stability — Consistency and stability
- Convergence for discretizations — Convergence for discretizations
- CFL conditions — CFL conditions
Proofs and reasoning
- Von Neumann analysis (introduction) — Von Neumann analysis (introduction)
- Adaptive discretization strategies — Adaptive discretization strategies
- Meshless and particle methods (overview) — Meshless and particle methods (overview)
- Sparse matrix storage and direct solvers — Sparse matrix storage and direct solvers
- Krylov methods — Krylov methods
Abstraction and generalization
- Preconditioning in practice — Preconditioning in practice
- Newton–Krylov methods for nonlinear systems — Newton–Krylov methods for nonlinear systems
- Multigrid — Multigrid
- Domain decomposition (introduction) — Domain decomposition (introduction)
- Parallel algorithms — Parallel algorithms
Modeling and computation
- Apply finite difference and finite volume methods in engineering cont... — Apply finite difference and finite volume methods in engineering contexts
- Apply finite element paradigms in engineering contexts — Apply finite element paradigms in engineering contexts
- Apply consistency and stability in engineering contexts — Apply consistency and stability in engineering contexts
- Apply convergence for discretizations in engineering contexts — Apply convergence for discretizations in engineering contexts
- Apply cfl conditions in engineering contexts — Apply cfl conditions in engineering contexts
Data and technology
- Use software to explore computational methods problems numerically — Use software to explore computational methods problems numerically
- Interpret computational results against analytic predictions — Interpret computational results against analytic predictions
- Build spreadsheets or scripts for routine calculations — Build spreadsheets or scripts for routine calculations
- Visualize functions, fields, or datasets tied to course topics — Visualize functions, fields, or datasets tied to course topics
- Connect course methods to lab, industry, or research workflows — Connect course methods to lab, industry, or research workflows
Problem-solving practice
- Von Neumann analysis (introduction) — Von Neumann analysis (introduction)
- Adaptive discretization strategies — Adaptive discretization strategies
- Meshless and particle methods (overview) — Meshless and particle methods (overview)
- Sparse matrix storage and direct solvers — Sparse matrix storage and direct solvers
- Krylov methods — Krylov methods
Multi-Unit Problems
Course-level sets that combine skills across study units (coming soon).
Browse Multi-Unit ProblemsWhat each unit includes
Open a unit below for full materials. Typical resources:
- Study guide
- Exam Strategy
- Common Mistakes
- Worksheets
- Word problems
- Mixed Practice
- Multi-Unit Problems
- Review
- Practice test
- Answer key
Study units
Each unit includes a study guide, worksheets, review, practice test, and answer key. One unit is free; subscribe for the full class.
- Discretization frameworks
Finite difference and finite volume methods
Coming soon - Linear and nonlinear solvers
Sparse matrix storage and direct solvers
Coming soon - Time integration and optimization
Explicit and implicit time-stepping for ODE/PDE systems
Coming soon - Software engineering for scientific computing
Version control and testing
Coming soon - Project-based applications
Team projects in CFD, structural mechanics, or imaging
Coming soon
Pricing calculator
Choose materials, tutoring, or both — or book a single session as needed. Customize your plan on the subscribe page.
$1,162 · Computational methods · 18 tutoring hrs
Study guides, worksheets, reviews, practice tests, and answer keys for 1 class. 18 tutoring hours (1 hr / week · semester). Bundle discount applied vs buying separately. Pay in full via Zelle.