kspaceFirstOrder3D-CUDA  1.1
The CUDA/C++ implementation of the k-wave toolbox for the time-domain simulation of acoustic wave fields in 3D
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Parameters.h
Go to the documentation of this file.
1 /**
2  * @file Parameters.h
3  *
4  * @author Jiri Jaros \n
5  * Faculty of Information Technology \n
6  * Brno University of Technology \n
7  * jarosjir@fit.vutbr.cz
8  *
9  * @brief The header file containing the parameters of the simulation.
10  *
11  * @version kspaceFirstOrder3D 3.4
12  *
13  * @date 08 December 2011, 16:34 (created) \n
14  * 25 July 2016, 15:08 (revised)
15  *
16  * @section License
17  * This file is part of the C++ extension of the k-Wave Toolbox
18  * (http://www.k-wave.org).\n Copyright (C) 2016 Jiri Jaros and Bradley Treeby.
19  *
20  * This file is part of the k-Wave. k-Wave is free software: you can redistribute it and/or modify
21  * it under the terms of the GNU Lesser General Public License as published by the Free Software
22  * Foundation, either version 3 of the License, or (at your option) any later version.
23  *
24  * k-Wave is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
25  * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
26  * General Public License for more details.
27  *
28  * You should have received a copy of the GNU Lesser General Public License along with k-Wave.
29  * If not, see http://www.gnu.org/licenses/.
30  */
31 
32 #ifndef PARAMETERS_H
33 #define PARAMETERS_H
34 
35 #include <string>
36 
39 #include <Utils/DimensionSizes.h>
40 #include <HDF5/HDF5_File.h>
41 
42 /**
43  * @class TParameters
44  * @brief Class storing all parameters of the simulation.
45  * @brief Class storing all parameters of the simulation.
46  * @warning This is a singleton class.
47  *
48  */
50 {
51  public:
52 
53  /**
54  * @enum TSensorMaskType
55  * @brief Sensor mask type (linear indices or cuboid corners).
56  * @details Sensor mask type (linear indices or cuboid corners).
57  */
58  enum TSensorMaskType {INDEX = 0, CORNERS = 1};
59 
60  /// Get instance of the singleton class
61  static TParameters& GetInstance();
62 
63  /// Destructor.
64  virtual ~TParameters();
65 
66  /// Parse command line and read scalar values to init the class.
67  void Init(int argc, char** argv);
68 
69  /// Select cuda device for execution.
70  void SelectDevice();
71 
72  /// Print the simulation setup (all parameters)
73  void PrintSimulatoinSetup();
74 
75  /// Get class with CUDA Parameters (runtime setup), cosnt version
77  /// Get class with CUDA Parameters (runtime setup)
79 
80  /// Get input file handle
82  /// Get output file handle
84  /// Gest checkpoint file handle
86  /// Get File header handle
88 
89  /// Read scalar values from the input HDF5 file.
91  /// Save scalar values into the output HDF5 file
93 
94  /// Full dimension sizes of the simulation (real classes).
96  /// Reduced dimension sizes of the simulation (complex classes).
98 
99  /// Get Nt value.
100  size_t Get_nt() const {return nt;};
101  /// Get simulation time step.
102  size_t Get_t_index() const {return t_index;};
103  /// Set simulation time step - should be used only when recovering from checkpoint
104  void Set_t_index(const size_t new_t_index) {t_index = new_t_index;};
105  /// Increment simulation time step.
107 
108  /// Get dt value.
109  float Get_dt() const {return dt;};
110  /// Get dx value.
111  float Get_dx() const {return dx;};
112  /// Get dy value.
113  float Get_dy() const {return dy;};
114  /// Get dz value.
115  float Get_dz() const {return dz;};
116 
117  /// Get c_ref value.
118  float Get_c_ref() const {return c_ref;};
119  /// Get alpha_power value.
120  float Get_alpha_power() const {return alpha_power; };
121 
122  /// Get pml_x_size value.
123  size_t Get_pml_x_size() const {return pml_x_size;};
124  /// Get pml_y_size value.
125  size_t Get_pml_y_size() const {return pml_y_size;};
126  /// Get pml_z_size value.
127  size_t Get_pml_z_size() const {return pml_z_size;};
128 
129  /// Get pml_x_alpha_size value.
130  float Get_pml_x_alpha_size() const {return pml_x_alpha;};
131  /// Get pml_y_alpha_size value.
132  float Get_pml_y_alpha_size() const {return pml_y_alpha;};
133  /// Get pml_z_alpha_size value.
134  float Get_pml_z_alpha_size() const {return pml_z_alpha;};
135 
136  /// Get ux_source_flag value.
137  size_t Get_ux_source_flag() const {return ux_source_flag;};
138  /// Get uy_source_flag value.
139  size_t Get_uy_source_flag() const {return uy_source_flag;};
140  /// Get uz_source_flag value.
141  size_t Get_uz_source_flag() const {return uz_source_flag;};
142  /// Get u_source_many value.
143  size_t Get_u_source_many() const {return u_source_many;};
144  /// Get ux_source_mode value.
145  size_t Get_u_source_mode() const {return u_source_mode;};
146 
147  /// Get p_source_flag value.
148  size_t Get_p_source_flag() const {return p_source_flag; };
149  /// Get p0_source_flag value.
150  size_t Get_p0_source_flag() const {return p0_source_flag;};
151  /// Get p_source_many value.
152  size_t Get_p_source_many() const {return p_source_many;};
153  /// Get p_source_mode value.
154  size_t Get_p_source_mode() const {return p_source_mode;};
155 
156  /// Get nonuniform_grid_flag value.
158  /// Get absorbing_flag value.
159  size_t Get_absorbing_flag() const { return absorbing_flag; };
160  /// Get nonlinear_flag value.
161  size_t Get_nonlinear_flag() const { return nonlinear_flag; };
162  /// Get transducer_source_flag value.
164 
165  /// Get sensor mask type (linear or corners).
167  /// Get sensor_mask_index_size value.
169  /// Get number of cubes in the mask.
171 
172  /// Get u_source_index_size value.
174  /// Get p_source_index_size value.
176  /// Get transducer_source_input_size value.
178 
179  /// Get alpha_coeff_scalar_flag value.
181  /// Get alpha_coeff_scalar value. Note: cannot be const because of other optimizations.
183 
184  /// Get c0_scalar_flag value.
185  bool Get_c0_scalar_flag() const {return c0_scalar_flag; };
186  /// Get c0_scalar value.
187  float& Get_c0_scalar() {return c0_scalar; };
188 
189  /// Get absorb_eta_scalar value.
191  /// Get absorb_tau_scalar value.
193 
194  /// Get BonA_scalar_flag value.
195  bool Get_BonA_scalar_flag() const { return BonA_scalar_flag; };
196  /// Get BonA_scalar value.
197  float& Get_BonA_scalar() { return BonA_scalar; };
198 
199  /// Get rho0_scalar_flag value.
200  bool Get_rho0_scalar_flag() const {return rho0_scalar_flag; };
201  /// Get rho0_scalar value.
202  float& Get_rho0_scalar() {return rho0_scalar; };
203  /// Get rho0_sgx_scalar value.
205  /// Get rho0_sgy_scalar value.
207  /// Get rho0_sgz_scalar value.
209 
210  /// Get input file name.
211  std::string GetInputFileName() const {return commandLineParameters.GetInputFileName();};
212  /// Get output file name.
214  /// Get checkpoint filename.
216 
217  /// Get compression level.
219  /// Get number of threads.
221  /// Get progress print interval.
223 
224  /// Get start time index for sensor recording.
226 
227  /// Is checkpoint enabled?
229  /// Get checkpoint interval.
231 
232  /// Is --version specified at the command line?
233  bool IsVersion() const {return commandLineParameters.IsVersion();};
234  /// Is -p or --p_raw specified at the command line?
236  /// Is --p_rms specified at the command line?
238  /// Is --p_max specified at the command line?
240  /// Is --p_min specified at the command line?
242  /// Is --p_max_all specified at the command line?
244  /// Is --p_min_all specified at the command line?
246  /// Is --p_final specified at the command line?
248 
249  /// Is -u or --u_raw specified at the command line?
251  /// Is --u_non_staggered_raw set?
253  /// Is --u_raw specified at the command line?
255  /// Is --u_max specified at the command line?
257  /// Is --u_min specified at the command line?
259  /// Is --u_max_all specified at the command line?
261  /// Is --u_min_all specified at the command line?
263  /// Is --u_final specified at the command line
265 
266  /// is --copy_mask set
268 
269  /// Get Git hash of the code
270  std::string GetGitHash() const;
271 
272  protected:
273  /// Constructor.
274  TParameters();
275  /// Copy constructor,
276  TParameters(const TParameters& orig);
277 
278  private:
279  /// Class with CUDA Parameters (runtime setup)
281  /// Class with command line parameters
283 
284  /// Handle to the input HDF5 file.
286  /// Handle to the output HDF5 file.
288  /// Handle to the checkpoint HDF5 file.
290 
291  /// Handle to file header.
293 
294  /// Nt value.
295  size_t nt;
296  /// actual time index (time step of the simulation).
297  size_t t_index;
298 
299  /// dt value.
300  float dt;
301  /// dx value.
302  float dx;
303  /// dy value.
304  float dy;
305  /// dz value.
306  float dz;
307 
308  /// c_ref value.
309  float c_ref;
310  /// alpha_power value.
311  float alpha_power;
312 
313  /// Full 3D dimension sizes.
315  /// Reduced 3D dimension sizes.
317 
318  /// sensor mask type (0 = index, 1 = corners).
320  /// sensor_mask_ind_size value.
322  /// sensor_mask_corners_size - how many cuboids are in the mask.
324 
325  /// u_source_index_size value.
327  /// p_source_index_size value.
329  /// transducer_source_input_size value.
331 
332  /// ux_source_flag value.
334  /// uy_source_flag value.
336  /// uz_source_flag value.
338 
339  /// p_source_flag value.
341  /// p0_source_flag value.
343  /// transducer_source_flag value.
345 
346  /// u_source_many value.
348  /// u_source_mode value.
350 
351  /// p_source_mode value.
353  /// p_source_many value.
355 
356  /// nonuniform_grid_flag value.
358  /// absorbing_flag value.
360  /// nonlinear_flag value.
362 
363  /// pml_x_size value.
364  size_t pml_x_size;
365  /// pml_y_size value.
366  size_t pml_y_size;
367  /// pml_z_size value.
368  size_t pml_z_size;
369 
370  /// pml_x_alpha value.
371  float pml_x_alpha;
372  /// pml_y_alpha value.
373  float pml_y_alpha;
374  /// pml_z_alpha value.
375  float pml_z_alpha;
376 
377  /// alpha_coeff_scalar_flag value.
379  /// alpha_coeff_scalar value.
381 
382  /// c0_scalar_flag value.
384  /// c0_scalar value.
385  float c0_scalar;
386 
387  /// absorb_eta_scalar value.
389  /// absorb_tau_scalar value.
391 
392  /// BonA_scalar_flag value.
394  /// BonA_scalar value.
395  float BonA_scalar;
396 
397  /// rho0_scalar_flag value.
399  /// rho0_scalar value.
400  float rho0_scalar;
401  /// rho0_sgx_scalar value.
403  /// rho0_sgy_scalar value.
405  /// rho0_sgz_scalar value.
407 
408  /// singleton flag
410  /// singleton instance
412 
413  private:
414 
415 };// end of TParameters
416 //--------------------------------------------------------------------------------------------------
417 
418 #endif /* PARAMETERS_H */
Class for HDF5 header.
Definition: HDF5_File.h:730
TDimensionSizes GetReducedDimensionSizes() const
Reduced dimension sizes of the simulation (complex classes).
Definition: Parameters.h:97
std::string GetCheckpointFileName() const
Get checkpoint filename.
Definition: Parameters.h:215
float & Get_c0_scalar()
Get c0_scalar value.
Definition: Parameters.h:187
size_t GetNumberOfThreads() const
Get number of threads.
float Get_dz() const
Get dz value.
Definition: Parameters.h:115
size_t transducer_source_flag
transducer_source_flag value.
Definition: Parameters.h:344
size_t Get_sensor_mask_index_size() const
Get sensor_mask_index_size value.
Definition: Parameters.h:168
TCUDAParameters cudaParameters
Class with CUDA Parameters (runtime setup)
Definition: Parameters.h:280
bool IsStore_u_rms() const
Is –u_rms set?
static bool parametersInstanceFlag
singleton flag
Definition: Parameters.h:409
size_t Get_u_source_index_size() const
Get u_source_index_size value.
Definition: Parameters.h:173
size_t GetProgressPrintInterval() const
Get progress print interval.
Definition: Parameters.h:222
size_t transducer_source_input_size
transducer_source_input_size value.
Definition: Parameters.h:330
TSensorMaskType
Sensor mask type (linear indices or cuboid corners).
Definition: Parameters.h:58
size_t GetStartTimeIndex() const
Get start time index for sensor recording.
Definition: Parameters.h:225
const std::string & GetCheckpointFileName() const
Get Checkpoint file name.
bool IsStore_p_max() const
Is –p_max set?
size_t Get_pml_z_size() const
Get pml_z_size value.
Definition: Parameters.h:127
float c_ref
c_ref value.
Definition: Parameters.h:309
bool BonA_scalar_flag
BonA_scalar_flag value.
Definition: Parameters.h:393
float Get_c_ref() const
Get c_ref value.
Definition: Parameters.h:118
size_t p_source_flag
p_source_flag value.
Definition: Parameters.h:340
size_t GetNumberOfThreads() const
Get number of threads.
Definition: Parameters.h:220
bool IsStore_p_min_all() const
Is –p_min_all set?
bool IsStore_p_rms() const
Is –p_rms set?
float & Get_BonA_scalar()
Get BonA_scalar value.
Definition: Parameters.h:197
void ReadScalarsFromInputFile(THDF5_File &inputFile)
Read scalar values from the input HDF5 file.
Definition: Parameters.cpp:207
const std::string & GetOutputFileName() const
Get output file name.
size_t u_source_mode
u_source_mode value.
Definition: Parameters.h:349
bool IsStore_p_final() const
Is –p_final set?
size_t ux_source_flag
ux_source_flag value.
Definition: Parameters.h:333
const std::string & GetInputFileName() const
Get input file name.
bool alpha_coeff_scalar_flag
alpha_coeff_scalar_flag value.
Definition: Parameters.h:378
The header file for the class for setting CUDA kernel parameters.
size_t GetCheckpointInterval() const
Get checkpoint interval.
float pml_x_alpha
pml_x_alpha value.
Definition: Parameters.h:371
size_t Get_ux_source_flag() const
Get ux_source_flag value.
Definition: Parameters.h:137
bool IsStore_u_min() const
Is –u_min specified at the command line?
Definition: Parameters.h:258
TDimensionSizes reducedDimensionSizes
Reduced 3D dimension sizes.
Definition: Parameters.h:316
static TParameters & GetInstance()
Get instance of the singleton class.
Definition: Parameters.cpp:70
bool IsVersion() const
Is –version specified at the command line?
Definition: Parameters.h:233
bool IsStore_u_raw() const
Is -u or –u_raw specified at the command line?
Definition: Parameters.h:250
float absorb_eta_scalar
absorb_eta_scalar value.
Definition: Parameters.h:388
void Set_t_index(const size_t new_t_index)
Set simulation time step - should be used only when recovering from checkpoint.
Definition: Parameters.h:104
bool c0_scalar_flag
c0_scalar_flag value.
Definition: Parameters.h:383
size_t Get_sensor_mask_corners_size() const
Get number of cubes in the mask.
Definition: Parameters.h:170
size_t nonlinear_flag
nonlinear_flag value.
Definition: Parameters.h:361
size_t p_source_mode
p_source_mode value.
Definition: Parameters.h:352
TCUDAParameters & GetCudaParameters()
Get class with CUDA Parameters (runtime setup)
Definition: Parameters.h:78
std::string GetInputFileName() const
Get input file name.
Definition: Parameters.h:211
size_t u_source_index_size
u_source_index_size value.
Definition: Parameters.h:326
float dz
dz value.
Definition: Parameters.h:306
float pml_z_alpha
pml_z_alpha value.
Definition: Parameters.h:375
bool Get_c0_scalar_flag() const
Get c0_scalar_flag value.
Definition: Parameters.h:185
bool IsStore_u_non_staggered_raw() const
Is –u_non_staggered_raw set?
float BonA_scalar
BonA_scalar value.
Definition: Parameters.h:395
The header file containing the HDF5 related classes.
bool IsStore_p_min() const
Is –p_min set?
float alpha_power
alpha_power value.
Definition: Parameters.h:311
static TParameters * parametersSingleInstance
singleton instance
Definition: Parameters.h:411
size_t Get_u_source_many() const
Get u_source_many value.
Definition: Parameters.h:143
bool Get_BonA_scalar_flag() const
Get BonA_scalar_flag value.
Definition: Parameters.h:195
size_t nonuniform_grid_flag
nonuniform_grid_flag value.
Definition: Parameters.h:357
float dt
dt value.
Definition: Parameters.h:300
size_t uz_source_flag
uz_source_flag value.
Definition: Parameters.h:337
bool IsStore_u_max() const
Is –u_max set?
THDF5_File inputFile
Handle to the input HDF5 file.
Definition: Parameters.h:285
bool IsCheckpointEnabled() const
Is checkpoint enabled?
bool Get_alpha_coeff_scalar_flag() const
Get alpha_coeff_scalar_flag value.
Definition: Parameters.h:180
Class responsible for CUDA runtime setup.
float pml_y_alpha
pml_y_alpha value.
Definition: Parameters.h:373
size_t absorbing_flag
absorbing_flag value.
Definition: Parameters.h:359
bool IsStore_u_rms() const
Is –u_raw specified at the command line?
Definition: Parameters.h:254
size_t Get_t_index() const
Get simulation time step.
Definition: Parameters.h:102
size_t GetProgressPrintInterval() const
Get progress print interval.
virtual ~TParameters()
Destructor.
Definition: Parameters.cpp:88
TDimensionSizes GetFullDimensionSizes() const
Full dimension sizes of the simulation (real classes).
Definition: Parameters.h:95
bool IsStore_p_raw() const
Is -p or –p_raw specified at the command line?
Definition: Parameters.h:235
THDF5_File outputFile
Handle to the output HDF5 file.
Definition: Parameters.h:287
bool IsStore_p_rms() const
Is –p_rms specified at the command line?
Definition: Parameters.h:237
TParameters()
Constructor.
Definition: Parameters.cpp:533
bool IsStore_p_min_all() const
Is –p_min_all specified at the command line?
Definition: Parameters.h:245
bool IsStore_p_min() const
Is –p_min specified at the command line?
Definition: Parameters.h:241
size_t sensor_mask_ind_size
sensor_mask_ind_size value.
Definition: Parameters.h:321
float c0_scalar
c0_scalar value.
Definition: Parameters.h:385
size_t sensor_mask_corners_size
sensor_mask_corners_size - how many cuboids are in the mask.
Definition: Parameters.h:323
void SelectDevice()
Select cuda device for execution.
Definition: Parameters.cpp:144
bool IsStore_u_non_staggered_raw() const
Is –u_non_staggered_raw set?
Definition: Parameters.h:252
bool IsStore_u_min_all() const
Is –u_min_all specified at the command line?
Definition: Parameters.h:262
size_t Get_pml_x_size() const
Get pml_x_size value.
Definition: Parameters.h:123
float Get_pml_z_alpha_size() const
Get pml_z_alpha_size value.
Definition: Parameters.h:134
float dx
dx value.
Definition: Parameters.h:302
Class storing all parameters of the simulation.
Definition: Parameters.h:49
size_t nt
Nt value.
Definition: Parameters.h:295
size_t Get_uy_source_flag() const
Get uy_source_flag value.
Definition: Parameters.h:139
const TCUDAParameters & GetCudaParameters() const
Get class with CUDA Parameters (runtime setup), cosnt version.
Definition: Parameters.h:76
size_t Get_p_source_mode() const
Get p_source_mode value.
Definition: Parameters.h:154
void PrintSimulatoinSetup()
Print the simulation setup (all parameters)
Definition: Parameters.cpp:167
THDF5_FileHeader & GetFileHeader()
Get File header handle.
Definition: Parameters.h:87
float rho0_sgz_scalar
rho0_sgz_scalar value.
Definition: Parameters.h:406
size_t uy_source_flag
uy_source_flag value.
Definition: Parameters.h:335
THDF5_File & GetCheckpointFile()
Gest checkpoint file handle.
Definition: Parameters.h:85
bool IsStore_p_final() const
Is –p_final specified at the command line?
Definition: Parameters.h:247
size_t Get_p_source_many() const
Get p_source_many value.
Definition: Parameters.h:152
size_t Get_p0_source_flag() const
Get p0_source_flag value.
Definition: Parameters.h:150
float Get_dt() const
Get dt value.
Definition: Parameters.h:109
float Get_dx() const
Get dx value.
Definition: Parameters.h:111
The header file containing the structure with 3D dimension sizes.
bool IsStore_u_final() const
Is –u_final set?
float Get_dy() const
Get dy value.
Definition: Parameters.h:113
size_t t_index
actual time index (time step of the simulation).
Definition: Parameters.h:297
size_t Get_nonlinear_flag() const
Get nonlinear_flag value.
Definition: Parameters.h:161
float & Get_absorb_eta_scalar()
Get absorb_eta_scalar value.
Definition: Parameters.h:190
size_t pml_x_size
pml_x_size value.
Definition: Parameters.h:364
float & Get_rho0_sgy_scalar()
Get rho0_sgy_scalar value.
Definition: Parameters.h:206
float & Get_rho0_scalar()
Get rho0_scalar value.
Definition: Parameters.h:202
bool IsStore_u_min_all() const
Is –u_min set?
float dy
dy value.
Definition: Parameters.h:304
size_t Get_uz_source_flag() const
Get uz_source_flag value.
Definition: Parameters.h:141
bool IsStore_p_max_all() const
Is –p_max_all specified at the command line?
Definition: Parameters.h:243
void SaveScalarsToFile(THDF5_File &outputFile)
Save scalar values into the output HDF5 file.
Definition: Parameters.cpp:432
THDF5_FileHeader fileHeader
Handle to file header.
Definition: Parameters.h:292
size_t Get_pml_y_size() const
Get pml_y_size value.
Definition: Parameters.h:125
float Get_pml_x_alpha_size() const
Get pml_x_alpha_size value.
Definition: Parameters.h:130
size_t Get_transducer_source_input_size() const
Get transducer_source_input_size value.
Definition: Parameters.h:177
size_t p0_source_flag
p0_source_flag value.
Definition: Parameters.h:342
float Get_pml_y_alpha_size() const
Get pml_y_alpha_size value.
Definition: Parameters.h:132
size_t GetCompressionLevel() const
Get compression level.
void Init(int argc, char **argv)
Parse command line and read scalar values to init the class.
Definition: Parameters.cpp:106
size_t pml_z_size
pml_z_size value.
Definition: Parameters.h:368
The class to parse and store command line parameters.
float rho0_scalar
rho0_scalar value.
Definition: Parameters.h:400
size_t Get_p_source_flag() const
Get p_source_flag value.
Definition: Parameters.h:148
float rho0_sgx_scalar
rho0_sgx_scalar value.
Definition: Parameters.h:402
TSensorMaskType sensor_mask_type
sensor mask type (0 = index, 1 = corners).
Definition: Parameters.h:319
size_t Get_transducer_source_flag() const
Get transducer_source_flag value.
Definition: Parameters.h:163
bool IsStore_u_min() const
Is –u_min set?
bool IsCopySensorMask() const
Is –copy_mask set set?
size_t GetCompressionLevel() const
Get compression level.
Definition: Parameters.h:218
size_t p_source_index_size
p_source_index_size value.
Definition: Parameters.h:328
bool rho0_scalar_flag
rho0_scalar_flag value.
Definition: Parameters.h:398
THDF5_File checkpointFile
Handle to the checkpoint HDF5 file.
Definition: Parameters.h:289
bool IsStore_u_max() const
Is –u_max specified at the command line?
Definition: Parameters.h:256
bool IsStore_u_final() const
Is –u_final specified at the command line.
Definition: Parameters.h:264
bool IsStore_u_max_all() const
Is –u_max_all specified at the command line?
Definition: Parameters.h:260
float absorb_tau_scalar
absorb_tau_scalar value.
Definition: Parameters.h:390
size_t Get_u_source_mode() const
Get ux_source_mode value.
Definition: Parameters.h:145
bool IsStore_p_max() const
Is –p_max specified at the command line?
Definition: Parameters.h:239
bool IsStore_u_raw() const
Is –u_raw set?
size_t Get_p_source_index_size() const
Get p_source_index_size value.
Definition: Parameters.h:175
float & Get_absorb_tau_scalar()
Get absorb_tau_scalar value.
Definition: Parameters.h:192
The header file containing the command line parameters.
bool Get_rho0_scalar_flag() const
Get rho0_scalar_flag value.
Definition: Parameters.h:200
bool IsStore_p_max_all() const
Is –p_max_all set?
THDF5_File & GetInputFile()
Get input file handle.
Definition: Parameters.h:81
float & Get_alpha_coeff_scalar()
Get alpha_coeff_scalar value. Note: cannot be const because of other optimizations.
Definition: Parameters.h:182
float Get_alpha_power() const
Get alpha_power value.
Definition: Parameters.h:120
size_t Get_absorbing_flag() const
Get absorbing_flag value.
Definition: Parameters.h:159
TCommandLineParameters commandLineParameters
Class with command line parameters.
Definition: Parameters.h:282
TDimensionSizes fullDimensionSizes
Full 3D dimension sizes.
Definition: Parameters.h:314
size_t p_source_many
p_source_many value.
Definition: Parameters.h:354
size_t Get_nonuniform_grid_flag() const
Get nonuniform_grid_flag value.
Definition: Parameters.h:157
size_t u_source_many
u_source_many value.
Definition: Parameters.h:347
void Increment_t_index()
Increment simulation time step.
Definition: Parameters.h:106
bool IsVersion() const
Is –version flag set?
float rho0_sgy_scalar
rho0_sgy_scalar value.
Definition: Parameters.h:404
size_t pml_y_size
pml_y_size value.
Definition: Parameters.h:366
size_t GetStartTimeIndex() const
Get start time index when sensor data collection begins.
size_t Get_nt() const
Get Nt value.
Definition: Parameters.h:100
std::string GetOutputFileName() const
Get output file name.
Definition: Parameters.h:213
std::string GetGitHash() const
Get Git hash of the code.
Definition: Parameters.cpp:513
float alpha_coeff_scalar
alpha_coeff_scalar value.
Definition: Parameters.h:380
float & Get_rho0_sgx_scalar()
Get rho0_sgx_scalar value.
Definition: Parameters.h:204
TSensorMaskType Get_sensor_mask_type() const
Get sensor mask type (linear or corners).
Definition: Parameters.h:166
bool IsCopySensorMask() const
is –copy_mask set
Definition: Parameters.h:267
bool IsCheckpointEnabled() const
Is checkpoint enabled?
Definition: Parameters.h:228
Class wrapping the HDF5 routines.
Definition: HDF5_File.h:500
bool IsStore_u_max_all() const
Is –u_max_all set?
Structure with 4D dimension sizes (3 in space and 1 in time).
size_t GetCheckpointInterval() const
Get checkpoint interval.
Definition: Parameters.h:230
bool IsStore_p_raw() const
Is –p_raw set?
THDF5_File & GetOutputFile()
Get output file handle.
Definition: Parameters.h:83
float & Get_rho0_sgz_scalar()
Get rho0_sgz_scalar value.
Definition: Parameters.h:208