herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.3.0
MatrixElement
Matchbox
ColorFull
Tree_level_gluon_basis.h
1
// -*- C++ -*-
2
/*
3
* Trace_basis.h
4
* Contains the declarations of the class Tree_level_gluon_basis, related types and operators
5
* Created on: Aug 9, 2012
6
* Author: Malin Sjodahl
7
*/
8
9
#ifndef COLORFULL_Tree_level_gluon_basis_h
10
#define COLORFULL_Tree_level_gluon_basis_h
11
12
#include "Trace_type_basis.h"
13
14
namespace
ColorFull {
15
16
23
class
Tree_level_gluon_basis
:
public
Trace_type_basis
{
24
public
:
25
27
Tree_level_gluon_basis
():
Trace_type_basis
(){
28
initialize
();
29
}
30
32
Tree_level_gluon_basis
(
int
n_g ):
Trace_type_basis
(){
33
initialize
();
34
create_basis
( n_g );
35
}
36
37
/******************** Basis creation **********************/
38
// Special functions are needed as half the color structure is implicit
39
46
void
create_basis
(
int
n_g );
47
48
/******************** Basis reading and writing **********************/
49
53
void
read_in_Col_basis
( std::string filename );
54
60
void
read_in_Col_basis
( );
61
67
void
write_out_Col_basis
( )
const
;
68
74
void
write_out_Col_basis
( std::string filename )
const
;
75
76
77
protected
:
78
81
virtual
std::ostream&
write_out_Col_basis_to_stream
( std::ostream& out )
const
;
82
83
84
private
:
85
87
void
initialize
(){
88
tree_level_gluon_basis =
true
;
89
max_ql
=1;
90
}
91
94
Polynomial
ij_entry
(
const
int
i,
const
int
j )
const
;
95
96
/******************** Basis creation **********************/
97
99
Col_amp
create_trace_basis
(
int
n_g )
const
;
100
104
Col_amp
add_one_gluon
(
const
Col_str
& Cs,
int
g_new )
const
;
105
111
Col_amp
add_one_gluon
(
const
Col_amp
& Old_basis,
int
g_new )
const
;
112
113
};
114
115
}
/* namespace ColorFull */
116
#endif
/* COLORFULL_Tree_level_gluon_basis_h */
ColorFull::Col_amp
The full color amplitude is Scalar + Cs1+Cs2+Cs3... Col_amp is a class to contain info on several Col...
Definition:
Col_amp.h:24
ColorFull::Col_str
A class to contain ONE color structure, a direct product of Quark_lines, multiplying a Polynomial,...
Definition:
Col_str.h:26
ColorFull::Polynomial
For containing a Polynomial (in Nc, CF and TR), as a sum of Monomials.
Definition:
Polynomial.h:30
ColorFull::Trace_type_basis
Trace_type_basis is used for the common features of Trace_basis and Tree_level_gluon_basis which both...
Definition:
Trace_type_basis.h:20
ColorFull::Trace_type_basis::max_ql
int max_ql
The maximal number of quark-lines allowed in the basis.
Definition:
Trace_type_basis.h:72
ColorFull::Tree_level_gluon_basis
This class is for containing tree level gluon bases, i.e.
Definition:
Tree_level_gluon_basis.h:23
ColorFull::Tree_level_gluon_basis::write_out_Col_basis_to_stream
virtual std::ostream & write_out_Col_basis_to_stream(std::ostream &out) const
Function for writing out the basis in a human readable format to an ostream.
ColorFull::Tree_level_gluon_basis::Tree_level_gluon_basis
Tree_level_gluon_basis(int n_g)
Constructor for creating a tree level gluon basis with n_g gluons.
Definition:
Tree_level_gluon_basis.h:32
ColorFull::Tree_level_gluon_basis::ij_entry
Polynomial ij_entry(const int i, const int j) const
Calculate element ij in scalar product matrix using the implicit presence of a charge conjugated Col_...
ColorFull::Tree_level_gluon_basis::add_one_gluon
Col_amp add_one_gluon(const Col_amp &Old_basis, int g_new) const
Compute the basis if one gluon is added to the old basis Old_basis.
ColorFull::Tree_level_gluon_basis::add_one_gluon
Col_amp add_one_gluon(const Col_str &Cs, int g_new) const
Computes the new basis states coming from one old Col_str when one gluon, g_new, is added.
ColorFull::Tree_level_gluon_basis::initialize
void initialize()
Little helper function, called by constructors.
Definition:
Tree_level_gluon_basis.h:87
ColorFull::Tree_level_gluon_basis::read_in_Col_basis
void read_in_Col_basis(std::string filename)
Function for reading in the basis from a file.
ColorFull::Tree_level_gluon_basis::write_out_Col_basis
void write_out_Col_basis(std::string filename) const
Function for writing out the basis to filename, (see basis_file_name in the Col_basis class).
ColorFull::Tree_level_gluon_basis::read_in_Col_basis
void read_in_Col_basis()
Function reading in the basis from default name (see basis_file_name in the Col_basis class).
ColorFull::Tree_level_gluon_basis::create_basis
void create_basis(int n_g)
Creates a basis with basis vectors saved in the cb member.
ColorFull::Tree_level_gluon_basis::Tree_level_gluon_basis
Tree_level_gluon_basis()
Default constructor.
Definition:
Tree_level_gluon_basis.h:27
ColorFull::Tree_level_gluon_basis::write_out_Col_basis
void write_out_Col_basis() const
Function for writing out the basis to default name, (see basis_file_name in the Col_basis class).
ColorFull::Tree_level_gluon_basis::create_trace_basis
Col_amp create_trace_basis(int n_g) const
Function for creating a basis with n_g gluons.
Generated on Thu Jun 20 2024 17:50:52 for Herwig by
1.9.6