Currently the build_adiabatic_slfm_library method is used on its own as a standalone user-facing method, as well as internally by the nonadiabatic SLFM build_*_library methods. This is good reuse of code and if we were only ever interested in generating structured libraries it is fine. To enable code reuse for structured and unstructured library generation, we should rework this. Right now it builds a dictionary for the internal use and a Library for user-facing use. Is the dictionary the cleanest way to approach the unstructured case? It is based on the stoichiometric dissipation rate, which itself is meant for structuring and is not the most general thing we could do. A more general option would be to produce a totally flattened library with mixture fraction and the actual dissipation rate. Ideally we could then have a capability that takes such a library and some structuring rule (here, chi_st) to produce the structured (tensor product) 2D format.
Currently the
build_adiabatic_slfm_library
method is used on its own as a standalone user-facing method, as well as internally by the nonadiabatic SLFMbuild_*_library
methods. This is good reuse of code and if we were only ever interested in generating structured libraries it is fine. To enable code reuse for structured and unstructured library generation, we should rework this. Right now it builds a dictionary for the internal use and aLibrary
for user-facing use. Is the dictionary the cleanest way to approach the unstructured case? It is based on the stoichiometric dissipation rate, which itself is meant for structuring and is not the most general thing we could do. A more general option would be to produce a totally flattened library with mixture fraction and the actual dissipation rate. Ideally we could then have a capability that takes such a library and some structuring rule (here, chi_st) to produce the structured (tensor product) 2D format.