◆ DataFiles()
DataFiles::DataFiles |
( |
int |
argc, |
|
|
char * |
argv[] |
|
) |
| |
|
inline |
opens the input and output data files
45 size_t dot =
name.find_last_of(
'.');
47 if (
dot==std::string::npos) {
55 if (afterDot >=
'0' && afterDot <=
'9') {
62 size_t dot =
name.find_last_of(
'.');
67 for(
unsigned processorID = 0;
true; ++processorID) {
70 auto* file =
new std::ifstream(
fileName.c_str());
74 iFiles.emplace_back(file,0);
82 oFile.open(oFileName);
86 logger(
INFO,
"Opened % for output", oFileName);
std::string getName(int argc, char *argv[])
Definition: CombineParallelDataFiles.cpp:16
Logger< MERCURYDPM_LOGLEVEL > logger("MercuryKernel")
Definition of different loggers with certain modules. A user can define its own custom logger here.
std::ofstream oFile
Definition: CombineParallelDataFiles.cpp:31
std::vector< IFile > iFiles
Definition: CombineParallelDataFiles.cpp:30
void write()
Definition: CombineParallelDataFiles.cpp:104
std::string ending
Definition: CombineParallelDataFiles.cpp:33
Scalar EIGEN_BLAS_FUNC_NAME() dot(int *n, Scalar *px, int *incx, Scalar *py, int *incy)
Definition: level1_real_impl.h:52
std::string string(const unsigned &i)
Definition: oomph_definitions.cc:286
std::string to_string(T object, unsigned float_precision=8)
Definition: oomph_utilities.h:189
string name
Definition: plotDoE.py:33
References dot(), ending, ERROR, UniformPSDSelfTest::fileName, getName(), iFiles, INFO, logger, plotDoE::name, oFile, oomph::Global_string_for_annotation::string(), oomph::StringConversion::to_string(), and write().
◆ ~DataFiles()
DataFiles::~DataFiles |
( |
| ) |
|
|
inline |
closes the input/output data files
96 for (
auto iFile :
iFiles) {
References iFiles.
◆ write()
void DataFiles::write |
( |
| ) |
|
|
inline |
write all time steps
bool writeTimeStep()
Definition: CombineParallelDataFiles.cpp:114
unsigned oCount
Definition: CombineParallelDataFiles.cpp:32
References INFO, logger, oCount, and writeTimeStep().
Referenced by DataFiles().
◆ writeTimeStep()
bool DataFiles::writeTimeStep |
( |
| ) |
|
|
inlineprivate |
writes single timestep
119 for(
auto& iFile :
iFiles) {
121 *iFile.file >> iFile.n;
124 *iFile.file >> iFile.time;
126 if (iFile.file->fail())
return false;
128 std::getline(*iFile.file,
line);
133 if (
line != headerLine || iFile.time < time) {
135 *iFile.file >> iFile.n;
137 *iFile.file >> iFile.time;
138 if (iFile.file->fail())
return false;
139 std::getline(*iFile.file,
line);
140 }
while (
line != headerLine || iFile.time < time);
141 logger(
WARN,
"Mistake detected; moving forward to time %",iFile.time);
152 for(
auto& iFile :
iFiles) {
153 for (
unsigned i=0;
i<iFile.n; ++
i) {
154 std::getline(*iFile.file,
line);
int i
Definition: BiCGSTAB_step_by_step.cpp:9
const unsigned n
Definition: CG3DPackingUnitTest.cpp:11
double Mdouble
Definition: GeneralDefine.h:13
line
Definition: calibrate.py:103
References i, iFiles, INFO, calibrate::line, logger, n, oCount, oFile, oomph::Global_string_for_annotation::string(), and WARN.
Referenced by write().
◆ ending
std::string DataFiles::ending = "" |
|
private |
◆ iFiles
std::vector<IFile> DataFiles::iFiles |
|
private |
◆ oCount
◆ oFile
std::ofstream DataFiles::oFile |
|
private |
The documentation for this class was generated from the following file: