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

◆ read_t_ground()

float elaboradar::Assets::read_t_ground ( ) const

fornisce temperatura al suolo, da lettura file esterno

funzione che restituisce la temperatura al suolo

apre file temperature , legge lon lat e t, calcola differenze rispetto coordinate radar, se diff < soglia media il dato, stampa il nr di dati usati per la media e ritorna la temperatura

Restituisce
it_gr temperatura al suolo

Definizione alla linea 201 del file assets.cpp.

202{
203 LOG_CATEGORY("radar.vpr");
204 File in(logging_category);
205 if (!in.open_from_env("FILE_T", "rt"))
206 return NODATAVPR;
207
208 float media_t = 0;
209 int icount = 0;
210 float lon, lat, t;
211
212 while (1) {
213 if(fscanf(in, "%f %f %f \n",&lon,&lat,&t) == EOF) break;
214 if (fabs(conf_site->radarSite.lat_r-lat)<=maxdlat && fabs(conf_site->radarSite.lon_r-lon)<=maxdlon) {
215 ++icount;
216 media_t += t - 273.15;
217 }
218 }
219
220 if (icount == 0)
221 {
222 LOG_ERROR("Temperature data not found in $FILE_T=%s", in.name());
223 return NODATAVPR;
224 }
225
226 media_t /= (float)icount;
227 LOG_INFO("ho %i stazioni dati affidabili e la t media è %f\n", icount, media_t);
228 return media_t;
229}
Open a file taking its name from a given env variable.
Definition utils.h:22
RadarSite radarSite
Description of radar site.
Definition site.h:41

Referenzia radarelab::File::open_from_env(), e elaboradar::Site::radarSite.

Referenziato da elaboradar::CalcoloVPR::CalcoloVPR().