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

◆ write_vpr0()

void elaboradar::Assets::write_vpr0 ( const radarelab::algo::VPR & vpr)

Write in $VPR0_FILE the vpr calculated.

Parametri
[in]vpr- vpr profile in mmh-1 [rain intensity]
[in]area- areal coverage for each layer km^2/1000

Definizione alla linea 437 del file assets.cpp.

438{
439 const char* fname = getenv("VPR0_FILE");
440 if (!fname) throw runtime_error("$VPR0_FILE (ultimo vpr) is not set");
441 FILE* out = fopen_checked(fname, "wt", "ultimo vpr");
442 for (unsigned i = 0; i < vpr.size(); ++i)
443 if (fprintf(out, " %10.3f %li\n", vpr.val[i], vpr.area[i]) < 0)
444 {
445 LOG_ERROR("$VPR0_FILE=%s cannot be written: %s", fname, strerror(errno));
446 fclose(out);
447 throw std::runtime_error("cannot write to $VPR0_FILE");
448 }
449 fclose(out);
450}
FILE * fopen_checked(const char *fname, const char *mode, const char *description)
A wrapper of fopen that throws an exception if it cannot open the file.
Definition utils.cpp:144

Referenzia radarelab::fopen_checked().

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