access_UtilsWG_UtilWgDocs_canopy_height_um - ACCESS-NRI/accessdev-Trac-archive GitHub Wiki

USER Guide: Canopy_Height on NCI raijin

module load ancil-utils

#use the default TIF file, /projects/access/apps/ancil-utils/1.0.0/canopy_height/Simard_Pinto_3DGlobalVeg_JGR.tif
ancil_simardCanHT.py $VFUNC $VFRAC -o $CANOPYHT -lsm $LSM --min_height=14.0 --urban_tree=8.0 --urban_crit=0.05

Please note that $VFUNC is veg.func file, $VFRAC is veg.frac file, $CANOPYHT is the output CANOPY_HT file and $LSM is the Land/Sea Mask file, qrparm.mask.

#if use your own spcified TIF
TIF=PATH_TO_TIF
ancil_simardCanHT.py $TIF $VFUNC $VFRAC -o $CANOPYHT -lsm $LSM --min_height=14.0 --urban_tree=8.0 --urban_crit=0.05

You can view the full help message by

ancil_simardCanHT.py -h

usage: ancil_simardCanHT.py [-h] --target-lsm TARGET_LSM --output OUTPUT
                            [--ants-config ANTS_CONFIG]
                            [--downscale DOWNSCALE] [--min_height MIN_HEIGHT]
                            [--urban_tree URBAN_TREE]
                            [--urban_crit URBAN_CRIT]
                            sources [sources ...]

Canopy Height
*************
Currently CAP generates canopy heights based on IGBP land-cover types. 
The Bureau of Meteorology uses satellite derived tree heights for the canopy heights 
of Broadleaf (BL) and Needleleaf (NL) tree PFTs. 

Some science documentation is provided by
        Improved numerical weather predictions by using optimised urban model parameter values and satellite derived tree heights
        I Dharssi, P. Steinle and J. Fernon
        http://www.mssanz.org.au/modsim2015/M4/dharssi.pdf
        21st International Congress on Modelling and Simulation, Gold Coast, Australia, 29 Nov to 4 Dec 2015

Ticket 544 describes the development of Python code using ANTS to create improved Canopy height ancillaries.

Steps:
1) Read input data
        i)   Land/Sea mask on target grid
        ii)  Canopy heights and LAI* on target grid, generated by CAP
        iii) Landcover fractions on target grid
        iv)  Simard et al forest canopy height data from a GeoTIFF
2) Convert the Simard et al data to an Iris Cube object
3) Regrid the Simard et al Cube object to the target grid
4) Fill in missing data using different minimum values for urban and non-urban points
5) Overwrite the canopy heights of the BL and NL trees in the CAP ancillaries
6) Write out the Simard et al/CAP hybrid canopy heights and LAI*

*Note that the LAI (Leaf Area Index) is unchanged. 

positional arguments:
  sources               Source data path(s).

Additional arguments:
  -h, --help            show this help message and exit
  --target-lsm TARGET_LSM, -lsm TARGET_LSM
                        Path to the land sea mask.
  --output OUTPUT, -o OUTPUT
                        Output filepath.
  --ants-config ANTS_CONFIG
                        Configuration path.
  --downscale DOWNSCALE
                        Downscaling of Simard et al input data. Default value = 8
  --min_height MIN_HEIGHT
                        Minimum tree height, used to fillin missing data in
                        Simard et al input data. Default value = 10
  --urban_tree URBAN_TREE
                        Urban tree height, used to fillin data in Simard et al
                        input data. Default value = 6
  --urban_crit URBAN_CRIT
                        Threshold to define urban area, used to fillin data in
                        Simard et al input data. Default value = 0.05