48 using namespace starlightConstants;
54 ,_protonEnergy(inputParametersInstance.protonEnergy())
55 ,_electronEnergy(inputParametersInstance.electronEnergy())
56 ,_beamLorentzGamma(inputParametersInstance.beamLorentzGamma())
57 ,_baseFileName(inputParametersInstance.baseFileName())
58 ,_maxW(inputParametersInstance.maxW())
59 ,_minW(inputParametersInstance.minW())
60 ,_nmbWBins(inputParametersInstance.nmbWBins())
61 ,_maxRapidity(inputParametersInstance.maxRapidity())
62 ,_nmbRapidityBins(inputParametersInstance.nmbRapidityBins())
63 ,_nEBins(inputParametersInstance.nmbEnergyBins())
64 ,_minGammaQ2(inputParametersInstance.minGammaQ2())
65 ,_maxGammaQ2(inputParametersInstance.maxGammaQ2())
66 ,_nmbGammaQ2Bins(inputParametersInstance.nmbGammaQ2Bins())
67 ,_cmsMaxPhotonEnergy(inputParametersInstance.cmsMaxPhotonEnergy())
68 ,_cmsMinPhotonEnergy(inputParametersInstance.cmsMinPhotonEnergy())
69 ,_targetMaxPhotonEnergy(inputParametersInstance.targetMaxPhotonEnergy())
70 ,_targetMinPhotonEnergy(inputParametersInstance.targetMinPhotonEnergy())
71 ,_productionMode(inputParametersInstance.productionMode())
72 ,_beamBreakupMode(inputParametersInstance.beamBreakupMode())
74 cout <<
"Creating Luminosity Tables."<<endl;
76 cout <<
"Luminosity Tables created."<<endl;
100 std::string wyFileName;
104 wylumfile.precision(15);
106 std::string EQ2FileName;
110 EQ2lumfile.precision(15);
118 EQ2lumfile.open(EQ2FileName.c_str());
122 wylumfile.open(wyFileName.c_str());
128 wylumfile <<
_maxW <<endl;
129 wylumfile <<
_minW <<endl;
141 for(
unsigned int i = 0; i <=
_nWbins - 1; ++i) {
142 W =
_wMin + double(i)*dW + 0.5*dW;
144 wylumfile << W << endl;
149 for(
unsigned int i = 0; i <=
_nYbins - 1; ++i) {
150 Y = -1.0*
_yMax + double(i)*dY + 0.5*
dY;
151 wylumfile << Y << endl;
156 if( A_2 == 0 && A_1 != 0 ){
158 }
else if( A_1 ==0 && A_2 != 0){
166 for(
unsigned int i = 0; i <
_nWbins; ++i) {
168 W =
_wMin + double(i)*dW + 0.5*dW;
171 for(
int j = 0; j <
_nEBins ; ++j) {
176 std::pair< double, double >* this_energy =
Q2arraylimits(Egamma);
177 double Q2min = this_energy->first;
178 double Q2max = this_energy->second;
183 EQ2lumfile << g_E<<endl;
185 EQ2lumfile << Q2min << endl;
186 EQ2lumfile << Q2max << endl;
188 double Q2 = std::exp( std::log(Q2min)+iQ2*std::log(Q2max/Q2min)/_nmbGammaQ2Bins );
189 EQ2lumfile<<
g(Egamma,Q2) <<endl;
191 wylumfile << csgA << endl;
197 wylumfile << bwnorm << endl;
203 ostringstream tag1, tag2;
206 string to_ret = tag1.str()+
","+tag2.str();