pysymmpol.polynomials package
Submodules
pysymmpol.polynomials.elementary module
- class pysymmpol.polynomials.elementary.ElementaryPolynomial(level: int)[source]
Bases:
object
A class that defines the elementary symmetric polynomials. Their implementation is built from the homogeneous polynimials. In particular, we use the relations: e_k(t) = (-1) h_k(-t)
- explicit(t, pol: bool = False)[source]
This method gives the expansion of the elementary symmetric polynomials.
- property level: int
Getter for the level.
pysymmpol.polynomials.hall module
- class pysymmpol.polynomials.hall.HallLittlewoodPolynomial(young: YoungDiagram)[source]
Bases:
object
Here is an implementation of the Hall-Littlewood polynomials.
- _factor(partition, Q)[source]
Calculation of the multiplicative prefactor prod_{i >= 0} prod_{j=1}^{p(i)} frac{(1- Q)}{(1- Q^j)} This term does not depend on the coordinates (x).
- _quotient(x, Q, i, j)[source]
Calculation of the terms inside the sum, prod_{i < j} frac{xi - Q xj}{xi - xj}. Observe that the denominator is the Vandermonde determinant.
pysymmpol.polynomials.homogeneous module
- class pysymmpol.polynomials.homogeneous.HomogeneousPolynomial(level: int)[source]
Bases:
object
A class that defines the complete homogeneous polynomials.
- explicit(t: tuple, pol: bool = False)[source]
This method gives the expansion of the complete symmetric polynomials. It accepts a tuple, the Miwa coordinates, as argument, as well as boolean, that specifies if the result is a sympy polynomial.
- property level: int
Getter for the level.
- class pysymmpol.polynomials.homogeneous._Monomial(conjugacy_class: ConjugacyClass)[source]
Bases:
object
Here we have a class to the calculation of the monomials necessary for the calculation of the Homogeneous Symmetric Polynomials. This is not related to the Monomial Symmetric Polynomials.
- property _level: int
This function gives the level of the conjugacy class vector k, that is, the number given by sum_i i k_i for a given bosonic state k = (k_1, k_2, …). This corresponds to the number of boxes in the partition described by this conjugacy class vector.
pysymmpol.polynomials.monomial module
pysymmpol.polynomials.schur module
- class pysymmpol.polynomials.schur.SchurPolynomial(young: YoungDiagram)[source]
Bases:
object
Implementations of the Schur polynomials. 1. We calculate these polynomials using the determinant of the Homogeneous polynomials. 2. We also calculate them using the characters. We use this second implementation to test our results.
- _schur_characters(t: tuple, pol: bool = False)[source]
This method returts the Schur polynomial in terms of Miwa coordinates using the characters expansion. This method is slower, but it is used to test the implementation. It adds another safety layer to this code.
- explicit(t: tuple, pol: bool = False, other_young: YoungDiagram = YoungDiagram(_partition=(0,)))[source]
Calculates the Schur polynomial in terms of Miwa coordinates using the determinant formula.
First argument is the set of Miwa coordinates. The second argument is a boolean to define the sympy polynomial. The third argument gives the skew Schur polynomials.
There is a method below, skew_schur, to make the calculation of skew-Schur polynomials more explicit.
- skew_schur(t: tuple, other_young: YoungDiagram, pol: bool = False)[source]
This method returns the Skew Schur polynomials. It is a wrap of the explicit method.