The esys-escript package is a programming environment for implementing mathematical models in python using the finite element method (FEM). It is very easy to run at all scales - from desktop computers through to highly parallel supercomputers without changes. Application areas for escript include earth mantle convection, geophysical inversion, earthquakes, porous media flow, reactive transport, plate subduction, erosion, and tsunamis.
The current version of escript deployed under project up99 is 5.10. It is configured with the following features:
Escript revision 1658965877 Install prefix: /g/data/up99/apps/escript/5.10 Python: /g/data/up99/apps/escript/5.10/bin/python3 (Version 3.7.7) boost: ['/apps/boost/1.72.0/include', '/apps/boost/1.72.0/lib/GNU'] (Version 1.72.0) boost numpy: YES trilinos: ['/g/data/up99/apps/trilinos/13.0.1/include', '/g/data/up99/apps/trilinos/13.0.1/lib'] (Version 13.0.1) numpy: YES (without headers) MPI: OPENMPI (Version 4.1.2) ParMETIS: ['/g/data/up99/apps/escript/deplibs_a/include', '/g/data/up99/apps/escript/deplibs_a/lib'] (Version 4.0.3) gmsh: YES Solver library: paso, trilinos Direct solver: YES (mkl, umfpack, trilinos) domains: dudley, finley, ripley, speckley netcdf: YES (4 + 3) weipa: YES openmp: YES cppunit: YES gdal: YES mkl: YES pyproj: YES scipy: YES silo: YES sympy: YES umfpack: YES visit: YES |
To access esys-escript, you first need to join project up99 and once you are a member of this project, you can then run the following commands on Gadi to load in the escript module:
$ module use /g/data/up99/modulefiles $ module load escript/5.10
You can find escript examples here and they are also available under ${escript_root}/examples.
An example PBS job script for running escript is given below:
#!/bin/bash #PBS -q normalsr #PBS -P <compute_project_code> #PBS -l ncpus=104 #PBS -l mem=400GB #PBS -l jobfs=100GB #PBS -l walltime=00:05:00 #PBS -l storage=gdata/up99+scratch/<project_code> #PBS -l wd #PBS -N escript_test # Must include `#PBS -l storage=gdata/up99+scratch/ab00` if the job # needs access to `/scratch/ab00/` and the escript module. # Details on: # https://opus.nci.org.au/display/Help/PBS+Directives+Explained module use /g/data/up99/modulefiles module load escript/5.10 cp -r ${ESCRIPT_ROOT}/examples . cd examples/inversion run-escript -n 1 -t 2 -p 52 mag_netcdf.py >& output.log