Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Lecture Library

COMP 521 | Course blocks, projects, and live class materials

San Diego State University

Each lecture is the canonical record of what we build together in class. It is organized by course block and project, because a method is easier to learn when its scientific question, computational choices, and evidence are visible in one place.

Lectures are not replacement textbook chapters. Use the linked reading for a slower, more complete treatment; use the lecture page to recover the question, worked examples, predictions, and project connection from a specific class.

Block 1 · Scientific Programming & Transit Model

Project connection: Project 1, a restartable notebook that models the fraction of stellar light visible during a transit.

LectureIn-class questionBuild toward
Lecture 1: Python FoundationsHow do mathematics, code, software environments, and finite-precision numbers connect?vocabulary, legible calculations, numerical judgment
Lecture 2: Procedures, Data, and Reusable CalculationsHow does a stated scientific rule become a testable procedure for many observations?Grade Calculator implementation and first NumPy arrays
Lecture 3: Function Interfaces and Reusable AnalysisHow do arguments, unpacking, and return design keep a reusable calculation clear at every call site?COMP 521 Course-Grade Calculator Lab
Lecture 4: NumPy, Matplotlib, and Readable EvidenceHow do paired arrays, vectorized models, and a labeled figure support a bounded claim?array shapes, masks, broadcasting, and figure-based reasoning

Useful background: Exoplanets, transits, light curves, and the uniform-source model.

Block 2 · Numerical Integration

How do we turn a continuous mathematical model into a finite calculation, and how do we decide whether its accuracy is sufficient?

LectureIn-class questionBuild toward
Lecture 5: Approximation, Errors, and QuadratureHow do Taylor approximations and floating-point arithmetic shape numerical error?absolute and relative tolerances, rectangle quadrature, and an error bound
Lecture 6: Trapezoids, Simpson, Modules, and TestsHow do better local approximations and meaningful tests improve an integration method?trapezoid and Simpson rules, reusable modules, and the sine rectangle lab

Watch and review: Quadrature animations — integration geometry and adaptive refinement.

Read alongside the lectures: numerical errors, Taylor series, and quadrature. These methods support Project 2: integration and convergence investigations.

Block 3 · Root Finding & Stellar Inference

Project connection: Project 3, a root-finding library and stellar-inference notebook. Lecture 7 bridges adaptive integration and root finding.

LectureIn-class questionBuild toward
Lecture 7: Approximations, Adaptivity, and RootsHow do local models guide adaptive integration and root finding?quadrature recall, Simpson error estimates, bisection bounds, and Newton updates
Lecture 8: Finite Differences and Root-Finding ToolsWhat evidence supports a solver’s stopping decision?finite differences, secant updates, and a tested bisection module
Lecture 9: Trustworthy Numerical AnswersWhen do an accepted step, a small residual, or a refined integral support an answer?line searches, Jacobians, damping, advanced quadrature, and convergence evidence
Lecture 10: Modular Design and OOPHow do functions and variables become methods and attributes in a class?Rectangle, scientific classes, and Project 3 Part 5

Lectures 9 and 10 continue this lecture sequence in Week 5. Lecture 10 leads into the Project 3 Part 5 lab.

Watch and review: Root-finding animations — bisection, Newton, and secant steps.

Read alongside the lectures: root finding and robust computing.

Software Engineering for Scientists

Software Engineering for Scientists provides the slides, handout, and companion readings for contracts, independent checks, systematic debugging, and reproducible results. Apply the examples to your current project; its brief owns the required interface and deliverables.

Block 4 · ODE Methods & Exoplanet Interiors

Open the Block 4 lecture overview for the ODE and Pandas slides, handouts, data downloads, and links to the existing ODE readings.

Lecture 11: Ordinary Differential Equations provides the ODE slides and worked handout, from Euler and Runge–Kutta methods to stability, conservation, and planetary pressure balance.

Lecture 12: Pandas and Exploratory Data Analysis provides a 30-minute introduction and worked handout. Students install Pandas, create their own notebook, and explore the saved NASA exoplanet CSV.

Block 5 · Real Data & Model Fitting

Block 5 lecture overview connects the lectures and readings. Lecture 13: Measurements, Probability, and Geometry connects noisy scientific measurements to probability, data matrices, and projection. The lecture page links the slides, worked handout, and primer.

Future course blocks