active_node Class Reference

#include <algorithm.hh>

Inheritance diagram for active_node:

algorithm acanonicalorder all_contractions amnesia assert_or_exit asym asymprop aticksen break_gendelta canonicalise canonicalorder coefficients collect_factors collect_terms combine debracket decompose decompose_product depprint distribute drop drop_keep_weight dualise_tensor einsteinify eliminate_eps eliminate_kronecker eliminate_metric eliminate_vielbein epsprod2gendelta eqn eqs expand expand_power expand_product_shorthand extract_properties factorise fierz frommaple frommath gammasplit generate_indexbracket impose_asym impose_bianchi index_rename indexlist indexsort inner join keep_terms length list_sum listflatten locate lsolve memdump multpauli number_of_terms numerical_flatten order permute pintegrate pop print prodcollectnum prodflatten prodrule prodsort product_shorthand projweyl proplist range ratrewrite reduce reduce_div reduce_gendelta reduce_sub remove_eoms remove_gamma_trace remove_indexbracket remove_vanishing_derivatives remove_weyl_traces rename_dummies replace_match rewrite_diracbar rewrite_indices ricci_identity riemann_index_regroup riemannid run simple_rename spinorsort split_index subseq substitute sumflatten sumsort sym sym_asym tab_basics tabdimension take take_match tree_dump unique_indices unwrap vary weyl_index_order young_project young_project_product young_project_tensor List of all members.

Public Types

typedef exptree::iterator iterator
typedef exptree::post_order_iterator post_order_iterator
typedef exptree::sibling_iterator sibling_iterator

Public Member Functions

 active_node (exptree &, iterator)
virtual ~active_node ()
sibling_iterator args_begin () const
sibling_iterator args_end () const
unsigned int number_of_args () const
bool has_argument (const std::string &) const
virtual void description () const =0

Public Attributes

iterator this_command

Protected Member Functions

template<class BinaryPredicate>
unsigned int intersection_number (sibling_iterator, sibling_iterator, sibling_iterator, sibling_iterator, BinaryPredicate) const

Protected Attributes

exptreetr
sibling_iterator args_begin_
sibling_iterator args_end_

Detailed Description

Base class for objects which represent algorithms, i.e. which get expanded by the manipulator when they are encountered in the tree.


Member Typedef Documentation

typedef exptree::iterator active_node::iterator
 

typedef exptree::post_order_iterator active_node::post_order_iterator
 

typedef exptree::sibling_iterator active_node::sibling_iterator
 


Constructor & Destructor Documentation

active_node::active_node exptree ,
iterator 
 

virtual active_node::~active_node  )  [inline, virtual]
 


Member Function Documentation

exptree::sibling_iterator active_node::args_begin  )  const
 

exptree::sibling_iterator active_node::args_end  )  const
 

virtual void active_node::description  )  const [pure virtual]
 

Implemented in prodrule, remove_indexbracket, distribute, sumsort, prodsort, spinorsort, keep_terms, reduce_sub, prodflatten, sumflatten, listflatten, prodcollectnum, reduce_div, subseq, collect_factors, collect_terms, factorise, canonicalise, reduce, drop, drop_weight, keep_weight, ratrewrite, sym, asym, canonicalorder, acanonicalorder, impose_asym, eqn, indexsort, asymprop, young_project, young_project_tensor, expand_power, permute, frommath, frommaple, run, rename_dummies, generate_indexbracket, unique_indices, einsteinify, combine, expand, debracket, eliminate_kronecker, reduce_gendelta, break_gendelta, dualise_tensor, epsprod2gendelta, eliminate_eps, product_shorthand, expand_product_shorthand, remove_eoms, pintegrate, remove_vanishing_derivatives, unwrap, impose_bianchi, all_contractions, join, remove_gamma_trace, gammasplit, projweyl, multpauli, rewrite_diracbar, fierz, lsolve, decompose, length, take, range, inner, list_sum, coefficients, numerical_flatten, tree_dump, memdump, depprint, eqs, proplist, print, indexlist, assert_or_exit, number_of_terms, aticksen, riemannid, extract_properties, eliminate_vielbein, eliminate_metric, rewrite_indices, ricci_identity, weyl_index_order, riemann_index_regroup, remove_weyl_traces, split_index, pop, amnesia, substitute, vary, take_match, replace_match, simple_rename, index_rename, tabdimension, tabcanonicalise, tabstandardform, lr_tensor, young_project_product, and decompose_product.

bool active_node::has_argument const std::string &   )  const
 

template<class BinaryPredicate>
unsigned int active_node::intersection_number sibling_iterator  from1,
sibling_iterator  to1,
sibling_iterator  from2,
sibling_iterator  to2,
BinaryPredicate  fun
const [protected]
 

Determine the number of elements in the first range which also occur in the second range.

unsigned int active_node::number_of_args  )  const
 


Member Data Documentation

sibling_iterator active_node::args_begin_ [mutable, protected]
 

sibling_iterator active_node::args_end_ [mutable, protected]
 

iterator active_node::this_command
 

exptree& active_node::tr [protected]
 


The documentation for this class was generated from the following files:
Generated on Sat Jul 18 23:03:15 2009 for cadabra by  doxygen 1.4.6