Symmetric Polynomials  V3.1
A C++ library for generating symmetric polynomials with relations
SymmetricBasis< x_poly_t, e_poly_t > Class Template Reference

Class for symmetric polynomials with no relations, allowing transformation from \(x_i\) variables to \(e_i\) variables and vice-versa. More...

#include <Symmetric_Basis.hpp>

Inheritance diagram for SymmetricBasis< x_poly_t, e_poly_t >:
[legend]
Collaboration diagram for SymmetricBasis< x_poly_t, e_poly_t >:
[legend]

Public Member Functions

 SymmetricBasis (int num)
 Constructor given number of variables. More...
 
- Public Member Functions inherited from PolynomialBasis< SymmetricBasis< x_poly_t, e_poly_t >, x_poly_t, e_poly_t >
e_poly_t operator() (x_poly_t a) const
 Transform a polynomial on the original variables to one on the generating basis. More...
 
x_poly_t operator() (const e_poly_t &a) const
 Transform a polynomial on the generating basis into a polynomial on the original variables. More...
 
 PolynomialBasis (int num)
 Constructor given number of variables. More...
 
const std::vector< x_poly_t > & generators () const
 Returns vector containing the generating basis. More...
 
const std::vector< typename new_poly_t::deg_t > & dimensions () const
 Returns vector containing the dimensions of the generating basis (can be empty!) More...
 
const std::vector< std::string > & names () const
 Returns vector containing the names of the generating basis (can be empty!) More...
 

Friends

class PolynomialBasis< SymmetricBasis< x_poly_t, e_poly_t >, x_poly_t, e_poly_t >
 Befriending parent for CRTP. More...
 

Additional Inherited Members

- Public Attributes inherited from PolynomialBasis< SymmetricBasis< x_poly_t, e_poly_t >, x_poly_t, e_poly_t >
const int number_of_variables
 The number of (the original) variables of the polynomial ring. More...
 
- Protected Attributes inherited from PolynomialBasis< SymmetricBasis< x_poly_t, e_poly_t >, x_poly_t, e_poly_t >
std::vector< x_poly_t > _generators
 The generators of the polynomial basis, constructed in the inheriting class. More...
 
std::vector< typename new_poly_t::deg_t > generator_dimensions
 The dimensions of the generators, optionally constructed in the inheriting class. More...
 
std::vector< std::string > generator_names
 The names of the generators, optionally constructed in the inheriting class. More...
 

Detailed Description

template<class x_poly_t, class e_poly_t>
class symmp::SymmetricBasis< x_poly_t, e_poly_t >

Class for symmetric polynomials with no relations, allowing transformation from \(x_i\) variables to \(e_i\) variables and vice-versa.

Template Parameters
x_poly_tType of Polynomial on the Standard_Variables \(x_i\)
e_poly_tThe of Polynomial on the ElementarySymmetricVariables \(e_i\)

Constructor & Destructor Documentation

◆ SymmetricBasis()

SymmetricBasis ( int  num)

Constructor given number of variables.

Parameters
numThe number of variables for our symmetric polynomials

Friends And Related Function Documentation

◆ PolynomialBasis< SymmetricBasis< x_poly_t, e_poly_t >, x_poly_t, e_poly_t >

friend class PolynomialBasis< SymmetricBasis< x_poly_t, e_poly_t >, x_poly_t, e_poly_t >
friend

Befriending parent for CRTP.


The documentation for this class was generated from the following file: