Cadabra
Computer algebra system for field theory problems
Loading...
Searching...
No Matches
WeightInherit.hh
Go to the documentation of this file.
1
2#pragma once
3
4#include "Exceptions.hh"
6
7namespace cadabra {
8
9 class WeightInherit : virtual public WeightBase {
10 public:
11 virtual ~WeightInherit();
12
13 // The following exception class is thrown when 'value' cannot figure out the
14 // weight because a sum contains terms of different weight.
16 public:
17 WeightException(const std::string&);
18 };
19
20 virtual bool parse(Kernel&, std::shared_ptr<Ex>, keyval_t&) override;
21 virtual multiplier_t value(const Kernel&, Ex::iterator, const std::string& forcedlabel) const override;
22 virtual std::string unnamed_argument() const override
23 {
24 return "type";
25 };
26 virtual std::string name() const override;
27
29
31 };
32
33 }
Definition Exceptions.hh:14
Definition Kernel.hh:15
Definition WeightBase.hh:8
Definition WeightInherit.hh:15
Definition WeightInherit.hh:9
CombinationType
Definition WeightInherit.hh:28
@ multiplicative
Definition WeightInherit.hh:28
@ power
Definition WeightInherit.hh:28
@ additive
Definition WeightInherit.hh:28
virtual bool parse(Kernel &, std::shared_ptr< Ex >, keyval_t &) override
Definition WeightInherit.cc:22
virtual std::string name() const override
Definition WeightInherit.cc:12
enum cadabra::WeightInherit::CombinationType combination_type
multiplier_t value_self
Definition WeightInherit.hh:30
virtual ~WeightInherit()
Definition WeightInherit.cc:8
virtual multiplier_t value(const Kernel &, Ex::iterator, const std::string &forcedlabel) const override
Definition WeightInherit.cc:46
virtual std::string unnamed_argument() const override
Definition WeightInherit.hh:22
Arguments to properties get parsed into a keyval_t structure.
Definition Props.hh:68
Functions to handle the exchange properties of two or more symbols in a product.
Definition Adjform.cc:83
void set(rset_t::iterator &num, multiplier_t fac)
Definition Storage.cc:1063
mpq_class multiplier_t
Definition Storage.hh:38