OGS
postLIE.cpp File Reference

Detailed Description

Definition in file postLIE.cpp.

#include <tclap/CmdLine.h>
#include <mpi.h>
#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/xml_parser.hpp>
#include <map>
#include <memory>
#include <vector>
#include "BaseLib/FileTools.h"
#include "InfoLib/GitInfo.h"
#include "MeshLib/IO/readMeshFromFile.h"
#include "MeshLib/IO/writeMeshToFile.h"
#include "MeshLib/Mesh.h"
#include "MeshToolsLib/MeshEditing/ConvertToLinearMesh.h"
#include "ProcessLib/LIE/Common/MeshUtils.h"
#include "ProcessLib/LIE/Common/PostUtils.h"
Include dependency graph for postLIE.cpp:

Go to the source code of this file.

Namespaces

namespace  anonymous_namespace{postLIE.cpp}
 

Functions

void anonymous_namespace{postLIE.cpp}::postVTU (std::string const &int_vtu_filename, std::string const &out_vtu_filename)
 
void anonymous_namespace{postLIE.cpp}::postPVD (std::string const &in_pvd_filename, std::string const &out_pvd_filename, bool const allow_overwrite)
 
int main (int argc, char *argv[])
 

Function Documentation

◆ main()

int main ( int argc,
char * argv[] )

Definition at line 128 of file postLIE.cpp.

129{
130 TCLAP::CmdLine cmd(
131 "Post-process results of the LIE approach.\n\n"
132 "OpenGeoSys-6 software, version " +
134 ".\n"
135 "Copyright (c) 2012-2024, OpenGeoSys Community "
136 "(http://www.opengeosys.org)",
138 TCLAP::ValueArg<std::string> arg_out_file(
139 "o", "output-file", "the name of the new PVD or VTU file", true, "",
140 "path");
141 cmd.add(arg_out_file);
142 TCLAP::ValueArg<std::string> arg_in_file(
143 "i", "input-file", "the original PVD or VTU file name", true, "",
144 "path");
145 cmd.add(arg_in_file);
146 TCLAP::SwitchArg nooverwrite_arg(
147 "",
148 "no-overwrite",
149 "don't overwrite existing post processed VTU files");
150 cmd.add(nooverwrite_arg);
151
152 cmd.parse(argc, argv);
153
154#ifdef USE_PETSC
155 MPI_Init(&argc, &argv);
156#endif
157
158 auto const in_file_ext = BaseLib::getFileExtension(arg_in_file.getValue());
159 if (in_file_ext == ".pvd")
160 {
161 postPVD(arg_in_file.getValue(), arg_out_file.getValue(),
162 !nooverwrite_arg.getValue());
163 }
164 else if (in_file_ext == ".vtu")
165 {
166 postVTU(arg_in_file.getValue(), arg_out_file.getValue());
167 }
168 else
169 {
170 OGS_FATAL("The given file type ({:s}) is not supported.", in_file_ext);
171 }
172
173#ifdef USE_PETSC
174 MPI_Finalize();
175#endif
176 return EXIT_SUCCESS;
177}
#define OGS_FATAL(...)
Definition Error.h:26
std::string getFileExtension(const std::string &path)
GITINFOLIB_EXPORT const std::string ogs_version
void postVTU(std::string const &int_vtu_filename, std::string const &out_vtu_filename)
Definition postLIE.cpp:33
void postPVD(std::string const &in_pvd_filename, std::string const &out_pvd_filename, bool const allow_overwrite)
Definition postLIE.cpp:71

References BaseLib::getFileExtension(), OGS_FATAL, GitInfoLib::GitInfo::ogs_version, anonymous_namespace{postLIE.cpp}::postPVD(), and anonymous_namespace{postLIE.cpp}::postVTU().