libsim
Versione 7.1.7
|
Controllo di qualità climatico. Continua...
Tipi di dato | |
type | qcclitype |
Oggetto principale per il controllo di qualità Continua... | |
interface | init |
Inizializzazione. Continua... | |
interface | alloc |
Allocazione di memoria. Continua... | |
interface | delete |
Cancellazione. Continua... | |
Funzioni/Subroutine | |
subroutine | qccliinit (qccli, v7d, var, timei, timef, data_id_in, macropath, climapath, extremepath, dsncli, dsnextreme, user, password, height2level, categoryappend) |
Init del controllo di qualità climatico. Continua... | |
subroutine | qcclialloc (qccli) |
Allocazioni di memoria. Continua... | |
subroutine | qcclidealloc (qccli) |
Deallocazione della memoria. Continua... | |
subroutine | qcclidelete (qccli) |
Cancellazione. Continua... | |
subroutine, public | vol7d_normalize_data (qccli) |
Modulo 1: Calcolo dei parametri di normalizzazione dei dati I parametri di normalizzazione sono il 25°, il 50° e il 75° percentile (p25,p50,p75) oppure (p15.87,p50.,p84.13) Tali parametri verranno calcolati per ogni mese, per ogni ora, per ogni area. Continua... | |
subroutine, public | quaconcli (qccli, battrinv, battrout, anamask, timemask, levelmask, timerangemask, varmask, networkmask) |
Controllo di Qualità climatico. Continua... | |
subroutine, public | cli_level (heigth, level) |
Return a conventional level for climatological definition. Continua... | |
subroutine, public | cli_level_generate (level) |
Initialize level according to climate definition at SIMC. Continua... | |
integer function | supermacroa (macroa) |
Rielabora le macroarea facendole Valentine/Elements thinking OBSOLETA. Continua... | |
subroutine, public | qc_compute_percentile (this, perc_vals, cyclicdt, presentperc, presentnumb) |
subroutine, public | qc_compute_normalizeddensityindex (this, perc_vals, cyclicdt, presentperc, presentnumb, data_normalized) |
Variabili | |
integer, dimension(cli_nlevel), parameter, public | cli_level1 = (/-100,100,250,500,750,1000,1250,1500,1750,2000/) |
standard heigth for climatological use (low level) Continua... | |
integer, dimension(cli_nlevel), parameter, public | cli_level2 = (/100,250,500,750,1000,1250,1500,1750,2000,2250/) |
standard heigth for climatological use (hight level) Continua... | |
Controllo di qualità climatico.
Questo modulo permette di effettuare una valutazione della probabilità che un certo intervallo di misura ha di verificarsi. Per fare ciò si utilizzano una serie di percentili precedentemente calcolati. Il clima (NDI per percentili) sono suddivisi per macroarea, altezza dal livello del mare e mese, giorno e ora dell'anno.
definizione delle macroaree: le macroaree sono tre basate sulle macroaree definite piu' generalmente al SIM; queste prime macroaree sono definite dal file di default macroaree_er.shp. Attribuendo una numerazione che parte da Sud e Est e scorre prima verso Nord le nuove aree vengono cosi' definite:
Le altezze invece vengono cosi' definite: classe altezza = (altezza+150)/250 ottenendo un indice da 1 a 10 (inserendo altezze in metri). Questo indice viene utilizzato per selezionare un livello tipico utilizzato nella descrizione del clima con leveltype=102:
Area e percentile vengono utilizzati per costruire l'ident dell'anagrafica del Vol7d del clima. Il clima infatti è memorizzato su file nel formato binario di Vol7d o in database che offre migliori performances se si lavora su brevi periodi. The minumun pass in time is defined to be 1 hour. The following conventional code values are used to specify which data was taken into account in the computation: year=1001 : dayly values of a specified month (depends by day and month) year=1002 : dayly,hourly values of a specified month (depends by day and month and hour) year=1003 : 10 day period of a specified month (depends by day(1,11,21) and month) year=1004 : 10 day period of a specified month,hourly (depends by day(1,11,21) and month and hour) year=1005 : mounthly values (depend by month) year=1006 : mounthly,hourly values (depend by month and hour) year=1007 : yearly values (no other time dependence) year=1008 : yearly,hourly values (depend by year and hour) The other conventional month hour and minute should be 01 when they are not significative, day should be 1 or, if year=1003 or year=1004 is used, 1,11 or 21.
Ecco come viene definito l'ident del clima:
Il network utilizzato nel volume del clima descrive le variabili contenute e gli eventuali attributi: qcclima-perc : percentili (descrittore in ident rappresenta il valore percentuale del percentile) qcclima-ndi : ndi (descrittore in ident rappresenta il valore ordinale del ndi) qcclima-extreme : estremi assoluti (descrittore in ident = 1 -> minimo; =2 -> massimo)
Il dataset qcclima-perc viene scritto utilizzando come variabile la stessa usata per il calcolo; il valore scritto rappresenta il valore del percentile. Nessun attributo è necessario.
Il dataset qcclima-ndi viene scritto utilizzando come variabile la stessa usata per il calcolo; il valore scritto rappresenta l'estremo inferiore dell'intervallo su cui è calcolato NDI. Il relativo valore di NDI è riportato come attributo (B33209). L'estremo superiore dell'ultimo NDI non è riportato in quanto non utile.
In questo modo è possibile inserire nel Vol7d del clima qualsiasi variabile e timerange.
Il clima viene letto dalla init. Se è a disposizione un DataBase tipo DB-All.e definendo un dsn la init tenterà di leggere solo la parte di dati necessaria. Dopo l'allocazione di memoria le successive operazioni svolte da qccli sono principalmente le seguenti:
Per considerare valido un dato in ingresso (da sottoporre al controllo) è utilizzato un attributo dei dati che deve contenere la flag di eventuale invalidazione (manuale); la confidenza al dato calcolata viene scritta in un attributo del dato. Questi due attributi possono essere specificati nella chiamata oppure assunti come default relativamente al primo e secondo attributo ai dati del volume.
Oltre all'attributo con la confidenza, se presente, viene scritto anche l'id relativo ai dati a cui sono state attribuite le confidenze, operazione necessaria per l'ottimizzazione della riscrittura dei dati.
Bisognerebbe validare il volume sottoposto al controllo per vedere se ha i requisiti.
La lettura da file formato bufr non funziona non gestendo la lettura degli attributi.
Programma Esempio del controllo climatico: