Cantera  2.5.1
PDSSFactory.cpp
Go to the documentation of this file.
1 //! @file PDSSFactory.cpp
2 
3 // This file is part of Cantera. See License.txt in the top-level directory or
4 // at https://cantera.org/license.txt for license and copyright information.
5 
13 
14 namespace Cantera
15 {
16 
17 PDSSFactory* PDSSFactory::s_factory = 0;
18 std::mutex PDSSFactory::thermo_mutex;
19 
20 PDSSFactory::PDSSFactory()
21 {
22  reg("ideal-gas", []() { return new PDSS_IdealGas(); });
23  reg("constant-volume", []() { return new PDSS_ConstVol(); });
24  addAlias("constant-volume", "constant_incompressible");
25  addAlias("constant-volume", "constant-incompressible");
26  reg("liquid-water-IAPWS95", []() { return new PDSS_Water(); });
27  addAlias("liquid-water-IAPWS95", "waterPDSS");
28  addAlias("liquid-water-IAPWS95", "waterIAPWS");
29  addAlias("liquid-water-IAPWS95", "water");
30  reg("ions-from-neutral-molecule", []() { return new PDSS_IonsFromNeutral(); });
31  addAlias("ions-from-neutral-molecule", "IonFromNeutral");
32  addAlias("ions-from-neutral-molecule", "ions-from-neutral");
33  reg("molar-volume-temperature-polynomial", []() { return new PDSS_SSVol(); });
34  addAlias("molar-volume-temperature-polynomial", "temperature_polynomial");
35  reg("density-temperature-polynomial", []() { return new PDSS_SSVol(); });
36  addAlias("density-temperature-polynomial", "density_temperature_polynomial");
37  reg("HKFT", []() { return new PDSS_HKFT(); });
38 }
39 
40 PDSS* PDSSFactory::newPDSS(const std::string& model)
41 {
42  return create(model);
43 }
44 
45 PDSS* newPDSS(const std::string& model)
46 {
47  return PDSSFactory::factory()->newPDSS(model);
48 }
49 
50 }
PDSS_ConstVol.h
PDSS_IonsFromNeutral.h
PDSS_SSVol.h
PDSS_Water.h
PDSS_IdealGas.h
PDSS_HKFT.h
PDSSFactory.h
Cantera
Namespace for the Cantera kernel.
Definition: AnyMap.cpp:263