This page documents the use of the Python Radiative Transfer Modelling wrappers and their associated programs, originally developed by Philip Schleihauf for the Queen's Applied Sustainability Research Group in 2012. Source code is available on GitHub.
The software was developed on Ubuntu Linux 12.04 and Solaris Unix 9. It might run on any unix-compatible environment (say, Windows with CygWin, etc.), but others have not been tested.
Required software for the wrappers includes:
- SMARTS 2.9.5 installed on the system
- SBdart 2.4 installed on the system
- Python 2.6 or 2.7. Support for Python 3 is experimental.
The wrappers should be functional with those basic requirements. Further packages to make your life easier are noted in the setup and reference documentation.
Setup[edit | edit source]
Fortran[edit | edit source]
Compilers[edit | edit source]
- Installing _____
Radiative Transfer Modelling Applications[edit | edit source]
- Building SMARTS
- Building SBdart
Set Up the Environment[edit | edit source]
- Adding RTM executables to your PATH
- Install PyYaml
Python[edit | edit source]
Python 2.7[edit | edit source]
Note that most unix installations come with python pre-installed. You can check if you have it by opening up a terminal and typing `python`. If it's installed you should see something like the following:
phil@ubuntu:~$ python Python 2.7.3 (default, Aug 1 2012, 05:14:39) [GCC 4.6.3] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>>
Note the first line reporting the version number. If you have a version lower than 2.6, the system just complains
python: command not found, then you'll need to install python 2.7.
Includes directions for installation without root privileges, and specific directions for setting up on the HPCVL.
Packages[edit | edit source]
- Setting up VirtualEnv (optional, but recommended)
- Setting up Numpy or Pylab
Numpy is required for the wrappers to work, and is recommended for computing time-series data on a remote cluster. Installing the Pylab environment will provide Numpy in addition to other useful features and is recommended for desktop use.
- Getting dateutil
- Getting fmm
The python package
fmm is required to use the optimizer tools of PyRTM. PyRTM will try to install it for you if you use setuptools (ie.
PyRTM[edit | edit source]
- Installing PyRTM
Use[edit | edit source]
Overview and Concepts[edit | edit source]
- What PyRTM can and can't do
- Wrapper models: just super-powered python dictionaries
- Caching and lazy evaluation
Simple Modelling[edit | edit source]
- The RTM objects: method overview
- Model Settings
- Clear-sky global horizontal irradiance modelling with SMARTS
- Plot a cloudy day's global direct spectral model with SBdart
- Iterate over different values of Angstrom's Coefficient and plot the relationship
Optimization[edit | edit source]
- The Optimizer object
- Optimize for cloud optical depth given an measured global irradiance
Time-Series[edit | edit source]
- blah blah blah