Files
sfvt
Folders and files
Name | Name | Last commit date | ||
---|---|---|---|---|
parent directory.. | ||||
This code contains various advection algorithms for scalar quantities. It contains an algorithm, developed by me, based on the MPDATA algorithm, which transports particles and their properties in a way that is consistent with the advection of the category itself. This is termed the Scaled Flux Vector Transport scheme, based on some ideas from Morrison et al. (2006, MWR), but taking advantage of how MP-DATA works to simplify the coding of the scheme. Example uses: -warm bulk aerosol microphysics, which transports aerosol properties: transport the aerosol, based on the number field, transport the mass field based on the number (SFVT). -warm cloud microphysics linked to aerosol: the aerosol mass in the cloud field is a prognostic that moves with the cloud. Transport cloud, and properties using SFVT. -ice cloud microphysics, storing aspect ratio, number of monomers, rime mass: transport number of ice crystals as usual, properties using SVFT. Compilation: *you will need to install NETCDF on your system and note the directories where the library and module reside. *in the Makefile change the variables NETCDF_FOR, NETCDF_C and NETCDF_LIB to suit your system. Sometimes when compiling NETCDF you may have to install both the fortran and c versions. If you do not need to do this, set NETCDF_FOR and NETCDF_C equal to the same value. *If you install both c and fortran versions, set NETCDF_LIB to -lnetcdff *If you only need to install one version, set NETCDF_LIB to lnetcdf *Finally, once netcdf is installed and the make file is edited, type "make" to compile the code *Note, these variables are commented out in the Makefile. You may set them as environment variables in your .bashrc, or .bash_profile and the Makefile will pick them up. Doxygen pages: *self generating documentation (from the source code) can be created by typing "doxygen fortran.dxg" at the command line. *you can then view the html pages by opening the file at "doxygen/html/index.html" Running code: *run the code by typing the following: * single processor: ./main.exe namelist.in * multi processor: mpiexec -n 4 ./main.exe namelist.in Contributing development: * at the moment the code is under private repo with no development branches. Contact the code owner to contribute ideas.