14template <MInt nDim, MInt nDist,
class SysEqn>
20template <MInt nDim, MInt nDist,
class SysEqn>
25 auto it = m_function_reg.find(p_name);
26 if(it != m_function_reg.end()) {
28 instance = it->second(p_solver);
31 ss <<
"lbSrcTerms: " << p_name <<
" is not defined!" << std::endl;
32 ss <<
"Defined are the following lbSrcTerm for d" << nDim <<
"q" << nDist <<
": " << std::endl;
33 for(
const auto& i : m_function_reg) {
34 ss <<
" " << i.first << std::endl;
This class represents all LB models.
Front-end to create source term objects.
LbSrcTerm< nDim, nDist, SysEqn > * create_srcTerm(const MString &p_name, LbSolverDxQy< nDim, nDist, SysEqn > *p_solver)
Create an lb source term object and return a pointer to it.
static LbSrcTermFactory * instance()
Creates a static instance of LbSrcTermFactory.
Abstract class for lb source terms.