Elaboradar 0.1
Caricamento in corso...
Ricerca in corso...
Nessun risultato

◆ classifier()

classifier::classifier ( const std::string & file)

Constructor from odim file.

Initialize basic input variables (vol_z vol_zdr vol_rhohv and vol_phidp)

Parametri
[in]file- pathname of the odim volume file to be inspected

Definizione alla linea 171 del file classifier.cpp.

171 :
172 vol_hca(NUM_AZ_X_PPI), pathname(file), vol_z(NUM_AZ_X_PPI),
173 vol_zdr(NUM_AZ_X_PPI), vol_rhohv(NUM_AZ_X_PPI), vol_phidp(NUM_AZ_X_PPI),
174 vol_vrad(NUM_AZ_X_PPI), vol_snr(NUM_AZ_X_PPI), vol_z_1km(NUM_AZ_X_PPI),
175 vol_zdr_2km(NUM_AZ_X_PPI), vol_rhohv_2km(NUM_AZ_X_PPI),
176 vol_phidp_2km(NUM_AZ_X_PPI), vol_phidp_6km(NUM_AZ_X_PPI),
177 vol_lkdp_2km(NUM_AZ_X_PPI), vol_lkdp_6km(NUM_AZ_X_PPI),
178 vol_sdz(NUM_AZ_X_PPI), vol_sdphidp(NUM_AZ_X_PPI),
179 vol_grad_z_phi(NUM_AZ_X_PPI), vol_grad_z_theta(NUM_AZ_X_PPI),
180 vol_grad_zdr_phi(NUM_AZ_X_PPI), vol_grad_zdr_theta(NUM_AZ_X_PPI),
181 vol_grad_phi_phi(NUM_AZ_X_PPI), vol_grad_phi_theta(NUM_AZ_X_PPI)
182{
183 printf("il nome del mio file è %s\n", pathname.c_str());
184
185 volume::ODIMLoader loader_all;
186
187 volume::Scans<double> full_volume_z;
188 volume::Scans<double> full_volume_zdr;
189 volume::Scans<double> full_volume_rhohv;
190 volume::Scans<double> full_volume_phidp;
191 volume::Scans<double> full_volume_vrad;
192 volume::Scans<double> full_volume_snr;
193
194 loader_all.request_quantity(odim::PRODUCT_QUANTITY_DBZH,&full_volume_z);
195 loader_all.request_quantity(odim::PRODUCT_QUANTITY_ZDR,&full_volume_zdr);
196 loader_all.request_quantity(odim::PRODUCT_QUANTITY_RHOHV,&full_volume_rhohv);
197 loader_all.request_quantity(odim::PRODUCT_QUANTITY_PHIDP,&full_volume_phidp);
198 loader_all.request_quantity(odim::PRODUCT_QUANTITY_VRAD,&full_volume_vrad);
199 loader_all.request_quantity(odim::PRODUCT_QUANTITY_SNR,&full_volume_snr);
200
201 loader_all.load(pathname);
202
203 auto elev_array = loader_all.get_nominal_elevations();
204 for (auto i: loader_all.to_load)
205 i.second->normalize_elevations(elev_array);
206
207 printf("Non so se è andato tutto bene, ma almeno sono arrivato in fondo\n");
208
209 algo::azimuthresample::Closest<double> resampler;
210 resampler.resample_volume(full_volume_z, vol_z, 1);
211 resampler.resample_volume(full_volume_zdr, vol_zdr, 1);
212 resampler.resample_volume(full_volume_rhohv, vol_rhohv, 1);
213 resampler.resample_volume(full_volume_phidp, vol_phidp, 1);
214 resampler.resample_volume(full_volume_vrad, vol_vrad, 1);
215 resampler.resample_volume(full_volume_snr, vol_snr, 1);
216 vol_hca.quantity="CLASS";
217
218 cout<<vol_z.load_info->acq_date<<endl;
219}
std::string quantity
Odim quantity name.
Definition volume.h:268
std::shared_ptr< LoadInfo > load_info
Polar volume information.
Definition volume.h:272
Sequence of PolarScans which can have a different beam count for each elevation.
Definition volume.h:264
Volume< double > vol_lkdp_6km
Definition classifier.h:416
Volume< double > vol_zdr_2km
Definition classifier.h:396
Volume< double > vol_grad_z_phi
Definition classifier.h:428
Volume< double > vol_phidp_6km
Definition classifier.h:408
Volume< double > vol_grad_z_theta
Definition classifier.h:432
Volume< double > vol_grad_zdr_phi
Definition classifier.h:436
Volume< double > vol_lkdp_2km
Definition classifier.h:412
Volume< double > vol_grad_phi_phi
Definition classifier.h:444
Volume< EchoClass > vol_hca
Definition classifier.h:356
Volume< double > vol_rhohv_2km
Definition classifier.h:400
Volume< double > vol_grad_zdr_theta
Definition classifier.h:440
Volume< double > vol_sdphidp
Definition classifier.h:424
Volume< double > vol_grad_phi_theta
Definition classifier.h:448
Volume< double > vol_phidp_2km
Definition classifier.h:404
void resample_volume(const Volume< T > &src, Volume< T > &dst, double src_beam_width) const
Merge.
std::vector< double > get_nominal_elevations()
Get list of available elevation.
Definition odim.h:41
void request_quantity(const std::string &name, Scans< double > *volume)
Define a request - Fill to_load attribute
Definition odim.cpp:29
void load(const std::string &pathname)
Load method.
Definition odim.cpp:34
Struttura che eredita da Loader e definisce i metodi per accedere ai dati ODIM.
Definition odim.h:23

Referenzia radarelab::volume::ODIMLoader::get_nominal_elevations(), radarelab::volume::ODIMLoader::load(), radarelab::volume::Scans< T >::load_info, pathname, radarelab::volume::Scans< T >::quantity, radarelab::volume::ODIMLoader::request_quantity(), radarelab::algo::azimuthresample::LevelwiseResampler< T >::resample_volume(), radarelab::volume::Loader::to_load, vol_hca, vol_phidp, vol_rhohv, vol_snr, vol_vrad, vol_z, e vol_zdr.