1 #ifndef ERF_RADIATION_DIAGNOSTICS_H_
2 #define ERF_RADIATION_DIAGNOSTICS_H_
8 #include <AMReX_REAL.H>
87 bool diag_enable =
true,
bool diag_stdout_enable =
true,
88 bool diag_tagged_enable =
true,
bool diag_regtest_line_enable =
true,
89 bool diag_csv_enable =
true,
const std::string& diag_callsite_mode =
"both",
130 amrex::Real seb_residual_mean = std::numeric_limits<amrex::Real>::quiet_NaN(),
131 amrex::Real seb_residual_max = std::numeric_limits<amrex::Real>::quiet_NaN(),
132 amrex::Real t_s_mean = std::numeric_limits<amrex::Real>::quiet_NaN(),
133 amrex::Real t_s_max = std::numeric_limits<amrex::Real>::quiet_NaN(),
134 amrex::Real q_s_mean = std::numeric_limits<amrex::Real>::quiet_NaN(),
135 amrex::Real q_s_max = std::numeric_limits<amrex::Real>::quiet_NaN());
amrex::Real Real
Definition: ERF_ShocInterface.H:19
CSV logger and debug-print manager for radiation module.
Definition: ERF_RadiationDiagnostics.H:70
bool m_diag_tagged_enable
Definition: ERF_RadiationDiagnostics.H:153
bool m_diag_regtest_line_enable
Definition: ERF_RadiationDiagnostics.H:154
int m_last_write_step
Guard against duplicate writes.
Definition: ERF_RadiationDiagnostics.H:145
int m_verbosity
Debug verbosity level.
Definition: ERF_RadiationDiagnostics.H:143
bool m_diag_stdout_enable
Definition: ERF_RadiationDiagnostics.H:152
std::string m_diag_file
Output CSV file path.
Definition: ERF_RadiationDiagnostics.H:144
bool m_header_written
Track whether CSV header was written.
Definition: ERF_RadiationDiagnostics.H:146
void write_header_if_needed()
Write CSV header if file is new or doesn't exist.
Definition: ERF_RadiationDiagnostics.cpp:38
std::string m_diag_callsite_mode
Definition: ERF_RadiationDiagnostics.H:156
amrex::Real m_last_write_time
Definition: ERF_RadiationDiagnostics.H:148
RadiationDiagnostics(int verbosity, const std::string &diag_file, bool diag_enable=true, bool diag_stdout_enable=true, bool diag_tagged_enable=true, bool diag_regtest_line_enable=true, bool diag_csv_enable=true, const std::string &diag_callsite_mode="both", amrex::Real diag_dedup_tol=1.0e-12)
Constructor.
Definition: ERF_RadiationDiagnostics.cpp:12
void append(int step, amrex::Real time, std::string const &call_site, amrex::Real sw_surface, amrex::Real sw_toa, amrex::Real sw_up_toa, amrex::Real lw_net_surface, amrex::Real lw_up_toa, amrex::Real heating_rate_max, amrex::Real seb_residual_mean=std::numeric_limits< amrex::Real >::quiet_NaN(), amrex::Real seb_residual_max=std::numeric_limits< amrex::Real >::quiet_NaN(), amrex::Real t_s_mean=std::numeric_limits< amrex::Real >::quiet_NaN(), amrex::Real t_s_max=std::numeric_limits< amrex::Real >::quiet_NaN(), amrex::Real q_s_mean=std::numeric_limits< amrex::Real >::quiet_NaN(), amrex::Real q_s_max=std::numeric_limits< amrex::Real >::quiet_NaN())
Append a diagnostic row to the CSV file.
Definition: ERF_RadiationDiagnostics.cpp:75
std::string m_last_write_call_site
Definition: ERF_RadiationDiagnostics.H:147
amrex::Real m_diag_dedup_tol
Definition: ERF_RadiationDiagnostics.H:157
~RadiationDiagnostics()
Destructor.
Definition: ERF_RadiationDiagnostics.cpp:32
bool m_diag_csv_enable
Definition: ERF_RadiationDiagnostics.H:155
bool m_diag_enable
Definition: ERF_RadiationDiagnostics.H:151