27#include "quill/LogMacros.h"
31 std::vector <double> y;
32 y.reserve(
composition.getRegisteredSymbols().size());
33 const auto [fst, snd] =
composition.getComposition();
34 for (
const auto &name: fst | std::views::keys) {
42 m_config(fourdst::config::Config::getInstance()),
43 m_logManager(fourdst::logging::LogManager::getInstance()),
46 m_constants(fourdst::constant::Constants::getInstance()){
48 LOG_ERROR(
m_logger,
"nuclearNetwork::Network::Network() called with UNKNOWN format");
50 throw std::runtime_error(
"nuclearNetwork::Network::Network() called with UNKNOWN format");
66 auto startIt = str.begin();
67 const auto endIt = str.end();
69 while (startIt != endIt && std::isspace(
static_cast<unsigned char>(*startIt))) {
72 if (startIt == endIt) {
75 const auto ritr = std::find_if(str.rbegin(), std::string::const_reverse_iterator(startIt),
76 [](
const unsigned char ch){ return !std::isspace(ch); });
77 return std::string(startIt, ritr.base());
fourdst::logging::LogManager & m_logManager
Log manager instance.
Network(const NetworkFormat format=NetworkFormat::APPROX8)
NetworkFormat getFormat() const
NetworkFormat m_format
Format of the network.
NetworkFormat setFormat(const NetworkFormat format)
quill::Logger * m_logger
Logger instance.
fourdst::config::Config & m_config
Configuration instance.
fourdst::constant::Constants & m_constants
std::string trim_whitespace(const std::string &str)
Defines classes for representing and managing nuclear reactions.
fourdst::composition::Composition composition
Composition of the network.
std::vector< double > MolarAbundance() const