| 45 | #define _eh(status) _checkH5Err(status, __FILE__, __LINE__, rank) |
| 46 | |
| 47 | void postMeshread(seissol::geometry::MeshReader& meshReader, |
| 48 | const Eigen::Vector3d& displacement, |
| 49 | const Eigen::Matrix3d& scalingMatrix, |
| 50 | seissol::SeisSol& seissolInstance) { |
| 51 | logInfo(seissol::MPI::mpi.rank()) << "The mesh has been read. Starting post processing."; |
| 52 | |
| 53 | if (meshReader.getElements().empty()) { |
| 54 | logWarning() << "There are no local mesh elements on this rank (" << seissol::MPI::mpi.rank() |
| 55 | << "). Is your mesh big enough?"; |
| 56 | } |
| 57 | |
| 58 | meshReader.displaceMesh(displacement); |
| 59 | meshReader.scaleMesh(scalingMatrix); |
| 60 | |
| 61 | logInfo(seissol::MPI::mpi.rank()) << "Exchanging ghostlayer metadata."; |
| 62 | meshReader.exchangeGhostlayerMetadata(); |
| 63 | |
| 64 | logInfo(seissol::MPI::mpi.rank()) << "Extracting fault information."; |
| 65 | auto* drParameters = seissolInstance.getMemoryManager().getDRParameters(); |
| 66 | const VrtxCoords center{drParameters->referencePoint[0], |
| 67 | drParameters->referencePoint[1], |
| 68 | drParameters->referencePoint[2]}; |
| 69 | meshReader.extractFaultInformation(center, drParameters->refPointMethod); |
| 70 | |
| 71 | seissolInstance.getLtsLayout().setMesh(meshReader); |
| 72 | } |
| 73 | |
| 74 | void readMeshPUML(const seissol::initializer::parameters::SeisSolParameters& seissolParams, |
| 75 | seissol::SeisSol& seissolInstance) { |
no test coverage detected