CASM
1.1.0
A Clusters Approach to Statistical Mechanics
|
#include <DiffClexParamPack.hh>
Class for managing the set of all dependent and independent paramters used/generated by clexulator.
Definition at line 242 of file DiffClexParamPack.hh.
Public Types | |
using | DiffScalar = DiffClexParamPack_impl::DiffScalar |
using | EvalMode = DiffClexParamPack_impl::EvalMode |
using | BaseKey = DiffClexParamKey |
using | Key = DiffClexParamValKey |
using | DoubleReference = Eigen::MatrixXd::CoeffReturnType |
template<typename Scalar > | |
using | Val = ValAccess< Scalar > |
typedef unsigned int | size_type |
Public Member Functions | |
DiffClexParamPack () | |
Default constructor initializes evaluation mode and zeros numbers of managed parameters. More... | |
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 (BaseKey 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 (BaseKey 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 (BaseKey const &_key) const |
EvalMode | eval_mode () 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 (BaseKey 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 (BaseKey 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 (BaseKey const &_key, size_type _i, size_type _j) const |
void | write (ClexParamKey const &_key, Eigen::Ref< const Eigen::MatrixXd > const &_val) override |
Write parameter array for parameter specified by. More... | |
void | write (ClexParamKey const &_key, size_type _i, double _val) override |
Write element to 1D parameter array for parameter specified by. More... | |
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 | 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 (BaseKey const &_key, EvalMode _mode) |
Set evaluation mode of specified parameter type. More... | |
void | pre_eval () |
Prepares all independent parameters before function evaluation if derivatives are desired. More... | |
void | post_eval () |
Processes all dependent parameters after function evaluation if derivatives are desired. More... | |
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... | |
Protected Attributes | |
std::map< std::string, ClexParamKey > | m_keys |
Private Attributes | |
std::vector< DiffScalarContainer > | m_data |
std::vector< EvalMode > | m_eval |
EvalMode | m_tot_eval_mode |
Index | m_N_independent |
Index | m_N_dependent |
Friends | |
template<typename Scalar > | |
class | ValAccess |
static const EvalMode | DEFAULT |
static const EvalMode | READ |
static const EvalMode | DIFF |
static const EvalMode | DYNAM |
void | write (BaseKey const &_key, Eigen::Ref< const Eigen::MatrixXd > const &_val) |
void | write (BaseKey const &_key, size_type _i, double _val) |
void | write (BaseKey const &_key, size_type _i, size_type _j, double _val) |
Key | allocate (std::string const &_keyname, Index _rows, Index _cols, bool _independent) |
Definition at line 253 of file DiffClexParamPack.hh.
Definition at line 244 of file DiffClexParamPack.hh.
using CASM::DiffClexParamPack::DoubleReference = Eigen::MatrixXd::CoeffReturnType |
Definition at line 255 of file DiffClexParamPack.hh.
Definition at line 246 of file DiffClexParamPack.hh.
Definition at line 254 of file DiffClexParamPack.hh.
|
inherited |
Definition at line 232 of file ClexParamPack.hh.
using CASM::DiffClexParamPack::Val = ValAccess<Scalar> |
Definition at line 258 of file DiffClexParamPack.hh.
|
inline |
Default constructor initializes evaluation mode and zeros numbers of managed parameters.
Definition at line 265 of file DiffClexParamPack.hh.
|
inline |
Definition at line 609 of file DiffClexParamPack.hh.
Definition at line 280 of file DiffClexParamPack.hh.
|
inlineoverridevirtual |
'm' dimension of parameter array returns number of rows in parameter array
Implements CASM::ClexParamPack.
Definition at line 276 of file DiffClexParamPack.hh.
|
inline |
Definition at line 290 of file DiffClexParamPack.hh.
Definition at line 288 of file DiffClexParamPack.hh.
|
inlineoverridevirtual |
Check evaluation mode for ClexParamPack parameter Choices are at least.
Implements CASM::ClexParamPack.
Definition at line 284 of file DiffClexParamPack.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.
|
inline |
Processes all dependent parameters after function evaluation if derivatives are desired.
Definition at line 375 of file DiffClexParamPack.hh.
|
inline |
Prepares all independent parameters before function evaluation if derivatives are desired.
Definition at line 363 of file DiffClexParamPack.hh.
|
inline |
Definition at line 296 of file DiffClexParamPack.hh.
|
inline |
Definition at line 313 of file DiffClexParamPack.hh.
Definition at line 304 of file DiffClexParamPack.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 292 of file DiffClexParamPack.hh.
|
inlineoverridevirtual |
Returns const reference to element of 2D parameter array for parameter specified by.
_key |
Implements CASM::ClexParamPack.
Definition at line 308 of file DiffClexParamPack.hh.
|
inlineoverridevirtual |
Returns const reference to element of 1D parameter array for parameter specified by.
_key |
Implements CASM::ClexParamPack.
Definition at line 300 of file DiffClexParamPack.hh.
Set evaluation mode of specified parameter type.
_key | Specifies parameter for which evluation mode is being set |
_mode | New value for evaluation mode |
Definition at line 350 of file DiffClexParamPack.hh.
|
inlineoverridevirtual |
Sets evaluation mode for ClexParamPack parameter Choices are at least.
Implements CASM::ClexParamPack.
Definition at line 341 of file DiffClexParamPack.hh.
Definition at line 272 of file DiffClexParamPack.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 268 of file DiffClexParamPack.hh.
|
inline |
Definition at line 568 of file DiffClexParamPack.hh.
Definition at line 581 of file DiffClexParamPack.hh.
|
inline |
Definition at line 595 of file DiffClexParamPack.hh.
|
inlineoverridevirtual |
Write parameter array for parameter specified by.
_key |
Implements CASM::ClexParamPack.
Definition at line 317 of file DiffClexParamPack.hh.
|
inlineoverridevirtual |
Write element to 1D parameter array for parameter specified by.
_key |
Implements CASM::ClexParamPack.
Definition at line 325 of file DiffClexParamPack.hh.
|
inlineoverridevirtual |
Write element to 2D parameter array for parameter specified by.
_key |
Implements CASM::ClexParamPack.
Definition at line 331 of file DiffClexParamPack.hh.
|
friend |
Definition at line 261 of file DiffClexParamPack.hh.
|
static |
Definition at line 248 of file DiffClexParamPack.hh.
|
static |
Definition at line 250 of file DiffClexParamPack.hh.
|
static |
Definition at line 251 of file DiffClexParamPack.hh.
|
private |
Definition at line 386 of file DiffClexParamPack.hh.
|
private |
Definition at line 387 of file DiffClexParamPack.hh.
|
protectedinherited |
Definition at line 325 of file ClexParamPack.hh.
|
private |
Definition at line 390 of file DiffClexParamPack.hh.
|
private |
Definition at line 389 of file DiffClexParamPack.hh.
|
private |
Definition at line 388 of file DiffClexParamPack.hh.
|
static |
Definition at line 249 of file DiffClexParamPack.hh.