1 #ifndef ARCHIVIATORE_CUM_BAC_CLASS_H
2 #define ARCHIVIATORE_CUM_BAC_CLASS_H
17 #include <radarelab/algo/vpr.h>
27 #define NUM_AZ_X_PPI 400
31 #define RES_VERT_CIL 0.25
32 #define RES_HOR_CIL 0.25
40 struct CalcoloSteiner;
104 bool set_undetect=
false;
208 void generate_maps(CartProducts& products);
228 log4c_category_t* logging_category;
231 radarelab::algo::InstantaneousVPR inst_vpr;
268 int analyse_VPR(
float *vpr_liq,
int *snow,
float *hliq);
295 int combina_profili(
const radarelab::algo::InstantaneousVPR& inst_vpr);
320 void merge_metodi(
const radarelab::algo::CalcoloSteiner& steiner,
const radarelab::algo::CalcoloVIZ& viz);
340 radarelab::Image<unsigned char>
cart;
364 void write_out(
Assets& assets,
const std::string tagname,
const std::string format=
"PNG");
Gestisce risorse usate dal programma.
Finds resources, like data files, used by the program.
bool do_declutter
use only static declutter map
bool do_devel
Produce additional output.
void declutter_anaprop()
funzione che elabora il dato radar rimuovendo anaprop e beam blocking
bool do_readStaticMap
Read Static clutter map.
radarelab::algo::Anaprop< double > anaprop
Oggetto per correzione ANAPRO.
radarelab::PolarScan< float > dem
dem in coordinate azimut range
CalcoloVPR * calcolo_vpr
Oggetto per calcolare e correggere con VPR.
time_t NormalizzoData(time_t time)
funzione che a partire dal tempo in secondi arrotonda al NMIN-esimo minuto precedente o successivo
radarelab::Volume< unsigned char > qual
qualita volume polare
void want_vpr()
Call this just after creating the CUM_BAC object, to signal that VPR should also be computed.
radarelab::PolarScan< unsigned char > first_level_static
mappa statica
void leggo_first_level()
funzione che legge la mappa statica e la mappa di elevazioni da beam blocking e le condensa in un uni...
log4c_category_t * logging_category
logging category
bool do_class
Convective-stratiform classification.
radarelab::Volume< double > & volume
Set to Z undetect value the Zpixels classified as non-meteo echoes.
radarelab::PolarScan< unsigned char > bb_first_level
mappa di elevazioni da beam blocking (input)
static void read_sp20_volume(radarelab::Volume< double > &volume, const Site &site, const char *nome_file, bool do_clean=false, bool do_medium=false)
Read from SP20 data file.
const Site & site
site information object
radarelab::PolarScan< unsigned char > first_level
mappa dinamica complessiva
char date[20]
Acquisition date.
radarelab::Volume< double > SD_Z6
Polar volume of standard deviation of reflectivity over 6 km length.
CUM_BAC(radarelab::Volume< double > &volume, const Config &cfg, const Site &site, bool medium=false, unsigned max_bin=512)
Constructor.
bool do_anaprop
anaprop correction
bool do_bloccorr
bloccorrection
static void read_odim_volume(radarelab::Volume< double > &volume, const Site &site, const char *nome_file, char *fuzzypath, bool do_clean=false, bool do_medium=false, bool set_undetect=false)
Read from ODIM data file.
void vpr_class()
Esegue tutta la catena vpr (e classificazione) se richiesta.
bool do_medium
medium processing flag
radarelab::algo::DBZ dbz
????
bool do_quality
Feature set required for this run.
radarelab::CylindricalVolume cil
Volume resampled as a cylindrical volume.
const Config & cfg
Configuration object.
radarelab::PolarScan< unsigned char > top
Echo top a ???? dBZ [hm].
bool do_beamblocking
beamblocking corretion
void ScrivoStatistica(const radarelab::algo::anaprop::GridStats &)
funzione scrittura matrici statistica
radarelab::PolarScan< unsigned char > beam_blocking
mappa di beam blocking (input)
bool do_zlr_media
Compute ZLR map using averaging.
void caratterizzo_volume()
funzione che caratterizza i volumi polari tramite la qualita'
unsigned MyMAX_BIN
maximum number of beam size
void creo_matrice_conv()
funzioni di conversione cartesiana:associa a pixel matrice alta ris azimut e range,...
void conversione_convettiva()
Nei punti convettivi ricalcola la Z come MP classica, partendo dalla stima di R (convettiva)
Classe principale del programma.
Class to manage reflectivity functions (simply attenuation correction, conversion between Z,...
float comp_levels(float v0, float v1, float nodata, float peso)
combina livelli
name space generale del programma
void classifica_rain()
funzione che classifica la precipitazione se stratiforme o convettiva
void esegui_tutto()
Metodo che lancia tutte le operazioni per il calcolo e la correzione del vpr.
int ier_stampa_vpr
flag d'errore su stampa profilo
radarelab::PolarScan< unsigned char > neve
matrice az-range che memorizza punti di neve
unsigned MyMAX_BIN
LUNGHEZZA MASSIMA.
int heating
variabile di riscaldamento
int ier_max
flag d'errore su calcolo quota max
int corr_vpr()
correzione vpr
int combina_profili(const radarelab::algo::InstantaneousVPR &inst_vpr)
funzione che combina il profilo verticale corrente con quello precedente tramite il metodo di Germann
long int gap
distanza temporale dall'ultimo file vpr [numero acquisizioni intercorse dall'ultimo vpr ?...
void merge_metodi(const radarelab::algo::CalcoloSteiner &steiner, const radarelab::algo::CalcoloVIZ &viz)
fa il merge dei metodi
int stampa_vpr()
stampa profilo combinato
int livmin
quota livello minimo calcolato
radarelab::algo::VPR vpr
Informa se il pixel è convettivo.
float resol[2]
array di parametri, fisso , RES_HOR_CIL E RES_VERT_CIL
int analyse_VPR(float *vpr_liq, int *snow, float *hliq)
funzione che analizza il profilo
int hvprmax
quota picco vpr
double hbbb
altezza bottom brightband
int trovo_hvprmax(int *hmax)
trova il massimo del profilo
CUM_BAC & cum_bac
oggeto CUM_BAC di riferimento
float t_ground
2m temperature
int profile_heating(bool has_inst_vpr)
calcola riscaldamento in quarti d'ora
double htbb
altezza top brightband
CalcoloVPR(CUM_BAC &cum_bac)
Constructor.
radarelab::PolarScan< unsigned char > corr_polar
correzione vpr in byte 0-128 negativa 128-256 positiva, in coord az-ra
Struttara per il calcolo del VPR.
const unsigned max_bin
dimensione matrice
radarelab::Image< unsigned char > cart
vol_pol interpolated in a cartesian map
void write_out(Assets &assets, const std::string tagname, const std::string format="PNG")
Produce in output le immagini PNG dei campi in $DIR_DEBUG.
SingleCart(unsigned max_bin)
Constructor.
void creo_cart(const radarelab::Volume< double > &volume, unsigned int el_index)
conversione da polare a cartesiano alta risoluzione
Struttura per gestire output cartesiano di un singolo campo.
Radar volume mapped to cylindrical coordinates.
Definisce le principali strutture che contengono i dati.