In my line of research, I have also developed a few other packages that I think would be useful to the wider community. This include ERApkg, which is used to download, and analyse reanalysis data, and EQ, which can be used to conduct forward modelling of earthquakes based on sparse GPS data.
Developed by: Nathanael Z. Wong
Repository: ERApkg (GitHub) (updated 4 Aug 2019)
Downloading of reanalysis data can be tricky. Ori Adam has released GOAT (Geophysical Observational Analysis Tool), which is a MATLAB package to manage geophysical data using a standardised data-management interface. In a similar manner, I have created ERApkg, which is a MATLAB package specifically meant to download, compile, perform simple calculations on, and analyse the latest ECMWF reanalysis data, specifically ERA-Interim and ERA5. More details can be found in the GitHub repository. I am also interested in developing a similar Julia package.
Developed by: Nathanael Z. Wong, Lujia Feng
Repository: EQ (GitHub) (updated xx xxx 2019)
As part of a project on modelling moderate earthquakes in Sumatra using sparse GPS data, I created EQ, which is a MATLAB package designed to automate the forward modelling of seismic events using spare GPS data. Though I specifically used it for Sumatran earthquakes, with modification of the input data (especially the slab data), it is possible to use the EQ code for events in other regions around the globe. It is also possible to use EQ to model strike-slip events or events that do not occur along a megathrust fault. The outputs from this model are designed to be read and plotted with GMT.
Developed by: Nathanael Z. Wong
Repository: ClimateSatellite.jl (GitHub) (updated Oct 2019)
As part of my projects that concern precipitation and water vapour in the atmosphere, satellite-derived rainfall-related products such as GPM (Global Precipitation Mission) and MIMIC-TPW2 are extremely important in this line of research. As such, I am developing ClimateSatellite.jl, which is a Julia package that downloads relevant satellite climate products into a standard filing system, allowing for easy retrieval and standardized data processing.
Developed by: Nathanael Z. Wong
Repository: ClimateTools.jl (GitHub) (updated Oct 2019)
Throughout my years of research, I've noticed that there are a lot of functions that can be simply automated, such as in the generation of directories for a given date, or in mapping contour variables on a global map. ClimateTools.jl aims to simplify and automate many of these processes in Julia, especially since Julia has yet reach Python or MATLAB's standard in terms of mapping. Many of the modules in ClimateTools.jl requires the Conda package functionality and various Python modules as dictated by the purpose of the function.
In my research work that requires modelling of the global atmosphere, I currently use Isca (code), a GCM framework created in Python by the University of Exeter based on the GFDL dynamical core, to create idealised simulations of monsoon weather and its interactions with idealised islands and continental landmasses. Isca is part of the Flexible Modelling System (FMS) and therefore is free to download for personal use and research (as I did). All credit for the Isca GCM source code and development goes to the Isca development team of the University of Exeter (the Python framework), and Geophysical Fluid Dynamics Lab (the dynamical core).
Originally developed by: Vallis et al. (2018) from the University of Exeter (paper)
Original Source: Website | Original Code (GitHub)
I have made my own fork of the original source code, found in Isca_src. However, due to the nature of the way I have reorganized my experiments, I keep my experiments in a separate repository Isca_exp that allows me to compile the source code separately, and has several different types of features available. Lastly, I also have created a MATLAB package, Isca_pkg, that can perform simple compilation, calculation and analysis of various parameters of interest. All links to the respective repositories are provided below.