Cadabra
Computer algebra system for field theory problems
Trace.hh
Go to the documentation of this file.
1 
2 #pragma once
3 
4 #include "Props.hh"
10 
11 namespace cadabra {
12 
13  class Trace :
14  public Distributable,
15  public IndexInherit,
16  public TableauInherit,
17  public NumericalFlat,
18  virtual public property {
19  public:
20  Trace();
21  virtual std::string name() const override;
22  virtual std::string unnamed_argument() const override;
23  virtual bool parse(Kernel&, keyval_t&) override;
24  virtual void validate(const Kernel&, const Ex&) const override;
25  virtual void latex(std::ostream&) const override;
26 
28  std::string index_set_name; // refers to Indices::set_name
29  };
30 
31  }
Definition: Distributable.hh:8
Basic storage class for symbolic mathemematical expressions.
Definition: Storage.hh:142
Definition: IndexInherit.hh:9
Definition: Kernel.hh:15
Property indicating that an operator is numerically flat, so that numerical factors in the argument c...
Definition: NumericalFlat.hh:11
Property which makes a node inherit the TableauBase properties of child nodes.
Definition: TableauInherit.hh:14
Definition: Trace.hh:18
virtual std::string name() const override
Definition: Trace.cc:11
Ex obj
Definition: Trace.hh:27
virtual void latex(std::ostream &) const override
Display the property on the stream.
Definition: Trace.cc:36
std::string index_set_name
Definition: Trace.hh:28
virtual bool parse(Kernel &, keyval_t &) override
Definition: Trace.cc:21
Trace()
Definition: Trace.cc:7
virtual void validate(const Kernel &, const Ex &) const override
Definition: Trace.cc:32
virtual std::string unnamed_argument() const override
Definition: Trace.cc:16
Arguments to properties get parsed into a keyval_t structure.
Definition: Props.hh:68
Base class for all properties, handling argument parsing and defining the interface.
Definition: Props.hh:127
Functions to handle the exchange properties of two or more symbols in a product.
Definition: Adjform.cc:83