tud_lbm.operators.streaming

Streaming operators — implementations of StreamingOperator protocol.

Public API: build_streaming_fn()

Implementation modules (_streaming.py) are internal; use the factory to access.

Example

from operators.streaming import build_streaming_fn

stream_op = build_streaming_fn(“standard”) f_streamed = stream_op(f, lattice)

Functions

build_streaming_fn(...)

Return a streaming operator satisfying StreamingOperator protocol.

Package Contents

tud_lbm.operators.streaming.build_streaming_fn(scheme: str = 'standard') tud_lbm.operators.protocols.StreamingOperator[source]

Return a streaming operator satisfying StreamingOperator protocol.

Parameters:

scheme – Streaming model name (“standard” or others). Defaults to “standard” (pull-style streaming).

Returns:

A callable satisfying the StreamingOperator protocol. Can be called as: operator(f, lattice) → f_streamed

Type-checkers see this as a StreamingOperator, so:

op: StreamingOperator = build_streaming_fn(“standard”)

Type-checkers will verify any use of op matches the protocol.

Raises:

ValueError – If scheme is not registered.

Examples

>>> from tud_lbm.operators.streaming import build_streaming_fn
>>> stream = build_streaming_fn("standard")
>>> f_streamed = stream(f, lattice)