Software: Difference between revisions

From imk-tro wiki
Jump to navigation Jump to search
(Created page with " == Essential Software == The following is a list of essential software packages and the links to their web pages: Many of these can be installed using anaconda [https://www....")
 
mNo edit summary
Line 29: Line 29:
'''Data analysis''':
'''Data analysis''':
*NumPy [https://numpy.org/]
*NumPy [https://numpy.org/]
*xarray [https://docs.xarray.dev/en/stable/#]
*xarray [https://docs.xarray.dev/en/stable/#], easy handling of large nc files.
*pandas [https://pandas.pydata.org/]
*pandas [https://pandas.pydata.org/]
*SciPy [https://scipy.org/]
*SciPy [https://scipy.org/]
Line 58: Line 58:
* Paraview for 3D rendering [https://www.paraview.org/], note this one requires more computational power and should ideally be run through a supercomputer via VNC client.
* Paraview for 3D rendering [https://www.paraview.org/], note this one requires more computational power and should ideally be run through a supercomputer via VNC client.
* Cartopy (python package) for maps [https://scitools.org.uk/cartopy/docs/latest/]
* Cartopy (python package) for maps [https://scitools.org.uk/cartopy/docs/latest/]
* Matplotlib (standard python package) [https://matplotlib.org/]

Revision as of 10:55, 26 May 2023

Essential Software

The following is a list of essential software packages and the links to their web pages:

Many of these can be installed using anaconda [1].

CDO

https://code.mpimet.mpg.de/projects/cdo/.

Note that CDO has a lot of built-in functions that are not well documented, but details about these can be usually found in their discussion forums, https://code.mpimet.mpg.de/projects/cdo/boards.

Python

Instructions on how to download and install Python for all OSs can be found at: https://www.python.org/.

It is usually recommended to use the Anaconda distribution to install Python. Details on how to do this are here: https://www.anaconda.com/

Python can be combined with a good Integrated Development Environment (IDE) of your choice. All existing IDEs have their pros and cons. Some of the most popular IDEs are the following:

Python boasts a large number of packages. Some of the most used packages for manipulating large files in NetCDF, HDF5 or CSV formats are the following:

Data analysis:

  • NumPy [9]
  • xarray [10], easy handling of large nc files.
  • pandas [11]
  • SciPy [12]

Parallel computing, Machine learning, Deep learning etc.:

Data visualization:

Most of these packages are distributed through either Conda [23] or Pip [24].

On top of these, various users also create packages tuned for specific purposes. They are usually made public through GitHub [25].

Various forums exist for the sole purpose of clearing specific questions about coding. One such forum is stackoverflow[26]. Medium [27] is also a good source for reading up about new ideas and tools in Python and other languages.

Visualisation

The visualisation of "nc" files can be made easier using:

  • NcView [28]
  • Panoply [29]
  • Paraview for 3D rendering [30], note this one requires more computational power and should ideally be run through a supercomputer via VNC client.
  • Cartopy (python package) for maps [31]
  • Matplotlib (standard python package) [32]