| 423 | } // namespace |
| 424 | |
| 425 | void seissol::initializer::initprocedure::initIO(seissol::SeisSol& seissolInstance) { |
| 426 | const auto rank = MPI::mpi.rank(); |
| 427 | logInfo(rank) << "Begin init output."; |
| 428 | |
| 429 | const auto& seissolParams = seissolInstance.getSeisSolParameters(); |
| 430 | const filesystem::path outputPath(seissolParams.output.prefix); |
| 431 | const auto outputDir = filesystem::directory_entry(outputPath.parent_path()); |
| 432 | if (!filesystem::exists(outputDir)) { |
| 433 | logWarning(rank) << "Output directory does not exist yet. We therefore create it now."; |
| 434 | if (rank == 0) { |
| 435 | filesystem::create_directory(outputDir); |
| 436 | } |
| 437 | } |
| 438 | seissol::MPI::barrier(MPI::mpi.comm()); |
| 439 | |
| 440 | enableWaveFieldOutput(seissolInstance); |
| 441 | setIntegralMask(seissolInstance); |
| 442 | enableFreeSurfaceOutput(seissolInstance); |
| 443 | initFaultOutputManager(seissolInstance); |
| 444 | setupCheckpointing(seissolInstance); |
| 445 | setupOutput(seissolInstance); |
| 446 | logInfo(rank) << "End init output."; |
| 447 | } |
nothing calls this directly
no test coverage detected