[sourcegen] Add API for MultiPhase

This commit is contained in:
Ingmar Schoegl 2025-01-24 14:45:58 -06:00 committed by Ray Speth
parent 17d441901c
commit 80aa8a05e7
2 changed files with 56 additions and 0 deletions

View File

@ -0,0 +1,52 @@
# This file is part of Cantera. See License.txt in the top-level directory or
# at https://cantera.org/license.txt for license and copyright information.
docstring: |-
Auto-generated CLib API for %Cantera's MultiPhase class.
Implements a replacement for CLib's traditional @c ctmultiphase library.
prefix: mix3
base: MultiPhase
parents: [] # List of parent classes
derived: [] # List of specializations
recipes:
- name: new
implements: newMultiPhase
- name: addPhase
implements: MultiPhase::addPhase(shared_ptr<ThermoPhase>, double)
- name: init
- name: updatePhases
- name: nElements
- name: elementIndex
- name: nSpecies
- name: speciesIndex
implements: MultiPhase::speciesIndex(size_t, size_t)
- name: temperature
- name: setTemperature
- name: minTemp
- name: maxTemp
- name: charge
- name: phaseCharge
- name: pressure
- name: setPressure
- name: nAtoms
- name: nPhases
- name: phaseMoles
- name: setPhaseMoles
- name: setMoles
- name: setMolesByName
implements: MultiPhase::setMolesByName(const string&)
- name: speciesMoles
- name: elementMoles
- name: equilibrate
implements: MultiPhase::equilibrate(int, const char*, double, int, int, int)
- name: getChemPotentials
- name: enthalpy
- name: entropy
- name: gibbs
- name: cp
- name: volume
- name: speciesPhaseIndex
- name: moleFraction
- name: del
- name: cabinetSize
- name: parentHandle

View File

@ -9,6 +9,7 @@ ignore_files: []
# Ignore these specific functions: # Ignore these specific functions:
ignore_funcs: ignore_funcs:
ct_auto.yaml: [setLogWriter, setLogCallback] ct_auto.yaml: [setLogWriter, setLogCallback]
ctmix_auto.yaml: [addPhase]
# Cabinets with associated includes # Cabinets with associated includes
includes: includes:
@ -26,5 +27,8 @@ includes:
- cantera/kinetics/InterfaceKinetics.h - cantera/kinetics/InterfaceKinetics.h
Transport: Transport:
- cantera/transport/TransportFactory.h - cantera/transport/TransportFactory.h
MultiPhase:
- cantera/equil/MultiPhase.h
- cantera/thermo/ThermoPhase.h
Func1: Func1:
- cantera/numerics/Func1Factory.h - cantera/numerics/Func1Factory.h