SCALE ========= SCALE (Scalable Computing for Advanced Library and Environment), which stands for Scalable Computing for Advanced Library and Environment, is a basic library for weather and climate model of the earth and planets aimed to be widely used in various models. The SCALE library is developed with co-design by researchers of computational science and computer science. (http://scale.aics.riken.jp/) Contributing ------------ SCALE is developed by Team SCALE. License ------- - License: The BSD 2-Clause License Build ----- - set SCALE_SYS environmental variable (see the sysdef directory) % export SCALE_SYS=Linux64-gnu-ompi (example) - set NetCDF library environmental variables % export SCALE_NETCDF_INCLUDE="-I/ap/netcdf4-fortran/4.4.2/include" % export SCALE_NETCDF_LIBS="-L/ap/netcdf4-fortran/4.4.2/lib -L/ap/HDF5/1.8.16/lib -L/ap/netcdf4/4.3.3.1/lib -lnetcdff -lnetcdf" - build the execution binary files in the directory of the test cases of scale-rm e.g., % cd rootdir/scale-rm/src/ % make - generate the initial files and run the integration e.g., % cd rootdir/scale-rm/test/tutorial/ideal % ln -s ../../../../bin/scale-rm_init ./ % mpirun -n 2 ./scale-rm_init init_R20kmDX500m.conf % ln -s ../../../../bin/scale-rm ./ % mpirun -n 2 ./scale-rm run_R20kmDX500m.conf Available Option List ----- - Switches You can enable options below by setting as environment variables, for example, % export OPTION_NAME=T Switch options will be activated only when the value is "T" * SCALE_DISABLE_MPI : Disable to use MPI library (only for util tools) * SCALE_DEBUG : Activate debug option * SCALE_QUICKDEBUG : Activate quick debug option (fast optimization option + fp trap) * SCALE_USE_SINGLEFP : Use single floating-point precision * SCALE_USE_FIXEDINDEX : Use fixed size for spatial grid dimension * SCALE_ENABLE_OPENMP : Enable to use OpenMP * SCALE_ENABLE_OPENACC : Enable to use OpenACC * SCALE_USE_AGRESSIVEOPT: Use agressive options of optimization for K/FX * SCALE_DISABLE_INTELVEC: Disable to use vectorization for intel compiler * SCALE_ENABLE_PNETCDF : Enable to use parallel NetCDF * SCALE_COMPAT_NETCDF3 : Keep compatibility with NetCDF3 * SCALE_ENABLE_MATHLIB : Enable to use MATH library * SCALE_ENABLE_PAPI : Enable to use PAPI library * SCALE_DISABLE_LOCALBIN: Supress to make executables in local directory * SCALE_IGNORE_SRCDEP : Ignore source dependency at the compilation * SCALE_ENABLE_SDM : Enable to use Super Droplet Model If you want to use SCALE_USE_FIXEDINDEX, inc_index.h is required. (see scalelib/include/inc_index.h.sample) If you want to use SCALE_ENABLE_MATHLIB, please set SCALE_MATHLIB_LIBS for MATH library path. If you want to use SCALE_ENABLE_PAPI, please set SCALE_PAPI_INCLUDE and SCALE_PAPI_LIBS for PAPI library path.