dynamic cast to derived reaction classes and print Arrhenius parameters and third body efficiencies

This commit is contained in:
Yeongdo Park 2018-11-07 07:25:15 -05:00
parent 5724334e1b
commit 8e31407c61

View file

@ -137,14 +137,41 @@ int main(int argc, char *argv[])
{
case Cantera::ELEMENTARY_RXN:
Info << "ELEMENTARY_RXN" << endl;
Info << std::dynamic_pointer_cast<Cantera::ElementaryReaction>(r)->rate.preExponentialFactor() << tab
<< std::dynamic_pointer_cast<Cantera::ElementaryReaction>(r)->rate.temperatureExponent() << tab
<< std::dynamic_pointer_cast<Cantera::ElementaryReaction>(r)->rate.activationEnergy_R() << endl;
break;
case Cantera::THREE_BODY_RXN:
Info << "THREE_BODY_RXN" << endl;
Info << std::dynamic_pointer_cast<Cantera::ElementaryReaction>(r)->rate.preExponentialFactor() << tab
<< std::dynamic_pointer_cast<Cantera::ElementaryReaction>(r)->rate.temperatureExponent() << tab
<< std::dynamic_pointer_cast<Cantera::ElementaryReaction>(r)->rate.activationEnergy_R() << endl;
for (label l = 0; l < nsp; l++)
{
Info << gas_.speciesName(l) << tab
<< std::dynamic_pointer_cast<Cantera::ThreeBodyReaction>(r)->third_body.efficiency(gas_.speciesName(l)) << endl;
}
break;
case Cantera::FALLOFF_RXN:
Info << "FALLOFF_RXN" << endl;
Info << std::dynamic_pointer_cast<Cantera::FalloffReaction>(r)->low_rate.preExponentialFactor() << tab;
Info << std::dynamic_pointer_cast<Cantera::FalloffReaction>(r)->low_rate.temperatureExponent() << tab;
Info << std::dynamic_pointer_cast<Cantera::FalloffReaction>(r)->low_rate.activationEnergy_R() << endl;
Info << std::dynamic_pointer_cast<Cantera::FalloffReaction>(r)->high_rate.preExponentialFactor() << tab;
Info << std::dynamic_pointer_cast<Cantera::FalloffReaction>(r)->high_rate.temperatureExponent() << tab;
Info << std::dynamic_pointer_cast<Cantera::FalloffReaction>(r)->high_rate.activationEnergy_R() << endl;
Info << std::dynamic_pointer_cast<Cantera::FalloffReaction>(r)->falloff->getType() << tab
<< std::dynamic_pointer_cast<Cantera::FalloffReaction>(r)->falloff->nParameters() << endl;
break;
case Cantera::PLOG_RXN: