Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
kvalobs:kvoss:system:qc2:user [2008-10-28 12:02:16]
paule created
kvalobs:kvoss:system:qc2:user [2022-05-31 09:29:32] (current)
Line 1: Line 1:
  
-====== Qc2 User Guides & Manuals ======+====== Qc2 User Guide ======
  
 +**This documentation is mostly for the development version 1.3.1 of kvqc2d as of 2011-12-02.**
  
-  * [[.user:configuration|Configuration Files]]+===== Configuration ===== 
 + 
 +The configuration of Qc2 algorithms is done via configuration files in the folder ''/etc/kvalobs/Qc2Config''
 +To make it easy to switch between development an production version, the development configuration files have the extension ''.cfg2'', 
 +and the production configuration files the extension ''.cfg''. All other files are ignored. 
 + 
 +The new version checks tries to check if there is too much or too little configuration. 
 +Error messages about bad configuration files should appear as **ERROR** messages in the logfile ''/var/log/kvalobs/kvqc2d.log''
 + 
 +The configuration files may contain empty lines and comment lines, i.e. lines that start with a ''#'' as first non-whitespace character. 
 +Empty lines and comment lines are ignored. 
 +The other lines have the form ''option = value''
 +Options are case-sensitive. 
 +If the same option is repeated, a list of values is built, but this feature is not used for all parameters (most take only the first value) and also not checked. 
 + 
 +==== Flags and Flag Modification ==== 
 + 
 +For the development version, the specification of [[kvalobs:kvalobs:kvalobs-flagg|flags]] and flag modifications has been changed and extended. 
 +One part of this is flag **matching**, the other flag **modification**. 
 + 
 +=== Flag Matching === 
 + 
 +To specify flag matching, the following syntax is used: 
 + 
 +<code> 
 +# controlinfo fr must be 9 or fs must be one of A,B,C; there is no constraint on the other controlinfo or useinfo flags 
 +discarded_cflags = fr=9|fs=[ABC] 
 + 
 +# controlinfo(6)=fmis must be 0 and useinfo(0) must be 3 or 7 and useinfo(2) must 0; there is no constraint on the other controlinfo or useinfo flags 
 +neighbor_cflags    = ..._..0_..._..._ 
 +neighbor_uflags    = [37].0_..._..._..._ 
 + 
 +# same as above, but in text format 
 +neighbor_cflags    = fmis=0 
 +neighbor_uflags    = U0=[37]&U2=0 
 + 
 +# fmis may not be 7,8 or 9 
 +neighbor_cflags    = fmis=)789( 
 + 
 +# controlinfo must have either fmis=0 and fhqc=0 or fmis=1 and fhqc=A; no constraint on useinfo 
 +missing_cflags = fmis=0&fhqc=0|fmis=1&fhqc=A 
 +</code> 
 + 
 +The characters ''.'' and ''_'' match any flag and can be used interchangeably. 
 +If using the non-textual specification, it is recommended to use a ''_'' for every fourth flag wildcard and ''.'' for all other wildcards to make it easier to read the specification on screen and paper. 
 + 
 +=== Flag Modification === 
 + 
 +Flag modification consists of an optional matching part like above and a modification part. Both apply only to controlinfo flags. 
 + 
 +<code> 
 +# set ftime=1 unconditionally; if fmis=3, set fmis=1; if fmis=0 or 2, set fmis=4 
 +update_flagchange  = ..._...1..._..._;..._..3_..._..._->..._..1_..._..._;..._..[02]_..._..._->..._..4_..._..._ 
 + 
 +# if fmis=1, set fmis=3; if fmis=4, set fs=9 
 +missing_flagchange = fmis=1->fmis=3;fmis=4->fs=9 
 + 
 +# set fs=8 and fmis=2 
 +highstart_flagchange = fs=8,fmis=2 
 +</code> 
 + 
 +The changes are applied in the order they are specified if the respective constraint is met. 
 +If multiple changes are specified, the constraints of the later are checked against the flags already modified by the previous change specifications. 
 + 
 +==== Scheduling ==== 
 + 
 +Scheduling of the algorithm is done via the //options//: 
 + 
 +  * ''RunAtHour'' specifies the hour of the day at which the algorithm should run. The special value ''-1'' means that the algorithm shall run hourly 
 +  * ''RunAtMinute'' specifies the minute at which the algorithm should run. 
 + 
 +If algorithms are scheduled so that one runs so long that other algorithm's scheduled start times fall during the running time of the former, 
 +then the //delayed// algorithms are run in the same order as originally specified after the long-running algorithm finished. 
 +If several algorithms are scheduled for the same time, the order in which they are run is undefined. 
 + 
 +See also [[.user:qc2_schedule|Qc2 Schedule]]. 
 + 
 +==== Common Configuration ==== 
 + 
 +A few options are common to all algorithms. 
 +These have default values and are not likely to be inserted in the configuration file. 
 + 
 +  * ''CFAILED_STRING'' an extra comment added to ''cfailed'' for any modified row (default: empty, no extra comment) 
 +  * ''missing'' special value indicating a missing value (default: -32767.0) 
 +  * ''rejected'' special value indicating a rejected value (default: -32766.0) 
 + 
 +==== Time Range Configuration ==== 
 + 
 +The first and last observation times for which an algorithm shall run is specified with: 
 +    * either ''Start_YYYY'', ''Start_MM'', ''Start_DD'', ''Start_hh'', ''Start_mm'', ''Start_ss'' and ''End_YYYY'', ''End_MM'', ''End_DD'', ''End_hh'', ''End_mm'', ''End_ss'' 
 +    * or with ''Last_NDays = //d//'' which takes the present time (not the scheduled time!) and sets seconds and minutes to 0 to obtain the end time; then, ''//d//'' days are subtracted to obtain the start time. It is also possible to set ''Start_hh'' and ''Start_mm'' here, for example for data expected at 06:00. 
 + 
 +==== Algorithm Choice and Configuration ==== 
 + 
 +The algorithm to run is defined by the ''Algorithm'' option. 
 +The following algorithms are known, and links are given the their respective descriptions. 
 + 
 +  * ''DipTest'' checks for double jumps in the data, see [[kvalobs:kvoss:system:qc2:requirements:algorithms:diptest03|description]] 
 +  * ''SingleLinear'' checks for single missing values, see [[kvalobs:kvoss:system:qc2:requirements:algorithms:singlelinear|description]] 
 +  * ''Redistribute'' redistributes accumulated precipitation based on neighbor station data, see [[kvalobs:kvoss:system:qc2:requirements:algorithms:rarr_24|description]] 
 +  * ''Plumatic'' checks 1-minute data from //vippepluviometer//, see [[kvalobs:kvoss:system:qc2:requirements:algorithms:plumatic|description]] 
 + 
 +===== Links ===== 
 + 
 +  * [[.user:configuration|Old configuration description]] 
 +  * [[.user:config_summary|Summary of all Configuration Options]] 
 +  * [[.user:interpolation|Interpolation Configuration]] 
 +  * [[.user:algorithms|Algorithm Configuration]] 
 +  * [[.user:installation|Installation]] (old) 
 +  * [[.user:run|Running Qc2]] (old) 
 +  * [[.user:version|Version Details]] 
 + 
 +  * [[kvalobs:kvoss:system:qc2|QC2 System Root Page]]
  • kvalobs/kvoss/system/qc2/user.1225195336.txt.gz
  • Last modified: 2022-05-31 09:23:18
  • (external edit)