14 class FunctionVisitor;
15 class FunctionOperation;
51 std::string
type_name()
const override {
return "Variable"; }
71 std::set<Index>
dof_IDs()
const override;
74 const std::vector<DoF::RemoteHandle> &remote_handles)
override;
86 void scale(
double scale_factor)
override;
107 BasisSet const *home_basis_ptr = NULL)
override;
109 BasisSet const *home_basis_ptr = NULL)
const override;
112 const std::vector<Index> &after_IDs)
override;
double dot(Function const *LHS, Function const *RHS) const
static int get_class_ID()
SymGroupRepID const & symrep_ID() const
Type-safe ID object for communicating and accessing Symmetry representation info.
SymOp is the Coordinate representation of a symmetry operation it keeps fraction (FRAC) and Cartesian...
Function * add(Function const *LHS, Function const *RHS) const
bool compare(Function const *LHS, Function const *RHS) const
Function * add_to(Function *LHS, Function const *RHS) const
Function * multiply(Function const *LHS, Function const *RHS) const
Function * multiply_by(Function *LHS, Function const *RHS) const
Function * subtract_from(Function *LHS, Function const *RHS) const
Function * subtract(Function const *LHS, Function const *RHS) const
Variable(const Variable &old_var)=default
bool _accept(const FunctionVisitor &visitor, BasisSet const *home_basis_ptr=NULL) override
bool is_zero() const override
double cache_eval() const override
void from_json(const jsonParser &json)
bool compare(const Variable *RHS) const
const DoFSet & dof_set() const
Function * minus_equals(const Variable *RHS)
void small_to_zero(double tol=TOL) override
int class_ID() const override
double remote_deval(const DoF::RemoteHandle &dvar) const override
Function * copy() const override
double remote_eval() const override
double dot(Function const *RHS) const
double cache_deval(const DoF::RemoteHandle &dvar) const override
static void fill_dispatch_table()
double get_coefficient(Index i) const override
std::set< Index > dof_IDs() const override
int register_remotes(const std::vector< DoF::RemoteHandle > &remote_handles) override
bool _update_dof_IDs(const std::vector< Index > &before_IDs, const std::vector< Index > &after_IDs) override
std::string type_name() const override
const Eigen::VectorXd & coeffs() const
Function * plus_equals(const Variable *RHS)
jsonParser & to_json(jsonParser &json) const override
Index num_terms() const override
SymGroupRepID symrep_ID() const
Function * _apply_sym(const SymOp &op) override
void scale(double scale_factor) override
void make_formula() const override
double leading_coefficient() const override
jsonParser & to_json(const ClexDescription &desc, jsonParser &json)
void from_json(ClexDescription &desc, const jsonParser &json)
INDEX_TYPE Index
For long integer indexing: