14 int num_aer_part = ls->globals()[
"number_aerosol"].value<
int>();
15 int npres = ls->globals()[
"number_pressure_level"].value<
int>();
16 int nband = ls->globals()[
"number_band"].value<
int>();
17 int sv_claimed_size = ls->globals()[
"state_vector"].value_ptr<
StateVector>()->observer_claimed_size();
21 num_aer_part + 1, nband));
22 if(ls->globals()[
"iteration_output"].value<
bool>()) {
25 out_iteration = outit;
26 solver()->add_observer(*outit);
28 throw Exception(
"Iteration_output can only be used with a Connor solver, not the newer IterativeSolver that Edwin developed");
31 (
new OutputHdf(output_name_ +
".error", npres,
33 num_aer_part + 1, nband));
34 std::vector<boost::shared_ptr<RegisterOutputBase> > out_reg
35 = ls->globals()[
"register_output"].value<std::vector<boost::shared_ptr<RegisterOutputBase> > >();
37 r->register_output(Regular_output);
38 r->register_output(Error_output);
40 r->register_output(out_iteration);
41 r->register_output_apriori(Regular_output);
42 r->register_output_apriori(Error_output);
This write the output of the Level 2 Full physics.
To avoid creating files when an error occurs, we create the file with the name ".generating" appended...
This is the base of the exception hierarchy for Full Physics code.
This write the output of the Level 2 Full physics.
This handles informing a set of interested objects when the state vector has updated.
Contains classes to abstract away details in various Spurr Radiative Transfer software.
virtual boost::shared_ptr< ConnorSolver > solver() const
Solver.
virtual void output(boost::shared_ptr< Output > &Regular_output, boost::shared_ptr< Output > &Error_output) const
Create output, for both a normal run and for an error run (either or both can be null if we don't wan...