The javascript for the search box wouldn't work due to an earlier
error in the javascript for the version switcher when the switcher
JSON file couldn't be loaded.
Sphinx-gallery creates new .rst files alongside existing manually
maintained documentation, and runs the samples in-place, generating
their output files in the source tree. Moving this all to the build
directory lets us keep the repo clean.
macOS doesn't allow passing DYLD_LIBRARY_PATH through a shell, so
we need to use subprocess.call to be able to call sphinx-build while
including build/lib in the library path. The need to have the library
path set for this is a result of the transition to linking the Python
module against a shared version of libcantera.
The default will exit the Sphinx build with error code 1 if any warnings
are encountered, but it will print all the warnings from a single run.
Since all the warnings from Sphinx are now resolved, this change means
that any CI failures due to warnings from Sphinx should be fixed before
merging a pull request.
The Sphinx build requires both the Cython module to have been built and
the doxygen run to have finished. When running the build in parallel
with scons build -j#, there was the possibility that Sphinx could run
before all its dependencies were built. This change adds dependencies
for the Sphinx builder on Doxygen and the Cython module, resolving the
problem.
The CounterFlowDiffusionFlame (CFDF) code is able to perform more general cases
of npflame_init for multiple species fuel and oxidizer streams. The
stoichiometric mixture fraction in the CFDF code uses the Bilger definition of
mixture fraction, using the conservation of elements C, H, and O. This method is
used in the python module, but not the MATLAB npflame_init function.
Also, the CFDF code uses the fuel stream density to calculate the fuel stream
velocity and the oxidizer stream density to calculate the oxidizer stream
velocity, where as the npflame_init code uses the fuel density for both velocity
calculations.
The elementMassFraction code is a MATLAB version of the python function:
elemental_mass_fraction, which is needed to run the CFDF code.
Update the diffflame.m example to use the more general CFDF function since the
input parameters are different than the npflame_init function. This example is
the same as the diffusion_flame.py sample in the Python module.