Implements the radiation model of Liu & Rogg (1991). Optically thin limit,
gray-gas approximation using Planck mean absorption coefficients. Considers
emissions from CO2 and H2O, with the temperature-dependent absorption
coefficients calculated using polynomial fits to results from RADCAL
(Grosshandler, 1993).
In combination with the previous commit, this significantly improves the
convergence behavior of the solver when using multicomponent transport
properties. In many cases, the solver is now able to directly solve the
multicomponent problem directly from the mixture-averaged solution without any
timestepping.
Change the formulation of multicomponent diffusion fluxes to avoid using the
equivalent Fickian diffusion coefficient. That formulation leads to negative
diffusivities for some species at some grid points, which generate numerical
instabilities while timestepping. This formulation produces a more dense
Jacobian, but with a much better eigenvalue spectrum.
Calling solve() again after a successful solution no longer automatically
triggers a Jacobian update. This enables relatively efficient sensitivity
analysis by sequentially perturbing the reaction multipliers and re-solving
the system. Since the perturbed system is close to the orignal, the solution
can be found after only a few steps, even when using the original Jacobian.
The failures were caused when attempting to restore the tolerance vectors, which
have a value for each species. Since these tolerances are usually the same for
all species, the last value in the array can be used to extend the array to the
required length.
Also add some tests for this feature.
Actual array values could be outside the assumed bounds as a result of solver
tolerances, so it doesn't actually make sense to check these when restoring the
solution.
Resolves Issue 88.
Modification of the grid can interfere with the way the fixed temperature point
is handled, leading to solver failures. To fix this, the temperature fixed point
is checked and may be recalculated at the start of the solver.
Passing loglevel=0 to Sim1D::save or Sim1D::restore will suppress all output
from these functions. The default loglevel maintains the normal level of output.
These changes make it unnecessary to copy header files around during
the build process, which tends to confuse IDEs and debuggers. The
headers which comprise Cantera's external C++ interface are now in
the 'include' directory.
All of the samples and demos are now in the 'samples' subdirectory.
2012-02-12 02:27:14 +00:00
Renamed from Cantera/src/oneD/StFlow.cpp (Browse further)