CASM
1.1.0
A Clusters Approach to Statistical Mechanics
|
#include <BasicClexParamPack.hh>
Abstract base class for reading/writing clexulator parameters Parameters are assume be naturally representable as 1D or 2D arrays.
Definition at line 39 of file BasicClexParamPack.hh.
Public Types | |
enum class | EvalMode { DEFAULT , READ , DYNAM } |
using | Key = BasicClexParamKey |
using | DoubleReference = Eigen::MatrixXd::CoeffReturnType |
template<typename Scalar > | |
using | Val = ValAccess< Scalar > |
typedef unsigned int | size_type |
Public Member Functions | |
size_type | size (ClexParamKey const &_key) const override |
'N' dimension of parameter array (either '1', or size of unit cell neighborhood) returns number of columns in parameter array More... | |
size_type | size (Key const &_key) const |
size_type | dim (ClexParamKey const &_key) const override |
'm' dimension of parameter array returns number of rows in parameter array More... | |
size_type | dim (Key const &_key) const |
std::string | eval_mode (ClexParamKey const &_key) const override |
Check evaluation mode for ClexParamPack parameter Choices are at least. More... | |
EvalMode | eval_mode (Key const &_key) const |
Eigen::MatrixXd const & | read (ClexParamKey const &_key) const override |
Returns const reference to parameter array for parameter specified by. More... | |
Eigen::MatrixXd const & | read (Key const &_key) const |
double const & | read (ClexParamKey const &_key, size_type _ind) const override |
Returns const reference to element of 1D parameter array for parameter specified by. More... | |
double const & | read (Key const &_key, size_type _ind) const |
double const & | read (ClexParamKey const &_key, size_type _i, size_type _j) const override |
Returns const reference to element of 2D parameter array for parameter specified by. More... | |
double const & | read (Key const &_key, size_type _i, size_type _j) const |
void | set_eval_mode (ClexParamKey const &_key, std::string const &_mode) override |
Sets evaluation mode for ClexParamPack parameter Choices are at least. More... | |
void | set_eval_mode (Key const &_key, EvalMode _mode) |
void | write (ClexParamKey const &_key, Eigen::Ref< const Eigen::MatrixXd > const &_val) override |
Write parameter array for parameter specified by. More... | |
void | write (Key const &_key, Eigen::Ref< const Eigen::MatrixXd > const &_val) |
void | write (ClexParamKey const &_key, size_type _i, double _val) override |
Write element to 1D parameter array for parameter specified by. More... | |
void | write (Key const &_key, size_type _i, double _val) |
void | write (ClexParamKey const &_key, size_type _i, size_type _j, double _val) override |
Write element to 2D parameter array for parameter specified by. More... | |
void | write (Key const &_key, size_type _i, size_type _j, double _val) |
Key | allocate (std::string const &_keyname, Index _rows, Index _cols, bool _independent) |
std::map< std::string, ClexParamKey > const & | keys () const |
Obtain registry of all keys for data blocks managed by this ClexParamPack. More... | |
ClexParamKey const & | key (std::string const &_name) const |
Obtain key for managed data block by name. More... | |
void | pre_eval () |
May be specialized to perform preprocessing before function evaluation. More... | |
void | post_eval () |
May be specialized to perform postprocessing after function evaluation. More... | |
Static Public Attributes | |
static const EvalMode | DEFAULT |
static const EvalMode | READ |
static const EvalMode | DYNAM |
Protected Attributes | |
std::map< std::string, ClexParamKey > | m_keys |
Private Attributes | |
std::vector< Eigen::MatrixXd > | m_data |
std::vector< EvalMode > | m_eval |
Friends | |
template<typename Scalar > | |
class | ValAccess |
using CASM::BasicClexParamPack::DoubleReference = Eigen::MatrixXd::CoeffReturnType |
Definition at line 48 of file BasicClexParamPack.hh.
Definition at line 47 of file BasicClexParamPack.hh.
|
inherited |
Definition at line 232 of file ClexParamPack.hh.
using CASM::BasicClexParamPack::Val = ValAccess<Scalar> |
Definition at line 51 of file BasicClexParamPack.hh.
|
strong |
Enumerator | |
---|---|
DEFAULT | |
READ | |
DYNAM |
Definition at line 41 of file BasicClexParamPack.hh.
|
inline |
Definition at line 135 of file BasicClexParamPack.hh.
|
inlineoverridevirtual |
'm' dimension of parameter array returns number of rows in parameter array
Implements CASM::ClexParamPack.
Definition at line 62 of file BasicClexParamPack.hh.
Definition at line 66 of file BasicClexParamPack.hh.
|
inlineoverridevirtual |
Check evaluation mode for ClexParamPack parameter Choices are at least.
Implements CASM::ClexParamPack.
Definition at line 68 of file BasicClexParamPack.hh.
Definition at line 72 of file BasicClexParamPack.hh.
|
inlineinherited |
Obtain key for managed data block by name.
Definition at line 242 of file ClexParamPack.hh.
|
inlineinherited |
Obtain registry of all keys for data blocks managed by this ClexParamPack.
Definition at line 239 of file ClexParamPack.hh.
|
inlineinherited |
May be specialized to perform postprocessing after function evaluation.
Definition at line 322 of file ClexParamPack.hh.
|
inlineinherited |
May be specialized to perform preprocessing before function evaluation.
Definition at line 318 of file ClexParamPack.hh.
|
inlineoverridevirtual |
Returns const reference to parameter array for parameter specified by.
_key | NOTE: Take care in constructing pointers or references from the return value. If _key accepts additional index identifiers, (because the parameter has more than 2 dimensions) ClexParamPack::read() may be implemented using an internally cached matrix holding the current data slice. As such, subsequent requests to ClexParamPack::read() for a different slice may alter the internally cached values while returning a reference for the same block of memory |
Implements CASM::ClexParamPack.
Definition at line 74 of file BasicClexParamPack.hh.
|
inlineoverridevirtual |
Returns const reference to element of 2D parameter array for parameter specified by.
_key |
Implements CASM::ClexParamPack.
Definition at line 90 of file BasicClexParamPack.hh.
|
inlineoverridevirtual |
Returns const reference to element of 1D parameter array for parameter specified by.
_key |
Implements CASM::ClexParamPack.
Definition at line 82 of file BasicClexParamPack.hh.
|
inline |
Definition at line 78 of file BasicClexParamPack.hh.
|
inline |
Definition at line 95 of file BasicClexParamPack.hh.
Definition at line 86 of file BasicClexParamPack.hh.
|
inlineoverridevirtual |
Sets evaluation mode for ClexParamPack parameter Choices are at least.
Implements CASM::ClexParamPack.
Definition at line 99 of file BasicClexParamPack.hh.
Definition at line 105 of file BasicClexParamPack.hh.
|
inlineoverridevirtual |
'N' dimension of parameter array (either '1', or size of unit cell neighborhood) returns number of columns in parameter array
Implements CASM::ClexParamPack.
Definition at line 56 of file BasicClexParamPack.hh.
Definition at line 60 of file BasicClexParamPack.hh.
|
inlineoverridevirtual |
Write parameter array for parameter specified by.
_key |
Implements CASM::ClexParamPack.
Definition at line 109 of file BasicClexParamPack.hh.
|
inlineoverridevirtual |
Write element to 1D parameter array for parameter specified by.
_key |
Implements CASM::ClexParamPack.
Definition at line 118 of file BasicClexParamPack.hh.
|
inlineoverridevirtual |
Write element to 2D parameter array for parameter specified by.
_key |
Implements CASM::ClexParamPack.
Definition at line 126 of file BasicClexParamPack.hh.
|
inline |
Definition at line 114 of file BasicClexParamPack.hh.
Definition at line 122 of file BasicClexParamPack.hh.
|
inline |
Definition at line 131 of file BasicClexParamPack.hh.
|
friend |
Definition at line 54 of file BasicClexParamPack.hh.
|
static |
Definition at line 43 of file BasicClexParamPack.hh.
|
static |
Definition at line 45 of file BasicClexParamPack.hh.
|
private |
Definition at line 155 of file BasicClexParamPack.hh.
|
private |
Definition at line 156 of file BasicClexParamPack.hh.
|
protectedinherited |
Definition at line 325 of file ClexParamPack.hh.
|
static |
Definition at line 44 of file BasicClexParamPack.hh.