NCDELTA: Difference between revisions
From BAWiki
imported>Lang Guenther (Link to "Differences of Calculated Results added") |
m (update version) |
||
(45 intermediate revisions by 6 users not shown) | |||
Line 2: | Line 2: | ||
|name_de=NCDELTA | |name_de=NCDELTA | ||
|name=NCDELTA | |name=NCDELTA | ||
|version= | |version=April 2023 | ||
|version_descr= | |version_descr=September 2022 | ||
|catchwords= | |catchwords= | ||
postprocessor<br /> | postprocessor<br /> | ||
differences of synoptic data<br /> | differences of synoptic data (with optional restriction of time period)<br /> | ||
differences of characteristic numbers<br /> | differences of characteristic numbers<br /> | ||
differences for extensive quantities<br /> | |||
input data for Taylor diagram<br /> | input data for Taylor diagram<br /> | ||
median, percentiles (Q01, Q05, Q95, Q99)<br /> | median, percentiles (Q01, Q05, Q95, Q99)<br /> | ||
skill score according to Murphy (1988) equation 4<br /> | |||
skill score according to Taylor (2001) equations 4 and 5<br /> | |||
skill score according to Willmott (1981) Index of agreement (d)<br /> | |||
parallelization using [http://openmp.org/wp/ OpenMP]<br /> | |||
[[NetCDF#Quality assurance using NetCDF attributes|automatic quality assurance (value range)]]<br /> | |||
automatic adjustment of number of READ data to chunk size of data<br /> | |||
automatic setting of WRITE chunk sizes for written variables<br /> | |||
Storage of the content of the ASCII input control files in [[CF-NETCDF.NC|netcdf.nc]] (as a variable)<br /> | |||
Storage of [https://en.wikipedia.org/wiki/MD5 MD5 hash values] of input files in [[CF-NETCDF.NC|netcdf.nc]] (as a variable)<br /> | |||
optional use of ''Message Passing Interface'' (MPI, [https://www.mpi-forum.org/ MPI Forum]) | |||
Acknowledgment: ''This project took advantage of netCDF software developed by UCAR/Unidata ([http://www.unidata.ucar.edu/software/netcdf/ www.unidata.ucar.edu/software/netcdf/]).'' | |||
|shortdescription= | |shortdescription= | ||
''' | Program computes differences for comparable variables (primary variable pairs) as well as additional statistical data derived from primary differences, but also data for Taylor diagrams (details see [[Differences of Calculated Results]]) can be computed for some types of data. Finding the primary variable pairs is done in an essentially automatical manner but can be altered to some extent by the user (see [[NCDELTA.DAT|ncdelta.dat]]). Primary differences are computed according to ''variant data'' '''minus''' ''reference data''. | ||
Requirements for time-dependent primary variable pairs with individual constant time step: | |||
# both data sets may contain a ''different'' number of data items (time steps), but the length of the time period to be compared must be identical, whereas the periods to be compared may differ ; | |||
# constant time step for each data set may differ from each other, but the larger time step must an integer multiple of the smaller one. | |||
Requirements for time-dependent primary variable pairs with variable time step: | |||
# both data sets must contain an ''identical'' number of data items (time steps), with periods allowed to be different. | |||
Remarks concerning the spatial location of data: | |||
# data sets may differ with respect to their geographical location; | |||
# areas for which data are defined must overlap to some degree; | |||
# coordinates may be given in different coordinate systems, e. g. Gauß-Krüger and UTM; | |||
# data for a location are compared with data for the nearest lying location, as far as the distance between the different locations does not exceed a prescribed maximum (see [[NCDELTA.DAT|ncdelta.dat]]). | |||
Remarks concerning the comparison of extensive variables: | |||
# for extensive variables the respective sizes of the computational cells (area, length) are taken into account. | |||
|inputfiles= | |inputfiles= | ||
# '''general input data''' (file type [[NCDELTA.DAT|ncdelta.dat]]) | # '''general input data''' (file type [[NCDELTA.DAT|ncdelta.dat]]); | ||
# '''reference data''' (file type [[CF-NETCDF.NC]]) | # '''reference data''' (file type [[CF-NETCDF.NC]]); | ||
# '''variant data''' (file type [[CF-NETCDF.NC]]) | # '''variant data''' (file type [[CF-NETCDF.NC]]); | ||
# for [[NetCDF#Automatic quality assurance using NetCDF attributes|automatic quality assurance]] (file type [[BOUNDS.CFG.DAT|bounds_verify.dat]]). | |||
|outputfiles= | |outputfiles= | ||
Line 25: | Line 55: | ||
|methodology= | |methodology= | ||
The program is subdivided into the following sections: | |||
# read, check and print steering data prescribed by the user; | |||
# read metadata for ''reference data''; | |||
# read metadata for ''variant data''; | |||
# copy metadata for reference as well as variant data to program specific data structures; | |||
# compare metadata for substantial discrepancies (e. g. reference locations) between data sets; | |||
# classify all reference as well as variant data; | |||
# find primary variable pairs: each variant variable has one partner reference variable; primary computational results will be later derived from primary variable pairs; | |||
# derive variables to be copied from reference as well as variant data file into the result file; | |||
# compute interpolation matrices required for interpolation between reference data locations and variant data locations; | |||
# create all metadata for the result file; essentially they stem from variables to be copied, from primary result variables, newly generated coordinate variables (time, vertical), as well as newly derived or to be copied measure and auxiliary variables; | |||
# copy selceted variables from reference as well as variant file to the result file; | |||
# compute all primary variables, (new) time and vertical coordinate variables, as well as weights and auxiliary variables. For primary variables optionally available axiliary variables with ''standard_name'' modifier ''status_flag'' are taken into account in case meaning ''good'' is represented by an appropriate flag (bit). | |||
# with respect of the different skill scores used and computed by the program - references: | |||
#* Murphy, Allan H. (1988) "Skill Scores Based on the Mean Square Error and Their Relationship to the Correlation Coefficient". Monthly Weather Review, Dec. 1988, Pages 2417 - 2424. | |||
#* Taylor, Karl E. (2001) "Summarizing multiple aspects of model performance in a single diagram". Journal of Geophysical Research, Vol 106, No. D7, April 16, 2001, Pages 7183 - 7192. | |||
#* Willmott, Cort J. (1981) "On the validation of models". Physical Geography, Pages 184–194. | |||
Just in case '''HDF error''' is detected during read of a data record, the program tries to reconstruct the wanted data set from adjacent (in time) records for the same variable. This type of repair works for time dependent variables only. | |||
|preprocessor=[[DATACONVERT]], [[NCAGGREGATE]], [[NCANALYSE]], [[UNK]], [[UNTRIM2007]], [[UNTRIM2]] | |preprocessor=[[BOE2NC]], [[DATACONVERT]], [[NCAGGREGATE]], [[NCANALYSE]], [[NCCHUNKIE]], [[NCCUTOUT]], [[NCRCATMAT]], [[NetCDF Operators]], [[UNK]], [[UNTRIM2007]], [[UNTRIM2]] | ||
|postprocessor=DAVIT, [[NCPLOT]] | |postprocessor=[[DAVIT]], [[NCAUTO]], [[NCCHUNKIE]], [[NCPOLO]], [[NCPLOT]], [[NCCUTOUT]], [[NC2TABLE]], [[NCVIEW2D]], [[PLOTTS]], [[TAYLORDIAGRAM]] | ||
|language=Fortran95 | |language=Fortran95 | ||
|add_software= | |add_software=none | ||
|contact_original= | |contact_original=G. Lang, S. Spohr | ||
|contact_maintenance=[mailto: | |contact_maintenance=[mailto:pos.proghome@baw.de Working group POS] | ||
|documentation= | |documentation= | ||
template files available in '''$PROGHOME/examples/ncdelta''' | * Presentations (available in German only): | ||
** 2015-07-15: [http://ewisa.baw.de/files/12835_tv12_2015_07_15_ncdelta_g_lang.pdf ''NCDELTA - Differenzen neu berechnet'']. | |||
* [https://izw-campus.baw.de/ ''IZW-Campus''] (Podcast, available in German only) | |||
** 2022-05-30: [https://izw-campus.baw.de/goto.php?target=cat_4308&client_id=iliasclient ''NCDELTA - Berechnung von Differenzen'']. | |||
* Template Files: | |||
** template files available in '''$PROGHOME/examples/ncdelta''' | |||
}} | }} |
Latest revision as of 11:00, 12 April 2023
Basic Information
Name of Program
NCDELTA
Version-Date
April 2023
Description-Date
September 2022
Catchwords
postprocessor
differences of synoptic data (with optional restriction of time period)
differences of characteristic numbers
differences for extensive quantities
input data for Taylor diagram
median, percentiles (Q01, Q05, Q95, Q99)
skill score according to Murphy (1988) equation 4
skill score according to Taylor (2001) equations 4 and 5
skill score according to Willmott (1981) Index of agreement (d)
parallelization using OpenMP
automatic quality assurance (value range)
automatic adjustment of number of READ data to chunk size of data
automatic setting of WRITE chunk sizes for written variables
Storage of the content of the ASCII input control files in netcdf.nc (as a variable)
Storage of MD5 hash values of input files in netcdf.nc (as a variable)
optional use of Message Passing Interface (MPI, MPI Forum)
Acknowledgment: This project took advantage of netCDF software developed by UCAR/Unidata (www.unidata.ucar.edu/software/netcdf/).
Short Description of Functionality
Program computes differences for comparable variables (primary variable pairs) as well as additional statistical data derived from primary differences, but also data for Taylor diagrams (details see Differences of Calculated Results) can be computed for some types of data. Finding the primary variable pairs is done in an essentially automatical manner but can be altered to some extent by the user (see ncdelta.dat). Primary differences are computed according to variant data minus reference data.
Requirements for time-dependent primary variable pairs with individual constant time step:
- both data sets may contain a different number of data items (time steps), but the length of the time period to be compared must be identical, whereas the periods to be compared may differ ;
- constant time step for each data set may differ from each other, but the larger time step must an integer multiple of the smaller one.
Requirements for time-dependent primary variable pairs with variable time step:
- both data sets must contain an identical number of data items (time steps), with periods allowed to be different.
Remarks concerning the spatial location of data:
- data sets may differ with respect to their geographical location;
- areas for which data are defined must overlap to some degree;
- coordinates may be given in different coordinate systems, e. g. Gauß-Krüger and UTM;
- data for a location are compared with data for the nearest lying location, as far as the distance between the different locations does not exceed a prescribed maximum (see ncdelta.dat).
Remarks concerning the comparison of extensive variables:
- for extensive variables the respective sizes of the computational cells (area, length) are taken into account.
Input-Files
- general input data (file type ncdelta.dat);
- reference data (file type CF-NETCDF.NC);
- variant data (file type CF-NETCDF.NC);
- for automatic quality assurance (file type bounds_verify.dat).
Output-Files
- results (file type CF-NETCDF.NC)
- (optional) informative printer file of program execution (file type ncdelta.sdr)
- (optional) trace of program execution (file type ncdelta.trc)
Methodology
The program is subdivided into the following sections:
- read, check and print steering data prescribed by the user;
- read metadata for reference data;
- read metadata for variant data;
- copy metadata for reference as well as variant data to program specific data structures;
- compare metadata for substantial discrepancies (e. g. reference locations) between data sets;
- classify all reference as well as variant data;
- find primary variable pairs: each variant variable has one partner reference variable; primary computational results will be later derived from primary variable pairs;
- derive variables to be copied from reference as well as variant data file into the result file;
- compute interpolation matrices required for interpolation between reference data locations and variant data locations;
- create all metadata for the result file; essentially they stem from variables to be copied, from primary result variables, newly generated coordinate variables (time, vertical), as well as newly derived or to be copied measure and auxiliary variables;
- copy selceted variables from reference as well as variant file to the result file;
- compute all primary variables, (new) time and vertical coordinate variables, as well as weights and auxiliary variables. For primary variables optionally available axiliary variables with standard_name modifier status_flag are taken into account in case meaning good is represented by an appropriate flag (bit).
- with respect of the different skill scores used and computed by the program - references:
- Murphy, Allan H. (1988) "Skill Scores Based on the Mean Square Error and Their Relationship to the Correlation Coefficient". Monthly Weather Review, Dec. 1988, Pages 2417 - 2424.
- Taylor, Karl E. (2001) "Summarizing multiple aspects of model performance in a single diagram". Journal of Geophysical Research, Vol 106, No. D7, April 16, 2001, Pages 7183 - 7192.
- Willmott, Cort J. (1981) "On the validation of models". Physical Geography, Pages 184–194.
Just in case HDF error is detected during read of a data record, the program tries to reconstruct the wanted data set from adjacent (in time) records for the same variable. This type of repair works for time dependent variables only.
Program(s) to run before this Program
BOE2NC, DATACONVERT, NCAGGREGATE, NCANALYSE, NCCHUNKIE, NCCUTOUT, NCRCATMAT, NetCDF Operators, UNK, UNTRIM2007, UNTRIM2
Program(s) to run after this Program
DAVIT, NCAUTO, NCCHUNKIE, NCPOLO, NCPLOT, NCCUTOUT, NC2TABLE, NCVIEW2D, PLOTTS, TAYLORDIAGRAM
Additional Information
Language
Fortran95
Additional software
none
Original Version
G. Lang, S. Spohr
Maintenance
Documentation/Literature
- Presentations (available in German only):
- 2015-07-15: NCDELTA - Differenzen neu berechnet.
- IZW-Campus (Podcast, available in German only)
- 2022-05-30: NCDELTA - Berechnung von Differenzen.
- Template Files:
- template files available in $PROGHOME/examples/ncdelta
back to Program Descriptions