Typedef Documentation◆ cmatr
A matrix of complex numbers. ◆ cnum
A complex number, needed as amplitudes in general are complex. ◆ col_amp
Define a type to contain a linear combination of color structures, a col_amp contains the actual color amplitude in a Col_amp. ◆ col_basis
Define a type to store all basis vectors. ◆ col_str
For containing a vector (or list) of Quark_lines the color information part of a Col_str. The col_str is a product of Quark_lines, contained in a vector of quark-lines. ◆ cvec
A vector of complex numbers. ◆ dmatr
A matrix of double numbers. ◆ dvec
A vector of double numbers. ◆ poly_matr
To contain a matrix of Polynomials, a vector of Poly_vec. ◆ poly_vec
To contain a vector of Polynomials. ◆ polynomial
For containing the info (as opposed to the functions) of a Polynomial. The Polynomial is essentially a sum of Monomials, contained in a vector of Monomials. Note that a Monomial "is" TR^a Nc^b CF^c* int_part*cnum_part where int_part is an integer factor and cnum_part a complex numerical factor. An empty polynomial is defined as 1. ◆ quark_line
Define a type to contain a quark-line with gluons attached, the actual color information about how quarks are ordered in a Quark_line. ◆ uint
An unsigned int. Function Documentation◆ operator!=() [1/8]Define the operator != for Poly_vec, each Polynomial has to be identical. ◆ operator!=() [2/8]◆ operator!=() [3/8]
Operator != for Polynomial. Returns false if Poly1==Poly2, and true otherwise. ◆ operator!=() [4/8]Define the operator != Monomial. Returns false if Mon1==Mon2, and true otherwise. ◆ operator!=() [5/8]Define the operator != for two col_str's. Returns false if cs1==cs2 and false otherwise. ◆ operator!=() [6/8]
The negation of the Quark_line operator ==. ◆ operator!=() [7/8]Define the operator != for two Col_amps. ◆ operator!=() [8/8]Define the operator != for two Col_str's, the negation of ==. Function does NOT first normal order Col_strs. ◆ operator*() [1/55]Operator * for Monomial and int. The int_part member is multiplied by i, whereas other members are kept constant. ◆ operator*() [2/55]Operator * for int and Monomial. Returns Mon*i. ◆ operator*() [3/55]Operator * for Monomial and cnum. The member Mon.cnum_part is multiplied by c, whereas other members are kept the same. ◆ operator*() [4/55]Operator * for cnum and Monomial, returns Mon*c. ◆ operator*() [5/55]Operator * for Monomial and double. The member Mon.cnum_part is multiplied by c, whereas other members are kept the same. ◆ operator*() [6/55]Operator * for double and Monomial, returns Mon*d. ◆ operator*() [7/55]Operator * for Monomials. The powers, pow_TR, pow_Nc and pow_CF are added, and the numbers int_part and mon are multiplied. ◆ operator*() [8/55]
Operator * for Polynomial and int, loops over Monomials and multiplies int_part with i. If Poly is empty=1, a default Monomial=1 is first appended to Poly. ◆ operator*() [9/55]
Operator * for int and Polynomial. Returns Poly*i. ◆ operator*() [10/55]
Define the operator * for Quark_line and int. The Polynomial of the Quark_line is multiplied with i. ◆ operator*() [11/55]
Operator * for Polynomial and cnum, loops over Monomials and multiplies cnum_partwith c. If Poly is empty=1, a default Monomial=1 is first appended to poly. ◆ operator*() [12/55]
Define the operator * for Quark_line and int, returns Ql*i. ◆ operator*() [13/55]
Operator * for cnum and Polynomial, returns Poly*c. ◆ operator*() [14/55]
Define the operator * for Quark_line and cnum. The Polynomial of the Quark_line is multiplied with c. ◆ operator*() [15/55]
Define the operator * for Quark_line and cnum, returns Ql*c. ◆ operator*() [16/55]
Operator * for Polynomial and double, loops over Monomials and multiplies cnum_partwith d. If Poly is empty=1, a default Monomial=1 is first appended to poly. ◆ operator*() [17/55]
Operator * for Polynomial and double, returns Poly*d. ◆ operator*() [18/55]
Define the operator * for Quark_line and double. The Polynomial of the Quark_line is multiplied with d. ◆ operator*() [19/55]
Operator * for Polynomial and Monomial, loops over Monomials in Poly, and multiplies each with Mon. If Poly is empty=1, a Polynomial with one Monomial=Mon is returned. ◆ operator*() [20/55]
Define the operator * for Quark_line and double,. returns Ql*d. ◆ operator*() [21/55]
Operator * for Monomial and Polynomial, returns Poly*Mon. ◆ operator*() [22/55]
Define the operator * for Quark_line and Monomial. The polynomial of the Quark_line is multipled with Mon. ◆ operator*() [23/55]
Operator * for Polynomials. (For details, see code.) ◆ operator*() [24/55]
Define the operator * for Quark_line and Monomial. returns Ql*Mon. ◆ operator*() [25/55]
Define the operator * for Quark_line and Polynomial. The Polynomial of the Quark_line is multiplied with Poly. ◆ operator*() [26/55]
Define the operator * for Quark_line and Polynomial returns Ql*Poly. ◆ operator*() [27/55]Define the operator * for Col_str and int. ◆ operator*() [28/55]Define the operator * for int and Col_str. ◆ operator*() [29/55]Define the operator * for Col_str and double. ◆ operator*() [30/55]Define the operator * for double and Col_str. ◆ operator*() [31/55]Define the operator * for Col_str and cnum. ◆ operator*() [32/55]Define the operator * for cnum and Col_str. ◆ operator*() [33/55]◆ operator*() [34/55]◆ operator*() [35/55]
Define the operator * for Col_str and Polynomial. ◆ operator*() [36/55]
Define the operator * for Polynomial and Col_str. ◆ operator*() [37/55]
Define the operator * for a Col_str and a Quark_line, adding Ql and multiplying Polynomial info. ◆ operator*() [38/55]
Define the operator * for a Quark_line and a Col_str, adding Ql and multiplying Polynomial info. ◆ operator*() [39/55]Define the operator * for two Col_str's, adding Ql and multiplying Polynomial info. ◆ operator*() [40/55]
Define the operator * for two Quark_lines. Clearly the result cannot be contained in a Quark_line, but needs (at least) a Col_str. ◆ operator*() [41/55]Define the operator * for Col_amps and integers. ◆ operator*() [42/55]Define the operator * for integers number and Col_amp. ◆ operator*() [43/55]Define the operator * for Col_amps and complex number. ◆ operator*() [44/55]Define the operator * for complex number and Col_amp. ◆ operator*() [45/55]Define the operator * for Col_amp and double. ◆ operator*() [46/55]Define the operator * for double and Col_amp. ◆ operator*() [47/55]◆ operator*() [48/55]◆ operator*() [49/55]
Define the operator * for Col_amp and Polynomial. ◆ operator*() [50/55]
◆ operator*() [51/55]
Define the operator * for Col_amp and Quark_line. ◆ operator*() [52/55]
Define the operator * for Quark_line and Col_amp. ◆ operator*() [53/55]◆ operator*() [54/55]◆ operator*() [55/55]Define the operator * for Col_amps. ◆ operator*=() [1/10]Operator *= for Monomial and int. The int_part member is multiplied by i, whereas other members are kept constant. ◆ operator*=() [2/10]Operator *= for Monomial and cnum. The cnum_part member is multiplied by c, whereas other members are kept constant. ◆ operator*=() [3/10]Operator *= for Monomial and double. The cnum_part member is multiplied by d, whereas other members are kept constant. ◆ operator*=() [4/10]Operator *= for Monomials. Mon1 is changed by being multipled with Mon2. ◆ operator*=() [5/10]
Operator *= for Polynomial and int. Multiplies Poly with i. ◆ operator*=() [6/10]
Operator *= for Polynomial and double. Multiplies Poly with d. ◆ operator*=() [7/10]
Operator *= for Polynomial and cnum. Multiplies Poly with c. ◆ operator*=() [8/10]
Operator *= for Polynomial and Monomial. Multiplies Poly with Mon. ◆ operator*=() [9/10]
Operator *= for Polynomial and Polynomial. Multiplies Poly1 with Poly2. ◆ operator*=() [10/10]Define the operator *= for two Col_amps. ◆ operator+() [1/8]
Operator + for Polynomial and a single Monomial. ◆ operator+() [2/8]
Operator + for a single Monomial and a Polynomial, returns Poly+Mon. ◆ operator+() [3/8]
Operator + for Polynomials, appends Momomails from Poly2 to Poly1. If one of the Polynomials is empty=1, this is compensated for by first appending a Monomial=1 to the empty Polynomial. ◆ operator+() [4/8]◆ operator+() [5/8]◆ operator+() [6/8]Define the operator + for two Col_amps. Adds Scalars, and adds Col_strs. ◆ operator+() [7/8]
Defining + operator to be able to erase elements at place. ◆ operator+() [8/8]
Defining + operator to be able to erase elements at place. ◆ operator+=() [1/4]
Define the operator += for Polynomials. The Monomial is appended unless Mon.int_part=0. ◆ operator+=() [2/4]
Define the operator += for Polynomials. This operator appends the Monomials of Poly2 to Poly1. ◆ operator+=() [3/4]Define the operator += for two Col_amp+=Col_str. ◆ operator+=() [4/4]Define the operator += for two Col_amps. ◆ operator-() [1/7]
Operator - for Polynomial and a single Monomial. Changes sign of Monomial by changing int_part and returns Poly+(-Mon). ◆ operator-() [2/7]
Operator - for Polynomial and a single Monomial changes the sign of Poly by changing int_part, and then adds Mon to (-Poly). ◆ operator-() [3/7]
Operator - for Polynomials, changes sign of Poly2, and then returns Poly1 + (-Poly2). ◆ operator-() [4/7]Define the operator - for two Col_amps. Subtract Scalar of Ca2 from Ca1, and subtracts (=appends with minus sign) Col_strs. ◆ operator-() [5/7]Define the operator - for Col_amp-Col_str. Define the operator - for Col_str-Col_amp. ◆ operator-() [6/7]
◆ operator-() [7/7]
◆ operator<()Operator to find the "smallest" of two Monomials. The Monomials are ordered first according to pow_Nc+pow_CF, then according to pow_Nc (for same pow_Nc+pow_CF) then according to int_part*abs(cnum_part), then according to int_part, and finally according to pow_TR. NOTE: this ordering does not agree with ordering according to numerical value. NOTE: If the Monomials are equal, Mon1 is not smaller so false will be returned. ◆ operator<<() [1/20]
Operator << for poly_vec. ◆ operator<<() [2/20]
Operator << for Poly_vec. ◆ operator<<() [3/20]
Operator << for poly_matr. ◆ operator<<() [4/20]
Operator << for poly_vec. ◆ operator<<() [5/20]
Define the operator << for Polynomial. ◆ operator<<() [6/20]
Define the operator << for Monomial. ◆ operator<<() [7/20]
Define the operator << for polynomial. ◆ operator<<() [8/20]
Define the operator << for col_str. ◆ operator<<() [9/20]
Define the operator << for Quark_line. ◆ operator<<() [10/20]
Define the operator << for col_amp. ◆ operator<<() [11/20]
Define the operator << for Col_amp. ◆ operator<<() [12/20]
Define the operator << for Col_str. ◆ operator<<() [13/20]
Define the operator << for vector of int. ◆ operator<<() [14/20]
Define the operator << for cvec. ◆ operator<<() [15/20]
Define the operator << for dvec. ◆ operator<<() [16/20]
Define the operator << for cmatr. ◆ operator<<() [17/20]
Define the operator << for dmatr. ◆ operator<<() [18/20]
Define the operator << for std::pair<int, int>. ◆ operator<<() [19/20]
Define the operator << for col_basis. ◆ operator<<() [20/20]
◆ operator==() [1/8]Define the operator == for Poly_vec, each Polynomial has to be identical. ◆ operator==() [2/8]◆ operator==() [3/8]
Define the operator == for Polynomial By definition, each Monomial has to be identical, as order matters 1+2 is not 2+1. ◆ operator==() [4/8]Operator == for Monomials, all parts must be equal. For the numerical part, an accuracy is used for the ratio. ◆ operator==() [5/8]Define the operator == for two col_str's. The col_str's must have equal length and all Quark_lines must be the same (i.e. have same Polynomial and same parton ordering). The quark_lines are NOT normal ordered before comparison. ◆ operator==() [6/8]
Define the operator == for two Quark_lines the quark_lines must be equal, the member variable open and the Polynomials must be equal. Note that for Polynomials cf+Nc!=Nc+cf. ◆ operator==() [7/8]Define the operator == for two Col_amps. ◆ operator==() [8/8]Define the operator == for two Col_str's the col_strs must be equal, and the Polynomials must be equal. Note that for Polynomials cf+Nc!=Nc+cf. Function does NOT first normal order Col_strs. Variable Documentation◆ accuracy
This sets the accuracy for numerical comparisons. It is used for numerical comparison for example when the symmetry of a matrix is checked, when it's checked if a matrix is diagonal when realness is checked and when turning complex numbers into real numbers. It is also used by << for dmatr and the Polynomial member function simplify . Generated on Fri Jun 2 2017 11:57:53 for ColorFull by 1.8.13 |