21 reg(
"inlet", [](shared_ptr<Solution> solution,
const string&
id) {
22 return new Inlet1D(solution,
id);
24 reg(
"empty", [](shared_ptr<Solution> solution,
const string&
id) {
25 return new Empty1D(solution,
id);
27 reg(
"symmetry-plane", [](shared_ptr<Solution> solution,
const string&
id) {
28 return new Symm1D(solution,
id);
30 reg(
"outlet", [](shared_ptr<Solution> solution,
const string&
id) {
33 reg(
"outlet-reservoir", [](shared_ptr<Solution> solution,
const string&
id) {
36 reg(
"surface", [](shared_ptr<Solution> solution,
const string&
id) {
37 return new Surf1D(solution,
id);
39 reg(
"reacting-surface", [](shared_ptr<Solution> solution,
const string&
id) {
42 reg(
"gas-flow", [](shared_ptr<Solution> solution,
const string&
id) {
43 return new Flow1D(solution,
id);
45 reg(
"legacy-flow", [](shared_ptr<Solution> solution,
const string&
id) {
46 return new StFlow(solution,
id);
48 reg(
"ion-flow", [](shared_ptr<Solution> solution,
const string&
id) {
49 return new IonFlow(solution,
id);
51 reg(
"free-flow", [](shared_ptr<Solution> solution,
const string&
id) {
53 if (solution->transport()->transportModel() ==
"ionized-gas") {
54 ret = new IonFlow(solution, id);
56 ret = new Flow1D(solution, id);
61 reg(
"axisymmetric-flow", [](shared_ptr<Solution> solution,
const string&
id) {
63 if (solution->transport()->transportModel() ==
"ionized-gas") {
64 ret = new IonFlow(solution, id);
66 ret = new Flow1D(solution, id);
71 reg(
"unstrained-flow", [](shared_ptr<Solution> solution,
const string&
id) {
73 if (solution->transport()->transportModel() ==
"ionized-gas") {
74 ret = new IonFlow(solution, id);
76 ret = new Flow1D(solution, id);
Boundary objects for one-dimensional simulations.
Headers for the Transport object, which is the virtual base class for all transport property evaluato...
Factory class to create domain objects.
static std::mutex domain_mutex
Mutex for use when calling the factory.
DomainFactory()
default constructor, which is defined as private
void deleteFactory() override
Virtual abstract function that deletes the factory.
static DomainFactory * s_factory
Pointer to the single instance of the factory.
static DomainFactory * factory()
Return a pointer to the factory.
A terminator that does nothing.
void reg(const string &name, function< Domain1D *(Args...)> f)
Register a new object construction function.
This class represents 1D flow domains that satisfy the one-dimensional similarity solution for chemic...
void setUnstrainedFlow()
Set flow configuration for burner-stabilized flames, using specified inlet mass fluxes.
void setFreeFlow()
Set flow configuration for freely-propagating flames, using an internal point with a fixed temperatur...
void setAxisymmetricFlow()
Set flow configuration for axisymmetric counterflow flames, using specified inlet mass fluxes.
This class models the ion transportation in a flame.
An outlet with specified composition.
This class represents 1D flow domains that satisfy the one-dimensional similarity solution for chemic...
Namespace for the Cantera kernel.