|
LIBINT 2.9.0
|
Uncontract_Integral converts (a set of) contracted integral(s) to its uncontracted counterpart. More...
#include <uncontract.h>


Public Types | |
| typedef I | TargetType |
| typedef TargetType | ChildType |
| typedef I::BasisFunctionType | BFSet |
| typedef RecurrenceRelation::ExprType | ExprType |
| The type of expressions in which RecurrenceRelations result. | |
Public Types inherited from libint2::RecurrenceRelation | |
| typedef RecurrenceRelation | this_type |
| typedef AlgebraicOperator< DGVertex > | ExprType |
| Numerical expression of a recurrence relation is always expressed as an AlgebraicOperator<DGVertex> | |
Public Member Functions | |
| Uncontract_Integral (const std::shared_ptr< I > &) | |
| unsigned int | num_children () const override |
| Implementation of RecurrenceRelation::num_children() | |
| std::shared_ptr< TargetType > | target () const |
| target() returns pointer to target | |
| std::shared_ptr< ChildType > | child (unsigned int i) const |
| child(i) returns pointer i-th child | |
| std::shared_ptr< DGVertex > | rr_target () const override |
| Implementation of RecurrenceRelation's target() | |
| std::shared_ptr< DGVertex > | rr_child (unsigned int i) const override |
| Implementation of RecurrenceRelation's child() | |
| bool | is_simple () const override |
| to inline this would require a unary operator (+=). | |
Public Member Functions inherited from libint2::RecurrenceRelation | |
| const std::shared_ptr< ExprType > & | rr_expr () const |
| Returns the expression. | |
| virtual bool | invariant_type () const |
| Returns true is the type of target and all children are exactly the same. | |
| virtual int | partindex_direction () const |
| virtual BraketDirection | braket_direction () const |
| size_t | size_of_children () const |
| const std::string & | label () const |
| label() returns a unique, short, descriptive label of this RR (e.g. | |
| virtual std::string | description () const |
| description() returns a verbose description of this RR | |
| virtual void | generate_code (const std::shared_ptr< CodeContext > &context, const std::shared_ptr< ImplicitDimensions > &dims, const std::string &funcname, std::ostream &decl, std::ostream &def) |
| Generate declaration and definition for the recurrence relation. | |
| virtual void | generate_generic_code (const std::shared_ptr< CodeContext > &context, const std::shared_ptr< ImplicitDimensions > &dims, const std::string &funcname, std::ostream &decl, std::ostream &def) |
| Generate declaration and definition for the recurrence relation using generic code (typically, a manually written code) | |
| unsigned int | nflops () const |
| Return the number of FLOPs per this recurrence relation. | |
| void | inst_id (const SingletonStack< RecurrenceRelation, std::string >::InstanceID &i) |
| RecurrenceRelation is managed by SingletonStack but doesn't need to keep track of instance ID. | |
Additional Inherited Members | |
Protected Member Functions inherited from libint2::RecurrenceRelation | |
| void | add_expr (const std::shared_ptr< ExprType > &a, int minus=1) |
| Adds a (or -a, if minus = -1) to expr_. | |
| template<class RR > | |
| bool | register_with_rrstack () |
| Registers with the stack. | |
Protected Attributes inherited from libint2::RecurrenceRelation | |
| unsigned int | nflops_ |
| std::string | label_ |
| std::shared_ptr< ExprType > | expr_ |
Uncontract_Integral converts (a set of) contracted integral(s) to its uncontracted counterpart.
Although this is technically not a recurrence relation, it can be treated as one.
|
inlineoverridevirtual |
to inline this would require a unary operator (+=).
instead will always implement as a function call.
Implements libint2::RecurrenceRelation.
|
inlineoverridevirtual |
Implementation of RecurrenceRelation::num_children()
Implements libint2::RecurrenceRelation.
|
inlineoverridevirtual |
Implementation of RecurrenceRelation's child()
Implements libint2::RecurrenceRelation.
References libint2::Uncontract_Integral< I >::child().
|
inlineoverridevirtual |
Implementation of RecurrenceRelation's target()
Implements libint2::RecurrenceRelation.
References libint2::Uncontract_Integral< I >::target().