access_BomAccessDocumentation_bom conda_nwptools_py_nwptools_py2_installation - ACCESS-NRI/accessdev-Trac-archive GitHub Wiki
NWPTOOLS_PY2
Installing Env nwptools_py2 on Gadi
Note this env used to be named as nwp_pytools27
on Raijin.
Installing packages from the environment file
Load the conda module
$>module use /projects/access/modules
$>module load miniconda/4.6
$>conda --version
conda 4.6.14
Go to the folder of the environment file and produce the env
cd /projects/access/apps/miniconda/yml
conda env create -f nwptools_py2.201911.yml
The env will be produced by default in the location of /projects/access/apps/miniconda/4.6/envs/
and given the name as nwptools_py2.201911
which is specified in the env file nwptools_py2.201911.yml
.
Installing mule and um-utils
mule
and um-utils
need to installed separately. Download the mule-2017.8.1
and um_utils-2017.8.1
from the following location
$>wget https://github.com/SciTools/mule/releases/download/2017.08.1/mule-2017.08.1.tar.gz
$>wget https://github.com/SciTools/um_utils/releases/download/2017.08.1/um_utils-2017.08.1.tar.gz
You need to untar/unzip the files to a specified location.
Install the two packages
$>cd $PATH_TO_mule-2017.8.1
$>module use /projects/access/modules
$>module load miniconda/4.6
$>conda activate nwptools_py2.201911
$>python --version
Python 2.7.16 :: Anaconda, Inc.
$>python setup.py install
/projects/access/apps/miniconda/4.6/envs/nwptools_py2.201911/lib/python2.7/site-packages/setuptools/dist.py:472: UserWarning: Normalizing '2017.08.1' to '2017.8.1'
normalized_version,
running install
...
Installed /scratch/access/apps/miniconda/4.6/envs/nwptools_py2.201911/lib/python2.7/site-packages/mule-2017.8.1-py2.7.egg
Processing dependencies for mule==2017.8.1
Finished processing dependencies for mule==2017.8.1
$>cd $PATH_TO_um-utils-2017.8.1
$>python setup.py install
/projects/access/apps/miniconda/4.6/envs/nwptools_py2.201911/lib/python2.7/site-packages/setuptools/dist.py:472: UserWarning: Normalizing '2017.08.1' to '2017.8.1'
normalized_version,
running install
...
Installed /scratch/access/apps/miniconda/4.6/envs/nwptools_py2.201911/lib/python2.7/site-packages/um_utils-2017.8.1-py2.7.egg
Processing dependencies for um-utils==2017.8.1
Finished processing dependencies for um-utils==2017.8.1
Fixing cartopy pre-loaded path
$>cd /projects/access/apps/miniconda/4.6/envs/nwptools_py2.201911/lib/python2.7/site-packages/cartopy
update __init__.py
config = {'pre_existing_data_dir': '',
'data_dir': _data_dir,
'repo_data_dir': os.path.join(os.path.dirname(__file__), 'data'),
'downloaders': {},
}
as
config = {'pre_existing_data_dir': '/projects/access/bom/shared_data/cartopy/data',
'data_dir': _data_dir,
'repo_data_dir': os.path.join(os.path.dirname(__file__), 'data'),
'downloaders': {},
}
Fixing basemap PROJ_LIB path
Details see the https://github.com/matplotlib/basemap/issues/419.
$>cd /projects/access/apps/miniconda/4.6/envs/nwptools_py2.201911/lib/python2.7/site-packages/mpl_toolkits/basemap/
# open the file __init__.py: add the following on line 155:
os.environ['PROJ_LIB'] = '/projects/access/apps/miniconda/4.6/envs/nwptools_py2.201911/share/proj'
# just above the following line
pyproj_datadir = os.environ['PROJ_LIB']
Check the list in the environment
$>module use /projects/access/modules
$>module load miniconda/4.6
$>conda activate nwptools_py2.201911
(nwptools_py2.201911)$>conda list
Set up the module
$>cd /projects/access/modules
$>mkdir -p nwptools_py2
$>cd nwptools_py2
$>touch 27201911
The module file27201911
is as
#%Module
source /opt/Modules/extensions/extensions.tcl
set name "nwptools_py2"
set version "201911"
set install-contact "Wenming Lu <[email protected]>"
set install-date "2019-11-27"
set help "nwptools_py2"
set url https://access-svn.nci.org.au/svn/
set conda_ver 4.6
set prefix "/projects/access/apps/miniconda/${conda_ver}/envs/"
prepend-path PYTHONPATH /projects/access/apps/miniconda/latest/envs/esmf_7.1/lib/python2.7/site-packages
prepend-path PATH "$prefix/${name}.${version}/bin"
# Add line break after docommon to avoid warnings from module switch
source /projects/access/modules/common
Note that an external ESMF
is linked to make the module work within nwptools_py2.201911
.
Test
$>module use /projects/access/modules
$>module load nwptools_py2/201911
python
Python 2.7.16 |Anaconda, Inc.| (default, Mar 14 2019, 21:00:58)
[GCC 7.3.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import iris
import mule/projects/access/apps/miniconda/4.6/envs/nwptools_py2.201911/lib/python2.7/site-packages/iris/fileformats/grib/__init__.py:59: IrisDeprecation: The module iris.fileformats.grib is deprecated since v1.10. Please install the package 'iris_grib' package instead.
"The module iris.fileformats.grib is deprecated since v1.10. "
>>> import mule
>>> import netcdftime
>>> import um_utils
>>> import ESMF
>>> import numpy
>>> import scipy
>>> import cartopy
>>> import matplotlib
>>> import mpl_toolkits
>>> import mpl_toolkits.basemap
>>>
More complicated tests will be done by Vinod.
Issues
import gdal fails