Difference between revisions of "Tools"

From WikiROMS
Jump to navigationJump to search
Line 1: Line 1:
== Python ==
Python is a scripting language that is easy to learn and use (like MATLAB), is object-oriented and very powerful, and is rapidly becoming a standard language for scientific scripting. Many scientists are developing packages and toolboxes in python, for example www-pcmdi.llnl.gov/software-portal/cdat, www.pyngl.ucar.edu, and countless other, smaller packages. Many utilities are being developed with python hooks build in (like VTK, a 3D visualization library). Python has all of the basic tools required for working with numerical model data, in particular NetCDF support. Python can also be used as a wrapper for C and FORTRAN code, so you can have the speed of FORTRAN for number crunching with the ease of a high level language for data I/O. Finally, python is free and open source, and is available on all major computer platforms.
Python is a scripting language that is easy to learn and use (like MATLAB), is object-oriented and very powerful, and is rapidly becoming a standard language for scientific scripting. Many scientists are developing packages and toolboxes in python, for example www-pcmdi.llnl.gov/software-portal/cdat, www.pyngl.ucar.edu, and countless other, smaller packages. Many utilities are being developed with python hooks build in (like VTK, a 3D visualization library). Python has all of the basic tools required for working with numerical model data, in particular NetCDF support. Python can also be used as a wrapper for C and FORTRAN code, so you can have the speed of FORTRAN for number crunching with the ease of a high level language for data I/O. Finally, python is free and open source, and is available on all major computer platforms.


Line 10: Line 15:
You can find a number of scripts designed to work explicitly with ROMS files at http://pong.tamu.edu/svn/python/trunk/.  You can either browse online, or download the entire reposatory with subversion (http://subversion.tigris.org/).  Check out the repository with:
You can find a number of scripts designed to work explicitly with ROMS files at http://pong.tamu.edu/svn/python/trunk/.  You can either browse online, or download the entire reposatory with subversion (http://subversion.tigris.org/).  Check out the repository with:


svn co http://pong.tamu.edu/svn/python/trunk/ python-roms
$ svn co http://pong.tamu.edu/svn/python/trunk/ python-roms


Install each of the packages by going to the top of the directory, say the 'roms' package for the basic ROMS tools by
Install each of the packages by going to the top of the directory, say the 'roms' package for the basic ROMS tools by


cd python-roms/roms
$ cd python-roms/roms
python setup.py build
 
sudo python setup.py install
$ python setup.py build
 
$ sudo python setup.py install

Revision as of 22:18, 6 November 2006


Python

Python is a scripting language that is easy to learn and use (like MATLAB), is object-oriented and very powerful, and is rapidly becoming a standard language for scientific scripting. Many scientists are developing packages and toolboxes in python, for example www-pcmdi.llnl.gov/software-portal/cdat, www.pyngl.ucar.edu, and countless other, smaller packages. Many utilities are being developed with python hooks build in (like VTK, a 3D visualization library). Python has all of the basic tools required for working with numerical model data, in particular NetCDF support. Python can also be used as a wrapper for C and FORTRAN code, so you can have the speed of FORTRAN for number crunching with the ease of a high level language for data I/O. Finally, python is free and open source, and is available on all major computer platforms.

A good place to learn about scientific computing using Python is http://www.scipy.org. You will need a few packages installed in order to work with ROMS output in Python:

numpy: http://numpy.scipy.org (basic numeric array mathematics) matplotlib: http://matplotlib.sourceforge.net (and the basemap toolkit for geospatial plotting) python-netcdf4: http://code.google.com/p/netcdf4-python/ (follow the install directions *exactly)


You can find a number of scripts designed to work explicitly with ROMS files at http://pong.tamu.edu/svn/python/trunk/. You can either browse online, or download the entire reposatory with subversion (http://subversion.tigris.org/). Check out the repository with:

$ svn co http://pong.tamu.edu/svn/python/trunk/ python-roms

Install each of the packages by going to the top of the directory, say the 'roms' package for the basic ROMS tools by

$ cd python-roms/roms

$ python setup.py build

$ sudo python setup.py install