OGS
anonymous_namespace{MatrixOutput.cpp} Namespace Reference

Functions

std::string getSeparatorAfterFilenamePrefix (std::string const &filenamePrefix)
static std::optional< std::string > getEnvironmentVariable (std::string const &env_var)
std::string localMatrixOutputFilename (std::string const &filenamePrefix)
Eigen::Map< const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor > > toSquareMatrixRowMajor (std::vector< double > entries)

Function Documentation

◆ getEnvironmentVariable()

std::optional< std::string > anonymous_namespace{MatrixOutput.cpp}::getEnvironmentVariable ( std::string const & env_var)
static

Definition at line 65 of file MatrixOutput.cpp.

67{
68 char const* const prefix = std::getenv(env_var.c_str());
69 return prefix ? std::make_optional(prefix) : std::nullopt;
70}

◆ getSeparatorAfterFilenamePrefix()

std::string anonymous_namespace{MatrixOutput.cpp}::getSeparatorAfterFilenamePrefix ( std::string const & filenamePrefix)

Definition at line 19 of file MatrixOutput.cpp.

20{
21 return filenamePrefix.empty() || filenamePrefix.ends_with('/') ||
22 filenamePrefix.ends_with('\\')
23 ? ""
24 : "_";
25}

Referenced by localMatrixOutputFilename().

◆ localMatrixOutputFilename()

std::string anonymous_namespace{MatrixOutput.cpp}::localMatrixOutputFilename ( std::string const & filenamePrefix)

Definition at line 72 of file MatrixOutput.cpp.

73{
74 return fmt::format("{}{}ogs_local_matrix.log", filenamePrefix,
75 getSeparatorAfterFilenamePrefix(filenamePrefix));
76}
std::string getSeparatorAfterFilenamePrefix(std::string const &filenamePrefix)

References getSeparatorAfterFilenamePrefix().

◆ toSquareMatrixRowMajor()

Eigen::Map< const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor > > anonymous_namespace{MatrixOutput.cpp}::toSquareMatrixRowMajor ( std::vector< double > entries)

Definition at line 80 of file MatrixOutput.cpp.

81{
82 auto const num_r_c =
83 static_cast<Eigen::Index>(std::round(std::sqrt(entries.size())));
84
85 return {entries.data(), num_r_c, num_r_c};
86}