/ATMOS_6910_2018

Environmental Programming, Atmospheric Science

Primary LanguagePythonMIT LicenseMIT

ATMOS 6910, Fall 2018

Environmental Programming, Atmospheric Science

University of Utah

Fall Semester 2018; second half MWF, 9:40AM-10:30AM; WBB711

Instructor Email Phone Number Office Hours Office Location
Chris Galli chris.galli@utah.edu 801-647-2263 by appointment 482 INSCC
Sally Benson sally.benson@utah.edu 801-859-1644 by appointment 603 WBB

Copy of the Syllabus can be found here

Course Description

Environmental scientists need the ability to acquire, process and display environmental data, imagery, and gridded fields. This course is designed to develop the skills necessary to solve physically-based problems relating to atmospheric science data sets. After a review of basic programming concepts, students will develop code to solve problems using programming languages and data sources relevant to their ongoing or future research. The course is particularly relevant for first-year graduate students as they begin research leading towards their thesis proposal.

It is assumed students have exposure and practical experience working with a common programming language used within physical sciences, such as Python, MatLab, or IDL. There is no requirement for using one language over another. However, it is important the student is comfortable working in a language that has available module/API bindings to common data libraries; specifically, NetCDF4, HDF, and CSV parsing.

Course Outcomes

By the end of this course, you will be able to:

  • Write computer programs for analyzing data.
  • Acquire and use data in multiple file formats.
  • Create custom ways to display data.

Check out CHPC's Intro to Python Series

Ongoing class links

October 15, Lecture 1: Introduction

October 17, Lecture 2: Data types

October 19, Lecture 3: Basic programs and arrays

October 22, Lecture 4: I/O part I

October 24, Lecture 6: I/O NetCDF and HDF

October 26, Lecture 6: I/O part II

October 29, Lecture 7: Final Project Review

October 31, Lecture 8: Basic Control Structures

November 2, Lecture 9: Arrays part I

November 5, Lecture 10: Code design and more arrays

November 7, Project reviews. Approach discussions. Questions.

November 9, Lecture 11: Arrays part II

November 12, Lecture 12: Optimization

November 14, Lecture 13: Numerical Applications

November 16, Lecture 14: Intro to debugging