38 if ((nGroup >= 0) && (nGroup <= 7)){
41 nIrreps = getNumberOfIrrepsPrivate(groupNumber);
52 if ((nGroup >= 0) && (nGroup <= 7)){
55 nIrreps = getNumberOfIrrepsPrivate(groupNumber);
70 return isActivated ? getGroupNamePrivate(groupNumber) :
"error" ;
76 return ((nGroup>=0)&&(nGroup<=7)) ? getGroupNamePrivate(nGroup) :
"error" ;
82 if (nGroup==0)
return "c1";
83 if (nGroup==1)
return "ci";
84 if (nGroup==2)
return "c2";
85 if (nGroup==3)
return "cs";
86 if (nGroup==4)
return "d2";
87 if (nGroup==5)
return "c2v";
88 if (nGroup==6)
return "c2h";
89 if (nGroup==7)
return "d2h";
96 return isActivated ? nIrreps : -1 ;
102 if (nGroup == 0)
return 1;
103 if (nGroup <= 3)
return 2;
104 if (nGroup <= 6)
return 4;
111 if (!isActivated)
return "error1";
113 if ( (irrepNumber<0) || (irrepNumber >= nIrreps) )
return "error2";
115 return getIrrepNamePrivate(groupNumber,irrepNumber);
122 if (nIrrep == 0)
return "A";
126 if (nIrrep == 0)
return "Ag";
127 if (nIrrep == 1)
return "Au";
131 if (nIrrep == 0)
return "A";
132 if (nIrrep == 1)
return "B";
136 if (nIrrep == 0)
return "A'";
137 if (nIrrep == 1)
return "A\"";
141 if (nIrrep == 0)
return "A";
142 if (nIrrep == 1)
return "B1";
143 if (nIrrep == 2)
return "B2";
144 if (nIrrep == 3)
return "B3";
148 if (nIrrep == 0)
return "A1";
149 if (nIrrep == 1)
return "A2";
150 if (nIrrep == 2)
return "B1";
151 if (nIrrep == 3)
return "B2";
155 if (nIrrep == 0)
return "Ag";
156 if (nIrrep == 1)
return "Bg";
157 if (nIrrep == 2)
return "Au";
158 if (nIrrep == 3)
return "Bu";
162 if (nIrrep == 0)
return "Ag";
163 if (nIrrep == 1)
return "B1g";
164 if (nIrrep == 2)
return "B2g";
165 if (nIrrep == 3)
return "B3g";
166 if (nIrrep == 4)
return "Au";
167 if (nIrrep == 5)
return "B1u";
168 if (nIrrep == 6)
return "B2u";
169 if (nIrrep == 7)
return "B3u";
178 for (
int thegroup=0; thegroup<8; thegroup++){
179 cout <<
"######################################################" << endl;
180 cout <<
"Name = " << getGroupNamePrivate(thegroup) << endl;
181 cout <<
"nIrreps = " << getNumberOfIrrepsPrivate(thegroup) << endl;
182 cout <<
"Multiplication table :" << endl;
183 for (
int irrep1=-1; irrep1<getNumberOfIrrepsPrivate(thegroup); irrep1++){
184 for (
int irrep2=-1; irrep2<getNumberOfIrrepsPrivate(thegroup); irrep2++){
185 if ((irrep1 == -1) && (irrep2 == -1)) cout <<
"\t";
186 if ((irrep1 == -1) && (irrep2 >= 0 )) cout << getIrrepNamePrivate(thegroup, irrep2) <<
"\t";
187 if ((irrep2 == -1) && (irrep1 >= 0 )) cout << getIrrepNamePrivate(thegroup, irrep1) <<
"\t";
188 if ((irrep2 >= 0) && (irrep1 >= 0 )) cout << getIrrepNamePrivate(thegroup, directProd(irrep1, irrep2)) <<
"\t";
193 cout <<
"######################################################" << endl;
bool setGroup(const int nGroup)
Set the group.
int getNumberOfIrreps() const
Get the number of irreps for the currently activated group.
static void printAll()
Print all info contained in this class.
int getGroupNumber() const
Get the group number.
static int getNumberOfIrrepsPrivate(const int nGroup)
bool getIsActivated() const
Whether the group number is already activated.
string getGroupName() const
Get the name of the group.
static string getGroupNamePrivate(const int nGroup)
virtual ~Irreps()
Destructor.
static string getIrrepNamePrivate(const int nGroup, const int nIrrep)
string getIrrepName(const int irrepNumber) const
Get the name of the irrep with number irrepNumber of the activated group. The irrep with number 0 is ...