Loading...
Searching...
No Matches
partition_ground.h
Go to the documentation of this file.
#pragma once
#include "gridfire/partition/partition_abstract.h"
#include "fourdst/logging/logging.h"
#include <unordered_map>
#include <memory>
#include "quill/Logger.h"
namespace gridfire::partition {
class GroundStatePartitionFunction final : public PartitionFunction {
public:
GroundStatePartitionFunction();
double evaluate(
const int z,
const int a,
const double T9
) const override;
double evaluateDerivative(
const int z,
const int a,
const double T9
) const override;
bool supports(
const int z,
const int a
) const override;
std::string type() const override { return "GroundState"; }
std::unique_ptr<PartitionFunction> clone() const override {
return std::make_unique<GroundStatePartitionFunction>(*this);
}
private:
quill::Logger* m_logger = fourdst::logging::LogManager::getInstance().getLogger("log");
std::unordered_map<int, double> m_ground_state_spin;
static constexpr int make_key(
const int z,
const int a);
};
}
gridfire::partition::GroundStatePartitionFunction::evaluateDerivative
double evaluateDerivative(const int z, const int a, const double T9) const override
Definition partition_ground.cpp:29
gridfire::partition::GroundStatePartitionFunction::supports
bool supports(const int z, const int a) const override
Definition partition_ground.cpp:38
gridfire::partition::GroundStatePartitionFunction::GroundStatePartitionFunction
GroundStatePartitionFunction()
Definition partition_ground.cpp:12
gridfire::partition::GroundStatePartitionFunction::make_key
static constexpr int make_key(const int z, const int a)
Definition partition_ground.cpp:44
gridfire::partition::GroundStatePartitionFunction::clone
std::unique_ptr< PartitionFunction > clone() const override
Definition partition_ground.h:88
gridfire::partition::GroundStatePartitionFunction::evaluate
double evaluate(const int z, const int a, const double T9) const override
Definition partition_ground.cpp:18
gridfire::partition::GroundStatePartitionFunction::m_ground_state_spin
std::unordered_map< int, double > m_ground_state_spin
Definition partition_ground.h:93
gridfire::partition::GroundStatePartitionFunction::type
std::string type() const override
Definition partition_ground.h:82
gridfire::partition::GroundStatePartitionFunction::m_logger
quill::Logger * m_logger
Definition partition_ground.h:92
gridfire::partition::PartitionFunction
Abstract interface for evaluating nuclear partition functions.
Definition partition_abstract.h:17
gridfire::partition
Definition partition_composite.h:15
partition_abstract.h