Skip to content

hetland/pg2014

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pg2014

Python for Geosciences 2014

Description:

This course provides an introduction to data analysis and graphical representation of oceanographic data using the Python programming language. Topics include how to read and write data using standard formats; modern programming techniques including object oriented programming, version control systems, and the model-view-controller paradigm; plotting geophysical data using various projections, best practices in plotting, and interactive plotting.

Learning outcomes:

Students will compile and run parallel codes for use on distributed memory supercomuters, use batch scheduling of computer programs, and identify and fix problems in standard supercomputer management software. Students will create programs that use multiple processors using the Message Passing Interface. Students will analyze large data sets. Students will collaborate on a class project using standard tools such as Version Control Systems for maintaining collaborative software projects. Students will create scripts in the Python programming language to solve research problems.

Course Outline:

#####Week 1-2: Core language

Overview of the standard python programming language, standard data containers (lists, tuples, dictionaries, etc), importing packages, for/while loops, and functions.

#####Week 3-4: Numerical python

Using numpy and scipy, vector operations, and best practices for large numerical datasets.

#####Week 5: Basic plotting in python

Overview of the matplotlib plotting package.

#####Week 6-7: Plotting on the earth

The Basemap package, the proj3 library, and other geospatial applications.

#####Week 8: NetCDF

Reading and writing NetCDF files locally and over the internet.

#####Week 9-10: Object Oriented programming and data structures

Object oriented programing (OOP) techniques, and good programming practices. OOP as a surrogate for data structures.

#####Week 11: Wrapping FORTRAN code

Wrapping FORTRAN code using f2py, and other numerical performance code techniques.

#####Week 12: Creating and distributing large projects

How to create and distrubute a large python package using standard techniques, like distutils and github.

#####Week 13-14: Group project presentations.

##Get a scientific python distribution (roughly in order of awesomeness):

##Some core language python language resources:

##Look at some of the scientific python documentation:

##Some other resources:

About

Python for Geosciences 2014

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages