We support our users who study geosciences by maintaining Julia packages that are generally applicable across the geospatial and geosciences domains in this Gadi module.
The juliaGeo 2022.03 release has 28 packages, including:
- ArchGDAL
- CFTime
- CoordinateTransformations
- GADM
- GDAL
- GMT
- GeoArrays
- GeoDataFrames
- GeoDatasets
- GeoInterface
- GeoJSON
- GeoStats
- Geodesy
- LasIO
- LazIO
- LibGEOS
- LibSpatialIndex
- NCDatasets
- NearestNeighbors
- NetCDF
- OpenStreetMapX
- Proj4
- RasterDataSources
- Rasters
- RegionTrees
- Shapefile
- SpatialIndexing
- Turf
The module is installed as /g/data/up99/apps/juliaGeo/2022.03 with Julia/1.7.1 and tested with no errors.
Usage
To work with packages installed in the module juliaGeo/2022.03 on Gadi, try the following
module use /g/data/up99/modulefiles module load juliaGeo/2022.03 julia _ _ _ _(_)_ | Documentation: https://docs.julialang.org (_) | (_) (_) | _ _ _| |_ __ _ | Type "?" for help, "]?" for Pkg help. | | | | | | |/ _` | | | | |_| | | | (_| | | Version 1.7.1 (2021-12-22) _/ |\__'_|_|_|\__'_| | |__/ | julia> using GDAL Julia> landsat = "https://dapds00.nci.org.au/thredds/fileServer/xu18/ga_ls8c_ard_3/092/073/2017/05/29/ga_ls8c_nbar_3-0-0_092073_2017-05-29_final_band06.tif" julia> ds_landsat = GDAL.gdalopen(url,GDAL.GA_ReadOnly) Julia> GDAL.gdalclose(ds_landsat)
We define our current list of packages maintained in the juliaGeo module following the list in juliaGeo. There are also relevant packages in the other ecosystems JuliaClimate[https://juliaclimate.org], JuliaGeometry[https://github.com/JuliaGeometry] and JuliaImages [https://juliaimages.org/stable/]. If you want to install more packages required by your workflow, try the following.
$ module use /g/data/up99/modulefiles $ module load juliaGeo/2022.03 $ export JULIA_PROJECT=/scratch/$PROJECT/$USER/.julia $ export JULIA_DEPOT_PATH=$JULIA_PROJECT:$JULIA_DEPOT_PATH $ julia julia> using Pkg _ _ _ _(_)_ | Documentation: https://docs.julialang.org (_) | (_) (_) | _ _ _| |_ __ _ | Type "?" for help, "]?" for Pkg help. | | | | | | |/ _` | | | | |_| | | | (_| | | Version 1.7.1 (2021-12-22) _/ |\__'_|_|_|\__'_| | |__/ | julia> Pkg.add("GeoRegions") Resolving package versions... Installed Distances ─ v0.10.7 Updating `/scratch/z00/yxs900/.julia/Project.toml` [b4f34e82] + Distances v0.10.7 Updating `/scratch/z00/yxs900/.julia/Manifest.toml` [b4f34e82] + Distances v0.10.7 Precompiling project... 1 dependency successfully precompiled in 1 seconds (49 already precompiled)
Tests
- ArchGDAL: 5 Fails due to accuracy. 0.7.4 failed, 0.8.2 pass
- RasterDataSources: use "gunzip" instead of "uncompress" in the code src/awap/awap.jl
Examples
Here is an example of using packages in the module juliaGeo/2022.03 to load data from ERA5 dataset and plot it with the reference to the shorelines between land/Antarctica ice and ocean.
using NCDatasets fn = "/g/data/rt52/era5/single-levels/monthly-averaged/tcwv/2010/tcwv_era5_moda_sfc_20101201-20101231.nc" ds = NCDataset(fn); lon = ds["longitude"][:]; lat = ds["latitude"][:]; pwv = ds["tcwv"][:,:,1]*1; close(ds) using GeoDatasets borders = GeoDatasets.gshhg('c',[1,5]); using Plots ENV["GKSwstype"] = "100" p1=contour(lon,reverse(lat),reverse(pwv',dims=1),fill=true,linewidth=0,levels=0:3:60,seriescolor=:viridis); plot!(p1,borders,c=:black,leg=false,xlims=(-180,180),ylims=(-90,90)); savefig("pmap.png")