tud_lbm.operators.collision
Collision operators — implementations of CollisionOperator protocol.
Public API: build_collision_fn()
Implementation modules (_bgk.py, _mrt.py) are internal; use the factory to access.
Example
from operators.collision import build_collision_fn
collision_fn = build_collision_fn(“bgk”) f_col = collision_fn(f, feq, tau)
Functions
|
Return a collision operator satisfying CollisionOperator protocol. |
Package Contents
- tud_lbm.operators.collision.build_collision_fn(scheme: str) tud_lbm.operators.protocols.CollisionOperator[source]
Return a collision operator satisfying CollisionOperator protocol.
- Parameters:
scheme – Collision model name (“bgk” or “mrt”).
- Returns:
A callable satisfying the CollisionOperator protocol. Can be called as: operator(f, feq, tau, source=None) → f_col
- Type-checkers see this as a CollisionOperator, so:
op: CollisionOperator = build_collision_fn(“bgk”)
Type-checkers will verify any use of op matches the protocol.
- Raises:
ValueError – If scheme is not registered.
Examples
>>> from operators.collision import build_collision_fn >>> bgk = build_collision_fn("bgk") >>> f_col = bgk(f, feq, tau)