reactions. Now the kinetics operator carries around information that indicates whether a phase exists or not. If the phase exists then the species in it can be consumed by the kinetics heterogeneous operator. If it doesn't exist then species within the phase can only be created by the kinetics operator. Worked on Cantera's version control. In the config.h file, we now write several forms of version control information as preprocessor defines CANTERA_VERSION = double quoted string id'ing the branch number CANTERA_VERSION_MAJORNUMBER major number of Cantera as an int Defines that are specific to the branch and that are assigned a 1. e.g.: #define CANTERA_VERSION_18 1 #define CANTERA_VERSION_18_XXX 1 #define CANTERA_VERSION_18_LTD 1 In the Cantera.mak file, we write CANTERA_VERSION = double quoted string id'ing the branch number CANTERA_DEFINES = -DCANTERA_VERSION=@ctversion@
191 lines
6.2 KiB
C
Executable file
191 lines
6.2 KiB
C
Executable file
//
|
|
// Run the 'preconfig' script to generate 'config.h' from this input file.
|
|
//
|
|
#ifndef CT_CONFIG_H
|
|
#define CT_CONFIG_H
|
|
|
|
//---------------------------- Version Flags ------------------//
|
|
// Cantera version -> this will be a double-quoted string value
|
|
// refering to branch number within svn
|
|
#undef CANTERA_VERSION
|
|
|
|
// Integer for major number of Cantera
|
|
#define CANTERA_VERSION_MAJORNUMBER 18
|
|
// Flag indicating it's part of major version 18
|
|
#define CANTERA_VERSION_18 1
|
|
// Flag indicating it's a development version
|
|
#define CANTERA_VERSION_18_XXX 1
|
|
// Flag indictaing that its part of 1.8_LiquidTransportDevelop branch
|
|
#define CANTERA_VERSION_18_LTD 1
|
|
|
|
//------------------------ Development flags ------------------//
|
|
//
|
|
// Compile in additional debug printing where available.
|
|
// Note, the printing may need to be turned on via a switch.
|
|
// This just compiles in the code.
|
|
#undef DEBUG_MODE
|
|
|
|
// Compiling with PURIFY instrumentation
|
|
#undef PURIFY_MODE
|
|
|
|
//------------------------ Fortran settings -------------------//
|
|
|
|
|
|
// define types doublereal, integer, and ftnlen to match the
|
|
// corresponding Fortran data types on your system. The defaults
|
|
// are OK for most systems
|
|
|
|
typedef double doublereal; // Fortran double precision
|
|
typedef int integer; // Fortran integer
|
|
typedef int ftnlen; // Fortran hidden string length type
|
|
|
|
|
|
|
|
// Fortran compilers pass character strings in argument lists by
|
|
// adding a hidden argement with the length of the string. Some
|
|
// compilers add the hidden length argument immediately after the
|
|
// CHARACTER variable being passed, while others put all of the hidden
|
|
// length arguments at the end of the argument list. Define this if
|
|
// the lengths are at the end of the argument list. This is usually the
|
|
// case for most unix Fortran compilers, but is (by default) false for
|
|
// Visual Fortran under Windows.
|
|
#define STRING_LEN_AT_END
|
|
|
|
|
|
// Define this if Fortran adds a trailing underscore to names in object files.
|
|
// For linux and most unix systems, this is the case.
|
|
#undef FTN_TRAILING_UNDERSCORE
|
|
|
|
|
|
#undef HAS_SUNDIALS
|
|
#undef SUNDIALS_VERSION_22
|
|
#undef SUNDIALS_VERSION_23
|
|
#undef SUNDIALS_VERSION_24
|
|
|
|
//-------- LAPACK / BLAS ---------
|
|
|
|
#undef LAPACK_FTN_STRING_LEN_AT_END
|
|
#undef LAPACK_NAMES_LOWERCASE
|
|
#undef LAPACK_FTN_TRAILING_UNDERSCORE
|
|
|
|
|
|
//--------- operating system --------------------------------------
|
|
|
|
// The configure script defines this if the operatiing system is Mac
|
|
// OS X, This used to add some Mac-specific directories to the default
|
|
// data file search path.
|
|
#undef DARWIN
|
|
#undef HAS_SSTREAM
|
|
|
|
// Identify whether the operating system is cygwin's overlay of
|
|
// windows, with gcc being used as the compiler.
|
|
#undef CYGWIN
|
|
|
|
// Identify whether the operating system is windows based, with
|
|
// microsoft vc++ being used as the compiler
|
|
#undef WINMSVC
|
|
|
|
// Identify whether the operating system is solaris
|
|
// with a native compiler
|
|
#undef SOLARIS
|
|
|
|
//--------- Fonts for reaction path diagrams ----------------------
|
|
#undef RXNPATH_FONT
|
|
|
|
//---------- C++ Compiler Variations ------------------------------
|
|
|
|
// This define is needed to account for the variability for how
|
|
// static variables in templated classes are defined. Right now
|
|
// this is only turned on for the SunPro compiler on solaris.
|
|
// in that system , you need to declare the static storage variable.
|
|
// with the following line in the include file
|
|
//
|
|
// template<class M> Cabinet<M>* Cabinet<M>::__storage;
|
|
//
|
|
// Note, on other systems that declaration is treated as a definition
|
|
// and this leads to multiple defines at link time
|
|
#undef NEEDS_GENERIC_TEMPL_STATIC_DECL
|
|
|
|
//--------------------- Python ------------------------------------
|
|
// This path to the python executable is created during
|
|
// Cantera's setup. It identifies the python executable
|
|
// used to run Python to process .cti files. Note that this is only
|
|
// used if environment variable PYTHON_CMD is not set.
|
|
#undef PYTHON_EXE
|
|
|
|
// If this is defined, the Cantera Python interface will use the
|
|
// Numeric package
|
|
#undef HAS_NUMERIC
|
|
|
|
// If this is defined, the Cantera Python interface will use the
|
|
// numarray package
|
|
#undef HAS_NUMARRAY
|
|
|
|
// If this is defined, the Cantera Python interface will use the
|
|
// numpy package
|
|
#undef HAS_NUMPY
|
|
|
|
// If this is defined, then python will not be assumed to be
|
|
// present to support conversions
|
|
#undef HAS_NO_PYTHON
|
|
|
|
//--------------------- Cantera -----------------------------------
|
|
// This is the data pathway used to locate the top of the
|
|
// build directory.
|
|
#undef CANTERA_ROOT
|
|
|
|
// This data pathway is used to locate a directory where datafiles
|
|
// are to be found. Note, the local directory is always searched
|
|
// as well.
|
|
#undef CANTERA_DATA
|
|
|
|
|
|
#undef WITH_HTML_LOGS
|
|
|
|
// define STORE_MOLE_FRACTIONS if you want Cantera to internally
|
|
// represent the composition of a mixture as mole fractions. Usually
|
|
// the best choice.
|
|
#define STORE_MOLE_FRACTIONS
|
|
|
|
// define STORE_MASS_FRACTIONS if you want Cantera to internally
|
|
// represent the composition of a mixture as mass fractions. Usually
|
|
// results in slightly worse performance, but may not in all cases.
|
|
//#define STORE_MASS_FRACTIONS
|
|
#undef STORE_MASS_FRACTIONS
|
|
|
|
//--------------------- compile options ----------------------------
|
|
#undef USE_PCH
|
|
|
|
#undef THREAD_SAFE_CANTERA
|
|
|
|
//--------------------- optional phase models ----------------------
|
|
// This define indicates the enabling of the inclusion of
|
|
// accurate liquid/vapor equations
|
|
// of state for several fluids, including water, nitrogen, hydrogen,
|
|
// oxygen, methane, andd HFC-134a.
|
|
#undef INCL_PURE_FLUIDS
|
|
#undef WITH_PURE_FLUIDS
|
|
|
|
#undef WITH_LATTICE_SOLID
|
|
#undef WITH_METAL
|
|
#undef WITH_STOICH_SUBSTANCE
|
|
// Enable expanded thermodynamic capabilities, adding
|
|
// ideal solid solutions
|
|
#undef WITH_IDEAL_SOLUTIONS
|
|
// Enable expanded electrochemistry capabilities, include thermo
|
|
// models for electrolyte solutions.
|
|
#undef WITH_ELECTROLYTES
|
|
|
|
#undef WITH_PRIME
|
|
|
|
// Enable the VCS NonIdeal equilibrium solver. This is
|
|
// accessed by specifying the solver=2 option
|
|
#undef WITH_VCSNONIDEAL
|
|
|
|
//-------------- Optional Cantera Capabilities ----------------------
|
|
|
|
// Enable sensitivity analysis via changing H298 directly
|
|
// for species
|
|
#undef H298MODIFY_CAPABILITY
|
|
|
|
#endif
|