Course Slides
HTML presentations for courses taught by the Chapman Research Group.
ATOC 4815/5815: Scientific Programming, Data Analysis and Visualization
Spring 2026
- Week 0: Course Introduction - Welcome, syllabus, AI/LLM policy, setup, and getting started
- Demo Lecture: Python & Data Analysis - Introduction to course structure and basic Python
- Week 1: Python Fundamentals - Variables, types, strings, lists, dictionaries, control flow, loops, and functions
- Week 2: Functions and Reusable Code - Advanced functions, error handling, file I/O, and object-oriented programming
- Week 3: NumPy and Basic Plotting - NumPy arrays, vectorized operations, matplotlib basics, and data visualization
- Week 4: Numerical Integration & Explicit Euler - Solving ODEs with Forward Euler, stability analysis, and Lorenz63
-
Week 5: Midterm Post-Test Review - The date, nested loops, and why integration needs a loop - Week 5.5: Linking Python Scripts Together - Modules, imports,
if __name__ == "__main__", and multi-file project structure -
Week 6: Git for Scientists - 5 commands to survive: clone, status, add, commit, push (practice repo) Collaboration - Branches, merging, pull requests, and .gitignore - Week 7: Tabular Data & Pandas - Series and DataFrames, time series analysis, resampling, rolling windows, and aggregation
- Week 8: Multi-Dimensional Data with xarray - NetCDF files, DataArrays, Datasets, coordinate-based selection, climatologies, and gridded data analysis
- Week 9: Python Parallelization - GIL, vectorization, multiprocessing, concurrent.futures, Dask, and best practices for making code faster
- Week 10: Packaging Your Python Code - pyproject.toml, pip install, entry points, TestPyPI, conda-forge, and making your code installable
More slides will be added throughout the semester
Course Materials
- Course Syllabus (PDF)
- Final Project Guidelines - Graduate Students
- Git for Scientific Software Development - Version control for atmospheric science (adapted from Jack Atkinson)
- IDE Setup Guide - Mac (PDF)
- IDE Setup Guide - Windows (PDF)
- Conda Environment File (YML)
ATOC 5860: Objective Data Analysis Laboratory
Fall 2025
Slides coming soon
Creating Your Own Slides
These slides are created using Quarto with reveal.js. The source files (.qmd) can be found in the course GitHub repositories.
For Students
If you’d like to run the code examples from the slides:
- Download the
.qmdsource file - Install Quarto
- Render with:
quarto render filename.qmd
Key Features
- Live code examples: Execute Python directly in slides
- Math equations: LaTeX support for atmospheric equations
- Interactive navigation: Arrow keys, overview mode (ESC), speaker notes (S)
- PDF export: Print to PDF for offline viewing