pystencils.flow.builders.EquationsBlockBuilder#

class pystencils.flow.builders.EquationsBlockBuilder(predecessors)#

Builder for equation blocks. Used by the block decorator.

Parameters:

predecessors (set[FlowgraphNode])

connect(node)#

Add another node as a predecessor to this block.

Parameters:

node (FlowgraphNode)

property let#

Create a private subexpression.

Syntax:

_eq.let[symbol] = value
_eq.let["symbol_name": "symbol_type"] = value
property export#

Create an exported subexpression.

Syntax:

_eq.store[symbol] = value
_eq.store["symbol_name": "symbol_type"] = value
property store#

Store a value to a memory location.

Syntax:

_eq.store[memory_location] = value

Valid memory locations are modelled by the type SymbolicMemoryLoc.

property reduce#

Reduce a value onto a memory location using a given commutative operator.

Syntax:

_eq.reduce[typed_symbol, "op"] = value
_eq.reduce["symbol_name": "symbol_type", "op"] = value

Valid reduction operators are +, -, *, min and max. The reduction target must be a typed symbol.