Cadabra
Computer algebra system for field theory problems
Traceless.hh
Go to the documentation of this file.
1 
2 #pragma once
3 
4 #include "Props.hh"
5 
6 namespace cadabra {
7 
8  class Traceless : virtual public property {
9  public:
10  virtual ~Traceless() {};
11  virtual std::string name() const override;
12  virtual bool parse(Kernel&, keyval_t&) override;
13  virtual std::string unnamed_argument() const override
14  {
15  return "indices";
16  };
17 
18  std::set<std::string> index_set_names; // refers to Indices::set_name
19  };
20 
21  }
22 
Definition: Kernel.hh:15
Definition: Traceless.hh:8
virtual std::string unnamed_argument() const override
Definition: Traceless.hh:13
virtual std::string name() const override
Definition: Traceless.cc:6
std::set< std::string > index_set_names
Definition: Traceless.hh:16
virtual bool parse(Kernel &, keyval_t &) override
Definition: Traceless.cc:11
virtual ~Traceless()
Definition: Traceless.hh:10
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