Newer
Older
cso.tutorial.superobs-listing.timerange.end : ${my.timerange.end}
! filename filters relative to listing file that should be scanned for orbit files;
! names could include time templates ;
! if same orbit is found in multiple directories, the first found is used;
! remove existing table for safety to ensure that this is done correctly ...
cso.tutorial.superobs-listing.file : ${my.work}/CSO-data/${my.region}/S5p/NO2/${my.tutorial.selection}__${my.supobs.key}/listing.csv
cso.tutorial.superobs-listing.patterns : %Y/%m/S5p_*.nc
! extra columns to be added, read from global attributes:
cso.tutorial.superobs-listing.xcolumns : orbit processing processor_version
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
!-----------------------------------------------------------
! catalogue of superobs fields
!-----------------------------------------------------------
! listing file with filenames/timerange.
cso.tutorial.superobs-catalogue.input.listing : ${cso.tutorial.superobs-listing.file}
! time range:
cso.tutorial.superobs-catalogue.timerange.start : ${my.timerange.start}
cso.tutorial.superobs-catalogue.timerange.end : ${my.timerange.end}
! target filenames; templates:
! - time values
! - %{orbit} : from listing
! - %{varname} for variable
cso.tutorial.superobs-catalogue.output.file : ${my.work}/CSO-data-catalogue__${my.supobs.key}/${my.region}/S5p/NO2/${my.tutorial.selection}/%Y/%m/%d/S5p_NO2_%{orbit}__%{varname}.png
! map domain (west east south north)
cso.tutorial.superobs-catalogue.domain : ${my.region.west} ${my.region.east} ${my.region.south} ${my.region.north}
! figure size (inches), default is (8,6):
cso.tutorial.superobs-catalogue.figsize : ${my.region.figsize}
! renew existing files?
!cso.tutorial.superobs-catalogue.renew : False
cso.tutorial.superobs-catalogue.renew : True
! variables to be plotted:
cso.tutorial.superobs-catalogue.vars : vcd vcd_errvar qa_value \
amf amf_trop nla \
cloud_fraction cloud_radiance_fraction
!! color for no-data values in track, default '0.8' (gray):
!cso.tutorial.superobs-catalogue.color_nan : white
!! extra keyword arguments for map:
!cso.tutorial.superobs-catalogue.map : resolution='h'
! convert units:
cso.tutorial.superobs-catalogue.var.vcd.units : umol/m2
! style:
cso.tutorial.superobs-catalogue.var.vcd.vmin : 0.0
cso.tutorial.superobs-catalogue.var.vcd.vmax : 100.0
! show error as std.dev, convert to vcd units:
cso.tutorial.superobs-catalogue.var.vcd_errvar.units : umol/m2
! style:
cso.tutorial.superobs-catalogue.var.vcd_errvar.vmax : 100.0
! style:
cso.tutorial.superobs-catalogue.var.amf.vmin : 0.0
cso.tutorial.superobs-catalogue.var.amf.vmax : 4.0
! style:
cso.tutorial.superobs-catalogue.var.amf_trop.vmin : 0.0
cso.tutorial.superobs-catalogue.var.amf_trop.vmax : 4.0
! style:
cso.tutorial.superobs-catalogue.var.nla.vmin : 1
cso.tutorial.superobs-catalogue.var.nla.vmax : 34
! style:
cso.tutorial.superobs-catalogue.var.qa_value.vmin : 0.5
cso.tutorial.superobs-catalogue.var.qa_value.vmax : 1.0
cso.tutorial.superobs-catalogue.var.qa_value.colors : ['red','yellow','green']
! style:
cso.tutorial.superobs-catalogue.var.cloud_fraction.vmax : 1.0
cso.tutorial.superobs-catalogue.var.cloud_fraction.colors : ['blue','cyan','white']
! style:
cso.tutorial.superobs-catalogue.var.cloud_radiance_fraction.vmax : 1.0
cso.tutorial.superobs-catalogue.var.cloud_radiance_fraction.colors : ['blue','cyan','white']
! *** catalogue index
! target location:
cso.tutorial.superobs-catalogue-index.outdir : ${my.work}/CSO-data-catalogue__${my.supobs.key}/${my.region}/S5p/NO2/${my.tutorial.selection}
! title:
cso.tutorial.superobs-catalogue-index.header : CSO catalogue
! show info on created page?
cso.tutorial.superobs-catalogue-index.info : True
! create new page for each value?
cso.tutorial.superobs-catalogue-index.newpage : True
! content type:
cso.tutorial.superobs-catalogue-index.type : list
! define row values:
cso.tutorial.superobs-catalogue-index.name : date
cso.tutorial.superobs-catalogue-index.values : TimeSeries( ${my.timerange.start}, ${my.timerange.end}, '1 day', '%Y%m%d' )
! create new page for each value:
cso.tutorial.superobs-catalogue-index.date.newpage : True
! content type:
cso.tutorial.superobs-catalogue-index.date.type : table-row
! define row values:
cso.tutorial.superobs-catalogue-index.date.name : orbit
cso.tutorial.superobs-catalogue-index.date.values : CsvFile( '%{date[0:4]}/%{date[4:6]}/%{date[6:8]}/orbits.csv' )
! content type:
cso.tutorial.superobs-catalogue-index.date.orbit.type : table-col
! define column values:
cso.tutorial.superobs-catalogue-index.date.orbit.name : var
cso.tutorial.superobs-catalogue-index.date.orbit.values : ${cso.tutorial.superobs-catalogue.vars}
! content type:
cso.tutorial.superobs-catalogue-index.date.orbit.var.type : img
! define image:
cso.tutorial.superobs-catalogue-index.date.orbit.var.img : %{date[0:4]}/%{date[4:6]}/%{date[6:8]}/S5p_NO2_%{orbit}__%{var}.png
cso.tutorial.superobs-catalogue-index.date.orbit.var.kwargs : height=300
!======================================================================
!===
!=== simulation catalogue
!===
!======================================================================
!-----------------------------------------------------------
! simulation catalogue
!-----------------------------------------------------------
! time range:
cso.tutorial.sim-catalogue.timerange.start : ${my.timerange.start}
cso.tutorial.sim-catalogue.timerange.end : ${my.timerange.end}
cso.tutorial.sim-catalogue.timerange.step : hour
! input files:
cso.tutorial.sim-catalogue.input.data.file : ${my.work}/CSO-oper/CSO_output_%Y%m%d_%H%M_data.nc
cso.tutorial.sim-catalogue.input.state.file : ${my.work}/CSO-oper/CSO_output_%Y%m%d_%H%M_state.nc
! target files, time tempates and variable name are replaced:
cso.tutorial.sim-catalogue.output.file : ${my.work}/CSO-sim-catalogue/S5p/NO2/${my.region}/%Y/%m/%d/S5p_NO2_%Y%m%d_%H%M_%{var}.png
! map domain used for simulations (west east south north):
cso.tutorial.sim-catalogue.domain : -10 30 35 65
!!~ globe:
!cso.tutorial.sim-catalogue.domain : -180 180 -90 90
! figure size (inches), default is (8,6):
cso.tutorial.sim-catalogue.figsize : ${my.region.figsize}
! renew existing files?
!cso.tutorial.sim-catalogue.renew : False
cso.tutorial.sim-catalogue.renew : True
! variables to be plotted:
cso.tutorial.sim-catalogue.vars : yr ys yr_m ys_m tcc
! variable:
cso.tutorial.sim-catalogue.var.yr.source : data:yr
! convert units:
cso.tutorial.sim-catalogue.var.yr.units : umol/m2
! style:
cso.tutorial.sim-catalogue.var.yr.vmin : 0.0
cso.tutorial.sim-catalogue.var.yr.vmax : 100.0
! variable:
cso.tutorial.sim-catalogue.var.ys.source : state:ys
! convert units:
cso.tutorial.sim-catalogue.var.ys.units : umol/m2
! style:
cso.tutorial.sim-catalogue.var.ys.vmin : 0.0
cso.tutorial.sim-catalogue.var.ys.vmax : 100.0
! variable:
cso.tutorial.sim-catalogue.var.yr_m.source : state:yr_m
! convert units:
cso.tutorial.sim-catalogue.var.yr_m.units : umol/m2
! style:
cso.tutorial.sim-catalogue.var.yr_m.vmin : 0.0
cso.tutorial.sim-catalogue.var.yr_m.vmax : 100.0
! variable:
cso.tutorial.sim-catalogue.var.ys_m.source : state:ys_m
! convert units:
cso.tutorial.sim-catalogue.var.ys_m.units : umol/m2
! style:
cso.tutorial.sim-catalogue.var.ys_m.vmin : 0.0
cso.tutorial.sim-catalogue.var.ys_m.vmax : 100.0
! variable:
cso.tutorial.sim-catalogue.var.tcc.source : state:mod_tcc
! convert units:
cso.tutorial.sim-catalogue.var.tcc.units : 1
! style:
cso.tutorial.sim-catalogue.var.tcc.vmin : 0.0
cso.tutorial.sim-catalogue.var.tcc.vmax : 1.0
!-----------------------------------------------------------
! sim catalogue index
!-----------------------------------------------------------
! target location:
cso.tutorial.sim-catalogue-index.outdir : ${my.work}/CSO-sim-catalogue/S5p/NO2/${my.region}
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
! title:
cso.tutorial.sim-catalogue-index.header : CSO catalogue
! show info on created page?
cso.tutorial.sim-catalogue-index.info : True
! create new page for each value?
cso.tutorial.sim-catalogue-index.newpage : True
! content type:
cso.tutorial.sim-catalogue-index.type : list
! define row values:
cso.tutorial.sim-catalogue-index.name : date
cso.tutorial.sim-catalogue-index.values : TimeSeries( ${my.timerange.start}, ${my.timerange.end}, '1 day', '%Y%m%d' )
! create new page for each value:
cso.tutorial.sim-catalogue-index.date.newpage : True
! content type:
cso.tutorial.sim-catalogue-index.date.type : table-row
! define row values:
cso.tutorial.sim-catalogue-index.date.name : time
cso.tutorial.sim-catalogue-index.date.values : Range( 0, 23, 1, '%2.2i00' )
! content type:
cso.tutorial.sim-catalogue-index.date.time.type : table-col
! define column values:
cso.tutorial.sim-catalogue-index.date.time.name : var
cso.tutorial.sim-catalogue-index.date.time.values : ${cso.tutorial.sim-catalogue.vars}
! content type:
cso.tutorial.sim-catalogue-index.date.time.var.type : img
! define image:
cso.tutorial.sim-catalogue-index.date.time.var.img : %{date[0:4]}/%{date[4:6]}/%{date[6:8]}/S5p_NO2_%{date}_%{time}_%{var}.png
cso.tutorial.sim-catalogue-index.date.time.var.kwargs : height=300
!======================================================================
!===
!===
!======================================================================
!-----------------------------------------------------------
! gridded orbits
!-----------------------------------------------------------
! time range:
cso.tutorial.sim-gridded.timerange.start : ${my.timerange.start}
cso.tutorial.sim-gridded.timerange.end : ${my.timerange.end}
! create one gridded file per hour:
cso.tutorial.sim-gridded.timerange.step : hour
cso.tutorial.sim-gridded.renew : True
!cso.tutorial.sim-gridded.renew : False
Arjo Segers
committed
! target directory, incl. subdir for resolution and filters:
my.sim-gridded.dir : ${my.work}/CSO-sim-gridded/${my.region}__r01x01__qa08
! grid definition:
!!~ same as pixel selection on conversion:
!cso.tutorial.sim-gridded.grid.west : ${my.region.west}
!cso.tutorial.sim-gridded.grid.east : ${my.region.east}
!cso.tutorial.sim-gridded.grid.south : ${my.region.south}
!cso.tutorial.sim-gridded.grid.north : ${my.region.north}
!! resolution:
!cso.tutorial.sim-gridded.grid.dlon : 0.1
!cso.tutorial.sim-gridded.grid.dlat : 0.1
!
cso.tutorial.sim-gridded.grid.west : -10
cso.tutorial.sim-gridded.grid.east : 30
cso.tutorial.sim-gridded.grid.south : 35
cso.tutorial.sim-gridded.grid.north : 65
cso.tutorial.sim-gridded.grid.dlon : 0.1
cso.tutorial.sim-gridded.grid.dlat : 0.1
! level of recursive splitting of footprint into triangles,
! and assignment of centroids to grid cells;
! for 4-corner footprints, number of centroids is:
! 1 (levels=0), 4 (1), 8 (2), 16 (3), 64 (5), 256 (7)
!~
! keywords for source files;
! the first one should have the footprints:
cso.tutorial.sim-gridded.source.data.filenames : ${my.work}/CSO-oper/CSO_output_%Y%m%d_%H%M_data.nc
cso.tutorial.sim-gridded.source.state.filenames : ${my.work}/CSO-oper/CSO_output_%Y%m%d_%H%M_state.nc
cso.tutorial.sim-gridded.filter.quality.var : qa_value
cso.tutorial.sim-gridded.filter.quality.type : min
cso.tutorial.sim-gridded.filter.quality.min : 0.8
cso.tutorial.sim-gridded.filter.quality.units : 1
! target file, might contain templates:
! %Y,%m,etc : time values
! %{basename} : basename (without extension) of first source file
cso.tutorial.sim-gridded.output.file : ${my.sim-gridded.dir}/%Y/%m/CSO_output_%Y%m%d_%H%M_gridded.nc
Arjo Segers
committed
! pack variables on output:
Arjo Segers
committed
! zlib compression level, 0 for no compression:
! data variables to be created:
cso.tutorial.sim-gridded.output.vars : yr ys yr_m ys_m
! input variables:
! data:yr : from data file
! state:ys : from state file
cso.tutorial.sim-gridded.output.yr.source : data:yr
cso.tutorial.sim-gridded.output.ys.source : state:ys
cso.tutorial.sim-gridded.output.yr_m.source : state:yr_m
cso.tutorial.sim-gridded.output.ys_m.source : state:ys_m
!-----------------------------------------------------------
!-----------------------------------------------------------
! time range:
cso.tutorial.sim-gridded-catalogue.timerange.start : ${my.timerange.start}
cso.tutorial.sim-gridded-catalogue.timerange.end : ${my.timerange.end}
Arjo Segers
committed
! hourly fields:
cso.tutorial.sim-gridded-catalogue.timerange.step : hour
cso.tutorial.sim-gridded-catalogue.renew : True
!cso.tutorial.sim-gridded-catalogue.renew : False
cso.tutorial.sim-gridded-catalogue.input.file : ${my.sim-gridded.dir}/%Y/%m/CSO_output_%Y%m%d_%H%M_gridded.nc
!cso.tutorial.sim-gridded-catalogue.input.file : ${my.sim-gridded.dir}/CSO_output_%Y%m%d_aver_gridded.nc
! target files, time tempates and variable name are replaced:
cso.tutorial.sim-gridded-catalogue.output.file : ${my.sim-gridded.dir}/catalogue/%Y/%m/%d/S5p_NO2_%Y%m%d_%H%M_gridded_%{var}.png
!cso.tutorial.sim-gridded-catalogue.output.file : ${my.sim-gridded.dir}/catalogue/%Y/%m/%d/S5p_NO2_%Y%m%d_aver_gridded_%{var}.png
! figure size (inches), default is (8,6):
cso.tutorial.sim-gridded-catalogue.figsize : ${my.region.figsize}
cso.tutorial.sim-gridded-catalogue.vars : yr ys yr_m ys_m
cso.tutorial.sim-gridded-catalogue.var.yr.source : yr
cso.tutorial.sim-gridded-catalogue.var.yr.units : umol/m2
cso.tutorial.sim-gridded-catalogue.var.yr.vmin : 0.0
cso.tutorial.sim-gridded-catalogue.var.yr.vmax : 100.0
cso.tutorial.sim-gridded-catalogue.var.ys.source : ys
cso.tutorial.sim-gridded-catalogue.var.ys.units : umol/m2
cso.tutorial.sim-gridded-catalogue.var.ys.vmin : 0.0
cso.tutorial.sim-gridded-catalogue.var.ys.vmax : 100.0
cso.tutorial.sim-gridded-catalogue.var.yr_m.source : yr_m
cso.tutorial.sim-gridded-catalogue.var.yr_m.units : umol/m2
cso.tutorial.sim-gridded-catalogue.var.yr_m.vmin : 0.0
cso.tutorial.sim-gridded-catalogue.var.yr_m.vmax : 100.0
cso.tutorial.sim-gridded-catalogue.var.ys_m.source : ys_m
cso.tutorial.sim-gridded-catalogue.var.ys_m.units : umol/m2
cso.tutorial.sim-gridded-catalogue.var.ys_m.vmin : 0.0
cso.tutorial.sim-gridded-catalogue.var.ys_m.vmax : 100.0
!-----------------------------------------------------------
! gridded catalogue index
!-----------------------------------------------------------
! target location:
cso.tutorial.sim-gridded-catalogue-index.outdir : ${my.sim-gridded.dir}/catalogue
cso.tutorial.sim-gridded-catalogue-index.header : CSO catalogue
cso.tutorial.sim-gridded-catalogue-index.info : True
! create new page for each value?
cso.tutorial.sim-gridded-catalogue-index.newpage : True
cso.tutorial.sim-gridded-catalogue-index.type : list
cso.tutorial.sim-gridded-catalogue-index.name : date
cso.tutorial.sim-gridded-catalogue-index.values : TimeSeries( ${my.timerange.start}, ${my.timerange.end}, '1 day', '%Y%m%d' )
! create new page for each value:
cso.tutorial.sim-gridded-catalogue-index.date.newpage : True
cso.tutorial.sim-gridded-catalogue-index.date.type : table-row
cso.tutorial.sim-gridded-catalogue-index.date.name : time
cso.tutorial.sim-gridded-catalogue-index.date.values : Range( 0, 23, 1, '%2.2i00' )
cso.tutorial.sim-gridded-catalogue-index.date.time.type : table-col
cso.tutorial.sim-gridded-catalogue-index.date.time.name : var
cso.tutorial.sim-gridded-catalogue-index.date.time.values : ${cso.tutorial.sim-gridded-catalogue.vars}
cso.tutorial.sim-gridded-catalogue-index.date.time.var.type : img
cso.tutorial.sim-gridded-catalogue-index.date.time.var.img : %{date[0:4]}/%{date[4:6]}/%{date[6:8]}/S5p_NO2_%{date}_%{time}_gridded_%{var}.png
cso.tutorial.sim-gridded-catalogue-index.date.time.var.kwargs : height=300
!======================================================================
!===
!=== end
!===
!======================================================================