Skip to content
Snippets Groups Projects
Commit 56605d71 authored by Bertram Kopf's avatar Bertram Kopf
Browse files

modified procedure to add kMatrixProdSuffixes for individual kMats

parent c3697c5d
No related branches found
No related tags found
No related merge requests found
......@@ -77,7 +77,6 @@ ParserBase::ParserBase(int argc,char **argv)
,_noOfDataEvts(1000000)
,_tolerance(0.1)
,_noInterScattPoints(0)
,_kMatrixProdSuffix("")
{
string globalCofigFilePath="/ConfigParser/global.cfg";
_configFile=getenv("TOP_DIR")+globalCofigFilePath;
......@@ -163,7 +162,7 @@ ParserBase::ParserBase(int argc,char **argv)
("calcContribution",po::value< vector<string> >(&_calcContribution), "Calculate contribution of partial wave")
("minimumTolerance", po::value<double>(&_tolerance), "Minimum tolerance")
("noOfInterpolatedScatteringPoints", po::value<int>(&_noInterScattPoints), "number of interpolated scattering points")
("kMatrixProdSuffix", po::value<std::string>(&_kMatrixProdSuffix),"suffix for fit parameter of the P-vectors in the K-matrix approach")
("kMatrixProdSuffix", po::value< vector<string> >(&_kMatrixProdSuffix),"suffix for fit parameter of the P-vectors in the K-matrix approach")
;
}
......@@ -263,7 +262,6 @@ bool ParserBase::parseCommandLine(int argc, char **argv)
<< "pdg table: " << _pdgTableFile << "\n\n"
<< "minimumTolerance: " << _tolerance << "\n\n"
<< "no of interpolated scattering points" << _noInterScattPoints << "\n\n"
<< "suffix for P-vector parameter in the K-matrix approach" << _kMatrixProdSuffix << "\n\n"
<< endl;
......@@ -341,6 +339,11 @@ bool ParserBase::parseCommandLine(int argc, char **argv)
std::cout << (*it) << "\n";
}
std::cout << "\nK-matrix prod suffix:" << std::endl;
for (it=_kMatrixProdSuffix.begin(); it!=_kMatrixProdSuffix.end();++it){
std::cout << (*it) << "\n";
}
std::cout << "\nproduction formalism:\t" << _productionFormalism << std::endl;
std::cout << "fitqRProduction:\t" << _fitqRProduction << std::endl;
......
......@@ -115,7 +115,7 @@ public:
const int noOfDataEvts() const {return _noOfDataEvts;}
const double tolerance() const {return _tolerance;}
const int noOfInterpolatedScattPoints() const {return _noInterScattPoints;}
const std::string kMatrixProdSuffix() const {return _kMatrixProdSuffix;}
const std::vector<std::string>& addKmatrixProdSuffix() const {return _kMatrixProdSuffix;}
protected:
virtual bool parseCommandLine(int argc,char **argv);
......@@ -188,5 +188,5 @@ protected:
int _noOfDataEvts;
double _tolerance;
int _noInterScattPoints;
std::string _kMatrixProdSuffix;
std::vector<std::string> _kMatrixProdSuffix;
};
......@@ -59,7 +59,26 @@ KMatrixDynamics::KMatrixDynamics(std::string& name, std::vector<Particle*>& fsPa
init();
_isLdependent=true;
ParserBase* currentParser=GlobalEnv::instance()->Channel(channelID)->parser();
_pVecSuffix=currentParser->kMatrixProdSuffix();
const std::vector<std::string> kMatProdSuffixes=currentParser->addKmatrixProdSuffix();
std::map<std::string, std::string> kMatKeyProdSuffNames;
std::vector<std::string>::const_iterator itStr;
for ( itStr = kMatProdSuffixes.begin(); itStr != kMatProdSuffixes.end(); ++itStr){
std::stringstream stringStr;
stringStr << (*itStr);
std::string keyStr;
stringStr >> keyStr;
std::string suffStr;
stringStr >> suffStr;
kMatKeyProdSuffNames[keyStr]=suffStr;
}
std::map<std::string, std::string>::const_iterator it = kMatKeyProdSuffNames.find(_kMatName);
if(it!=kMatKeyProdSuffNames.end()){
_pVecSuffix=kMatKeyProdSuffNames.at(_kMatName);;
}
}
KMatrixDynamics::~KMatrixDynamics()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment