tud_lbm.operators.equilibrium ============================= .. py:module:: tud_lbm.operators.equilibrium .. autoapi-nested-parse:: Equilibrium operators — implementations of EquilibriumOperator protocol. Public API: build_equilibrium_fn() Implementation modules (_equilibrium.py) are internal; use the factory to access. .. rubric:: Example from operators.equilibrium import build_equilibrium_fn eq = build_equilibrium_fn("wb") feq = eq(rho, u, lattice) Functions --------- .. autoapisummary:: tud_lbm.operators.equilibrium.build_equilibrium_fn Package Contents ---------------- .. py:function:: build_equilibrium_fn(scheme: str = 'wb') -> tud_lbm.operators.protocols.EquilibriumOperator Return an equilibrium operator satisfying EquilibriumOperator protocol. :param scheme: Equilibrium model name ("wb" or others). Defaults to "wb" (Chai et al. D2Q9 model). :returns: A callable satisfying the EquilibriumOperator protocol. Can be called as: operator(rho, u, lattice) → feq Type-checkers see this as an EquilibriumOperator, so: op: EquilibriumOperator = build_equilibrium_fn("wb") Type-checkers will verify any use of op matches the protocol. :raises ValueError: If scheme is not registered. .. rubric:: Examples >>> from operators.equilibrium import build_equilibrium_fn >>> equilibrium = build_equilibrium_fn("wb") >>> feq = equilibrium(rho, u, lattice)