64 os <<
" " << x.
name() <<
" {\n";
80 os <<
" " << x.
nelem() <<
" agendas: {\n";
81 for (Index i = 0; i < x.
nelem(); i++) {
82 os <<
" " << x[i].name() <<
": {\n";
100 for (Index i = 0; i < x.
nelem(); i++) {
102 os <<
" " << x[i].idx <<
" " << x[i].fd[0] <<
" " << x[i].fd[1];
117 os <<
" CIA tag; Spectral range [cm-1]; Temp range [K]; # of sets\n";
118 for (Index i = 0; i < cia_data.
nelem(); i++)
119 for (Index j = 0; j < cia_data[i].DatasetCount(); j++) {
120 Vector temp_grid{cia_data[i].TemperatureGrid(j)};
121 Vector freq_grid{cia_data[i].FrequencyGrid(j)};
123 os << setprecision(2) << std::fixed <<
" " << cia_data[i].MoleculeName(0)
124 <<
"-CIA-" << cia_data[i].MoleculeName(1) <<
"-" << j <<
"; "
127 << std::fixed <<
"; " << temp_grid[0] <<
" - "
128 << temp_grid[temp_grid.nelem() - 1] <<
"; " << temp_grid.nelem()
141 for (Index i = 0; i < x.
nelem(); i++) {
156 for (Index i = 0; i < x.
nelem(); i++) {
158 os <<
"Ppath element " << i <<
": ";
160 Print(x[i], level, verbosity);
174 "Timer error: Nothing to output. Use timerStart/timerStop first.");
183 const auto walltime = std::chrono::duration<double, std::ratio<1>>(
186 os << std::fixed << setprecision(2) <<
" * Timing: CPU " << cputime <<
"s, "
187 <<
"Wall " << walltime <<
"s, " << 100. * cputime / walltime <<
"%CPU\n";
200 os <<
"TessemNN size: Inputs = " << x.
nb_inputs
209 const Index& only_allocated,
215 os <<
" Allocated workspace variables: \n";
217 os <<
" Workspace variables: \n";
218 for (Index i = 0; i < ws.
nelem(); i++) {
219 if (!only_allocated) {
227 os << ws.
depth(i) <<
"\n";
247 out = in1 + in2 + in3 + in4 + in5 + in6 + in7 + in8 + in9 + in10;
266 "Timer error: Unable to stop timer that's not running.");
268 timer.
realtime_end = std::chrono::high_resolution_clock::now();
284 out1 <<
" Forced exit.\n";
294 os <<
" Local value of iy_unit, agenda #" << index <<
" of "
295 << test_agenda_array.
nelem();
300 Numeric za, aa, dza_new, daa_new;
301 const Numeric za0 = 67, aa0 = 12, dza = 9, daa = 11;
303 cout << za <<
" " << aa << endl;
304 diff_za_aa(dza_new, daa_new, za0, aa0, za, aa);
305 cout << dza_new <<
" " << daa_new << endl;
334 const Index& level) {
342 const Index& level) {
350 const Index& level) {
361 cstr = std::getenv(envvar.c_str());
363 "Environment variable ", envvar,
" does not exist.")
364 str = cstr != NULL ?
String(cstr) :
"";
379 cstr = std::getenv(envvar.c_str());
381 "Environment variable ", envvar,
" "
382 "is empty or does not exist.")
383 std::istringstream is(cstr);
386 "Cannot convert environment variable ", envvar,
" "
394 omp_set_num_threads((
int)nthreads);
400 out1 <<
"No OpenMP support. Can't change number of threads.\n";
This file contains the definition of Array.
void arts_exit(int status)
This is the exit function of ARTS.
The global header file for ARTS.
Constants of physical expressions as constexpr.
int arts_omp_get_max_threads()
Wrapper for omp_get_max_threads.
void test_agenda_arrayExecute(Workspace &ws, const Index agenda_array_index, const String &iy_unit, const ArrayOfAgenda &input_agenda_array)
void print(ostream &os, const String &indent) const
Print an agenda.
String name() const
Agenda name.
This can be used to make arrays out of anything.
Index nelem() const ARTS_NOEXCEPT
Index get_screen_verbosity() const
Index get_agenda_verbosity() const
void set_screen_verbosity(Index v)
void set_agenda_verbosity(Index v)
Index get_file_verbosity() const
void set_file_verbosity(Index v)
void PrintWsvName(OutputStream &outstream, Index i) const
Print WSV name to output stream.
bool is_initialized(Index i) const
Checks existence of the given WSV.
Index nelem() const
Get the number of workspace variables.
Index depth(Index i) const
Return scoping level of the given WSV.
#define ARTS_USER_ERROR(...)
#define ARTS_USER_ERROR_IF(condition,...)
This file contains functions that are adapted from FASTEM code which is used to calculate surface emi...
void GetEnvironmentVariable(String &str, const String &envvar, const Verbosity &)
WORKSPACE METHOD: GetEnvironmentVariable.
void GetNumberOfThreads(Index &nthreads, const Verbosity &)
WORKSPACE METHOD: GetNumberOfThreads.
void Test(const Verbosity &)
WORKSPACE METHOD: Test.
constexpr Numeric SPEED_OF_LIGHT
void timerStart(Timer &timer, const Verbosity &)
WORKSPACE METHOD: timerStart.
void verbositySetAgenda(Verbosity &verbosity, const Index &level)
WORKSPACE METHOD: verbositySetAgenda.
void SetNumberOfThreads(const Index &, const Verbosity &verbosity)
WORKSPACE METHOD: SetNumberOfThreads.
void INCLUDE(const Verbosity &)
WORKSPACE METHOD: INCLUDE.
void verbosityInit(Verbosity &verbosity)
WORKSPACE METHOD: verbosityInit.
void TestArrayOfAgenda(Workspace &ws, const ArrayOfAgenda &test_agenda_array, const Index &index, const Verbosity &)
WORKSPACE METHOD: TestArrayOfAgenda.
void Error(const String &msg, const Verbosity &verbosity)
WORKSPACE METHOD: Error.
void Exit(const Verbosity &verbosity)
WORKSPACE METHOD: Exit.
void timerStop(Timer &timer, const Verbosity &)
WORKSPACE METHOD: timerStop.
void verbositySet(Verbosity &verbosity, const Index &agenda, const Index &screen, const Index &file)
WORKSPACE METHOD: verbositySet.
void verbositySetFile(Verbosity &verbosity, const Index &level)
WORKSPACE METHOD: verbositySetFile.
void StringJoin(String &out, const String &in1, const String &in2, const String &in3, const String &in4, const String &in5, const String &in6, const String &in7, const String &in8, const String &in9, const String &in10, const Verbosity &)
WORKSPACE METHOD: StringJoin.
void verbositySetScreen(Verbosity &verbosity, const Index &level)
WORKSPACE METHOD: verbositySetScreen.
void PrintWorkspace(Workspace &ws, const Index &only_allocated, const Index &level, const Verbosity &verbosity)
void Print(Workspace &ws, const Agenda &x, const Index &level, const Verbosity &verbosity)
Template functions for general supergeneric ws methods.
#define SWITCH_OUTPUT(x, y)
Verbosity verbosity_at_launch
The global message verbosity settings:
Declarations having to do with the four output streams.
This file contains the definition of String, the ARTS string class.
my_basic_string< char > String
The String type for ARTS.
constexpr Numeric speed_of_light
Speed of light [m/s] From: https://en.wikipedia.org/wiki/2019_redefinition_of_SI_base_units Date: 201...
void diff_za_aa(Numeric &dza, Numeric &daa, const Numeric &za0, const Numeric &aa0, const Numeric &za, const Numeric &aa)
Takes the difference of zenith and azimuth angles.
void add_za_aa(Numeric &za, Numeric &aa, const Numeric &za0, const Numeric &aa0, const Numeric &dza, const Numeric &daa)
Adds up zenith and azimuth angles.
Sensor modelling functions.
std::chrono::time_point< std::chrono::high_resolution_clock > realtime_start
std::clock_t cputime_start
std::chrono::time_point< std::chrono::high_resolution_clock > realtime_end
This file contains functions that are adapted from TESSEM code which is used to calculate surface emi...
This file contains the Workspace class.
Auxiliary header stuff related to workspace variable groups.