Cantera
Loading...
Searching...
No Matches
StarikovskiyVibrationalRelaxationRate.h
Go to the documentation of this file.
1//! @file StarikovskiyVibrationalRelaxationRate.h
2//! Starikovskiy vibrational relaxation reaction rate.
3//! @since New in %Cantera 4.0
4
5// This file is part of Cantera. See License.txt in the top-level directory or
6// at https://cantera.org/license.txt for license and copyright information.
7
8#ifndef CT_STARIKOVSKIYVIBRATIONALRELAXATIONRATE_H
9#define CT_STARIKOVSKIYVIBRATIONALRELAXATIONRATE_H
10
13
14namespace Cantera
15{
16
17//! Starikovskiy vibrational relaxation rate implementation.
18/**
19 * Maps the user-facing parameters b, C0, C13, Cm, m, Cn, and n onto the generic
20 * coefficients stored by VibrationalRelaxationRate.
21 *
22 * @ingroup otherRateGroup
23 */
24class StarikovskiyVibrationalRelaxationRate final
26{
27public:
28 StarikovskiyVibrationalRelaxationRate() = default;
29
30 explicit StarikovskiyVibrationalRelaxationRate(
31 double A, double b = 0.0, double C0 = 0.0, double C13 = 0.0, double Cm = 0.0,
32 double m = 1.0, double Cn = 0.0, double n = 1.0);
33
34 explicit StarikovskiyVibrationalRelaxationRate(
35 const AnyMap& node, const UnitStack& rate_units = {});
36
37 void setParameters(
38 const AnyMap& node, const UnitStack& rate_units) override;
39
40 unique_ptr<MultiRateBase> newMultiRate() const override
41 {
42 return make_unique<
43 MultiRate<StarikovskiyVibrationalRelaxationRate,
45 }
46
47 const string type() const override
48 {
49 return "Starikovskiy-vibrational-relaxation";
50 }
51
52protected:
53 void getRateParameters(AnyMap& rateNode) const override;
54};
55
56} // namespace Cantera
57
58#endif
Header for vibrational relaxation reaction rates in plasma kinetics.
A map of string keys to values whose type can vary at runtime.
Definition AnyMap.h:431
A class template handling ReactionRate specializations.
Definition MultiRate.h:22
unique_ptr< MultiRateBase > newMultiRate() const override
Create a rate evaluator for reactions of a particular derived type.
void setParameters(const AnyMap &node, const UnitStack &rate_units) override
Set parameters.
void getRateParameters(AnyMap &rateNode) const override
Store the model-specific coefficients in the rate-constant node.
const string type() const override
String identifying reaction rate specialization.
VibrationalRelaxationRate()
Default constructor.
Namespace for the Cantera kernel.
Definition AnyMap.cpp:595
Unit aggregation utility.
Definition Units.h:105
Shared temperature data for vibrational relaxation rates.