4 #ifndef ERF_STATIONSAMPLER_H_
5 #define ERF_STATIONSAMPLER_H_
11 #include <AMReX_BoxArray.H>
12 #include <AMReX_REAL.H>
13 #include <AMReX_Vector.H>
111 amrex::Vector<StationVar>
vars;
112 amrex::Vector<StationLoc>
locs;
124 for (
const auto& v :
vars) {
if (!v.is_2d) {
return true; } }
185 [[nodiscard]]
bool stencilsValidFor (
const amrex::Vector<amrex::BoxArray>& ba,
186 int finest_level)
const;
222 std::string
m_dir =
"Output_Stations";
amrex::Real Real
Definition: ERF_ShocInterface.H:19
Definition: ERF_StationSampler.H:130
StationSampler(const std::string &pp_prefix)
Definition: ERF_StationSampler.cpp:222
bool m_write_timestamp
Definition: ERF_StationSampler.H:219
bool m_levels_reported
Definition: ERF_StationSampler.H:218
int m_ncolumns
Definition: ERF_StationSampler.H:204
bool m_is_restart
Definition: ERF_StationSampler.H:216
amrex::Vector< Station > m_stations
Definition: ERF_StationSampler.H:203
std::string columnSignature(const Station &station) const
Definition: ERF_StationSampler.cpp:403
void buildColumns()
Definition: ERF_StationSampler.cpp:356
amrex::Vector< Station > & stations()
Definition: ERF_StationSampler.H:138
void setRestart(bool is_restart)
Definition: ERF_StationSampler.H:155
amrex::Vector< amrex::BoxArray > m_stencil_grids
Definition: ERF_StationSampler.H:214
int m_buffer_steps
Definition: ERF_StationSampler.H:205
bool m_low_height_warned
Definition: ERF_StationSampler.H:217
amrex::Vector< amrex::Real > m_epoch_times
Definition: ERF_StationSampler.H:209
void writeHeader(const Station &station, std::ostream &os) const
Definition: ERF_StationSampler.cpp:441
amrex::Vector< amrex::Real > m_rows
Definition: ERF_StationSampler.H:210
void flush()
Definition: ERF_StationSampler.cpp:616
bool empty() const
Definition: ERF_StationSampler.H:136
const amrex::Vector< Station > & stations() const
Definition: ERF_StationSampler.H:139
void setLevelsReported()
Definition: ERF_StationSampler.H:177
void checkHeaderMatches(const Station &station, const std::string &filename) const
Definition: ERF_StationSampler.cpp:503
void checkRestartFiles() const
Definition: ERF_StationSampler.cpp:581
std::string m_datetime_format
Definition: ERF_StationSampler.H:220
void rememberStencilGrids(const amrex::Vector< amrex::BoxArray > &ba, int finest_level)
Definition: ERF_StationSampler.cpp:609
bool stencilsValidFor(const amrex::Vector< amrex::BoxArray > &ba, int finest_level) const
Definition: ERF_StationSampler.cpp:599
void appendRow(amrex::Real time, amrex::Real epoch_time, const amrex::Vector< amrex::Real > &values)
Definition: ERF_StationSampler.cpp:376
void setWriteTimestamp(bool write_timestamp, const std::string &datetime_format)
Definition: ERF_StationSampler.H:162
int numColumns() const
Definition: ERF_StationSampler.H:141
std::string m_dir
Definition: ERF_StationSampler.H:222
amrex::Vector< amrex::Real > m_times
Definition: ERF_StationSampler.H:208
void setLowHeightWarned()
Definition: ERF_StationSampler.H:172
int bufferSteps() const
Definition: ERF_StationSampler.H:167
bool lowHeightWarned() const
Definition: ERF_StationSampler.H:171
bool m_opened
Definition: ERF_StationSampler.H:223
bool levelsReported() const
Definition: ERF_StationSampler.H:176
Definition: ERF_StationSampler.H:101
int height
Definition: ERF_StationSampler.H:104
int station
Definition: ERF_StationSampler.H:102
int loc
Definition: ERF_StationSampler.H:103
int var
Definition: ERF_StationSampler.H:105
Definition: ERF_StationSampler.H:62
amrex::Real req_lat
Definition: ERF_StationSampler.H:66
amrex::Real wx
Definition: ERF_StationSampler.H:86
int j1
Definition: ERF_StationSampler.H:85
amrex::Real wy
Definition: ERF_StationSampler.H:87
amrex::Real req_lon
Definition: ERF_StationSampler.H:67
int jc
Definition: ERF_StationSampler.H:81
int i0
Definition: ERF_StationSampler.H:82
int ktop
Definition: ERF_StationSampler.H:88
amrex::Real got_lat
Definition: ERF_StationSampler.H:75
int col_begin
Definition: ERF_StationSampler.H:93
amrex::Real x
Definition: ERF_StationSampler.H:70
int ic
Definition: ERF_StationSampler.H:80
int i1
Definition: ERF_StationSampler.H:84
bool use_latlon
Definition: ERF_StationSampler.H:63
amrex::Real y
Definition: ERF_StationSampler.H:71
amrex::Real got_lon
Definition: ERF_StationSampler.H:76
int j0
Definition: ERF_StationSampler.H:83
int lev
Definition: ERF_StationSampler.H:79
Definition: ERF_StationSampler.H:52
std::string units
Definition: ERF_StationSampler.H:54
amrex::Real missing_value
Definition: ERF_StationSampler.H:57
int comp
Definition: ERF_StationSampler.H:58
std::string name
Definition: ERF_StationSampler.H:53
bool is_missing
Definition: ERF_StationSampler.H:56
bool is_2d
Definition: ERF_StationSampler.H:55
Definition: ERF_StationSampler.H:109
amrex::Vector< StationLoc > locs
Definition: ERF_StationSampler.H:112
bool has_3d_vars() const
Definition: ERF_StationSampler.H:123
bool heights_are_agl
Definition: ERF_StationSampler.H:118
std::string name
Definition: ERF_StationSampler.H:110
amrex::Vector< amrex::Real > heights
Definition: ERF_StationSampler.H:117
amrex::Vector< StationVar > vars
Definition: ERF_StationSampler.H:111
amrex::Vector< int > columns
Definition: ERF_StationSampler.H:121