Select Git revision
AcousticSolver.hpp
GnuplotWriter1D.cpp 14.10 KiB
#include <output/GnuplotWriter1D.hpp>
#include <mesh/Connectivity.hpp>
#include <mesh/ItemValue.hpp>
#include <mesh/Mesh.hpp>
#include <mesh/MeshData.hpp>
#include <mesh/MeshDataManager.hpp>
#include <mesh/MeshTraits.hpp>
#include <mesh/MeshVariant.hpp>
#include <utils/Filesystem.hpp>
#include <utils/Messenger.hpp>
#include <utils/PugsTraits.hpp>
#include <utils/RevisionInfo.hpp>
#include <utils/Stringify.hpp>
#include <utils/Demangle.hpp>
#include <fstream>
#include <iomanip>
std::string
GnuplotWriter1D::_getDateAndVersionComment() const
{
std::ostringstream os;
std::time_t now = std::time(nullptr);
os << "# Generated by pugs: " << std::ctime(&now);
os << "# version: " << RevisionInfo::version() << '\n';
os << "# tag: " << RevisionInfo::gitTag() << '\n';
os << "# HEAD: " << RevisionInfo::gitHead() << '\n';
os << "# hash: " << RevisionInfo::gitHash() << " (" << ((RevisionInfo::gitIsClean()) ? "clean" : "dirty") << ")\n";
os << '\n';
return os.str();
}
std::string
GnuplotWriter1D::_getFilename() const
{
std::ostringstream sout;
sout << m_base_filename;
if (m_period_manager.has_value()) {
sout << '.' << std::setfill('0') << std::setw(4) << m_period_manager->nbSavedTimes();
}
sout << ".gnu";
return sout.str();
}
template <typename ItemDataType>
bool
GnuplotWriter1D::_is_cell_data(const ItemDataType&) const
{
return ItemDataType::item_t == ItemType::cell;
}
template <typename ItemDataType>
bool
GnuplotWriter1D::_is_face_data(const ItemDataType&) const
{
return ItemDataType::item_t == ItemType::face;
}
template <typename ItemDataType>
bool
GnuplotWriter1D::_is_edge_data(const ItemDataType&) const
{
return ItemDataType::item_t == ItemType::edge;
}
template <typename ItemDataType>