}}}
----
[[TOC(heading=Table of contents,depth=1,inline)]]
[[PageOutline(1,Table of contents,pullout)]]
----
# Important tools used in the IPSL climate modeling framework #
The following tools are used for all steps from setup to post processing. They must be available on the [wiki:DocBenv computing machine] (except [#Forge forge]).
The [wiki:DocBenvEcommonfiles common] account configuration files allow you to access the proper version of the tools (e.g. {{{module load}}}).
## Forge ##
The forge.ipsl.jussieu.fr machine is a forge [http://www.edgewall.org/ trac]
* Welcome page of the [wiki:Doc User guide] as TracWiki and its attached documents
* Source code archives with the [http://subversion.tigris.org/ svn] server
* Problem tracker (tickets)
## Remote and secure connections ##
* {{{ssh}}} and associated commands ({{{scp}}}, {{{rsync}}}, protocole {{{svn+ssh}}})
## Shell ##
* bash : recommended for interactive mode
* ksh : used in batch scripts
* awk gnu ({{{[g]awk}}})
* make gnu ({{{[g]make}}})
## Version control ##
* Official website: [http://subversion.apache.org/ subversion]
* Basic command: [wiki:DocKexterntoolsAsvnbasic svn]
* Online subversion manual: http://svnbook.red-bean.com/index.en.html
## C++ compilers ##
## Fortran compilers ##
To learn how to use Fortran, see e.g.
* Michel Olagnon's Fortran 90 List: http://www.ifremer.fr/ditigo/molagnon/fortran90/engfaq.html
* IDRIS training (the latest is available in English only): http://www.idris.fr/data/cours/lang/fortran/choix_doc.html
Some Fortran compilers :
* Portland
* Intel
* NAG
* gfortran
* g95
## FORTRAN libraries ##
* [http://www.unidata.ucar.edu/software/netcdf/ NetCDF4 parallel]
* [http://www.hdfgroup.org/HDF5/doc/fortran/index.html HDF5 parallel]
* MPI/OpenMP
## Generating executables ##
Default for [wiki:DocDcompil compiling] the models: [http://www.metoffice.gov.uk/research/collaboration/fcm FCM].
## Batch manager ##
* slurm and slurm {{{ccc_*}}}
* torque-maui
* !LoadLeveler
## Mail program ##
* mail[x]
## NetCDF tools ##
* [http://nco.sourceforge.net/ nco]
* [https://code.zmaw.de/projects/cdo cdo]
# Tools for analyze and visualization of NetCDF files #
* [http://ferret.wrc.noaa.gov/ ferret]
* [http://www.ncl.ucar.edu/ NCL]
* [http://meteora.ucsd.edu/~pierce/ncview_home_page.html ncview]
* [http://www.exelisvis.com/language/en-US/ProductsServices/IDL.aspx IDL]
* [http://forge.ipsl.jussieu.fr/saxo/ SAXO]
# A few tips for further reading #
## Unix ##
Google "Unix Tutorial" is a good starting point.
* Unix introduction
* Linux Documentation: http://www.tldp.org/guides.html
* Advanced Bash-Scripting guide. Mendel Cooper : http://tldp.org/LDP/abs/html/
* Bash guide for beginners.Machtelt Garrels http://tille.garrels.be/training/bash/
* Portable shell programming : http://www.gnu.org/software/autoconf/manual/autoconf.html#Portable-Shell
## Text editors ##
### Emacs ###
* Official website: http://www.gnu.org/software/emacs/
### vi and vim ###
* vim documentation : http://www.vim.org/docs.php
## Programming and scripting languages ##
### Python ###
* Python and CDAT tips: http://www.johnny-lin.com/cdat_tips/
* Python and memory management:
* problem http://www.evanjones.ca/python-memory.html
* mailing list archive: http://mail.python.org/pipermail/python-list/
* model validation tool: http://motherlode.ucar.edu:8080/thredds/cdmValidate.html