Average rainfall 2001-2016, global tropics

Map: Average rainfall 2001-2016, global tropics

Transfer VWB Framework

Thomas Gumbricht bio photo By Thomas Gumbricht

Introduction

This post shows how to transfer Vertical Water Balance data created using Karttur´s GeoImagine Framework to another machine with the Framework installed but without the VWB data.

Prerequisites

You must have setup the Karttur’s GeoImagine Framework as described in earlier posts. You must also have a copy of the VWB dataset produced by the Framework itself.

Transfer VWB data

You must decide at which processing stage you want to transfer the data. In general you should chose the stage so that all the data you are interested in are included in either that, or any subsequent, step in the processing chain. In this example you will transfer the land masked monthly VWB (step 2.0 in the post Vertical Water Balance).

Copy data folder

After deciding which composition to use as starting point, you must copy the folder from the existing storage device to the storage device you want to use with your new machine/installation. You can also copy all child compositions that you are interested in using. The Framework will then detect them and register them rather than reprocessing. To copy the children is usually faster compared to reprocessing. For this example you can copy the following folders under ‘/Volumes/”srcvolume”/ancillary/vwb/region/’:

  • trmm-vwb
  • trmm-vwb-A
  • trmm-vwb-A-change
  • trmm-vwb-A-stats
  • trmm-vwb-A-trend

Copy them to the same hierarchical structure on the new volume (storage device) ‘/Volumes/”dstvolume”/ancillary/vwb/region/’

Update database

When you have organized the VWB data on a new storage device, the process updatedbAncillary will check for the existence of the composition and register existing layers in the Framework database.

<?xml version='1.0' encoding='utf-8'?>
<updatedb>
	<userproj userid = 'karttur' projectid = 'karttur' tractid= 'karttur-trmm' siteid = '*' plotid = '*' system = 'ancillary'></userproj>
	<period startyear = "1998"  endyear = "2018" endmonth='07' endday='31' timestep='M'></period>

	<process processid ='updatedbAncillary' dsversion = '1.3'>
		<parameters></parameters>
		<dstpath volume = "karttur3tb" hdrfiletype='tif'></dstpath>
		<dstcomp>
			<trmm-fao-vwb source = "trmm-vwb" product = "3b43" folder = "vwb" band = "trmm-fao-vwb" prefix = "trmm-fao-vwb" suffix = "v7-f-m"
					cellnull='-32768' celltype='Int16' measure='R' dataunit='mm/month' scalfac='1' offsetadd='0'>
			</trmm-fao-vwb>
			<trmm-fao-vwb-surplus source = "trmm-vwb" product = "3b43" folder = "vwb" band = "trmm-fao-vwb-surplus" prefix = "trmm-fao-vwb-surplus" suffix = "v7-f-m"
					cellnull='-32768' celltype='Int16' measure='R' dataunit='mm/month' scalfac='1' offsetadd='0'>
			</trmm-fao-vwb-surplus>
			<trmm-fao-vwb-deficit source = "trmm-vwb" product = "3b43" folder = "vwb" band = "trmm-fao-vwb-deficit" prefix = "trmm-fao-vwb-deficit" suffix = "v7-f-m"
					cellnull='-32768' celltype='Int16' measure='R' dataunit='mm/month' scalfac='1' offsetadd='0'>
			</trmm-fao-vwb-deficit>
		</dstcomp>
	</process>
</updatedb>

Chain processes

Once the VWB data is registered in the Framework database you can run the subsequent processes. In the text file below the processing include 0) setting the VWB layout, 1) the transfer itself, 2) resampling to annual VWB, 3) Calculating annual trend and trend significance, and 5) Exporting the VWB data and analysis results as images and animations.

All the xml files required follows below.

0.0 VWB000_createscaling_v80.xml

Process: createscaling.

0.0 TVWB000_createpalettes_v80.xml

Process: addrasterpalette.

0.0 VWB000_addmovieclock.xml

Process: addmovieclock.

2.1 VWB021_resample-2-annual_v80.xml

Process: resampletsancillary.

3.1 VWB031_trend_A_v80.xml

Process: trendtsancillary.

3.2 VWB032_significant_changes_v80.xml

Process: signiftrendsancillary.

5.0 VWB050_ExporttoByte_M_v80.xml

Process: exporttobyteancillary.

5.0 VWB050_ExporttoByte_timespanA_v80.xml

Process: exporttobyteancillary.

5.5 VWB055_movieframes_M_v80.xml

Process: movieframeancillary.

For the process movieframeancillary to work you must have installed imagemagick as explained in another blogpost.

To run the process fully automated you must set the parameter asscript to False, otherwise you must manually execute the shell script file reported when the process comes to an end. By default the process will create a script file so you must explicitly enter asscript="False" if you want the process to generate the frames on the fly.

Note that because the three versions of VWB (the total VWB, suplus VWB and deficit VWB) were organized to be stored in the same directory (or folder) path, you can only create one animation at the time. If you want to create animations of all three versions you must delete the “movieframe” folder between each creation.

5.6 VWB056_movieclock_M_v80.xml

Process: movieclockancillary.

The process movieclockancillary first creates the movieclocks to combine with the movie frames from the previous step, and then creates the movie/animation itself. To run the process fully automated you must set the parameter asscript to False, otherwise you must manually execute the shell script files reported when the process comes to an end. By default the process will create script files so you must explicitly enter asscript="False" if you want the process to generate the complete animation on the fly.

For the process <span class=’package’movieclockancillary</span> to work you must have installed FFmpeg as explained in another blogpost.