dedalus.core.future

Classes for future evaluation.

Module Contents

class Future(*args, out=None)

Base class for deferred operations on data.

Parameters:
  • *args (Operands) – Operands. Number must match class attribute arity, if present.

  • out (data, optional) – Output data object. If not specified, a new object will be used.

Notes

Operators are stacked (i.e. provided as arguments to other operators) to construct trees that represent compound expressions. Nodes are evaluated by first recursively evaluating their subtrees, and then calling the operate method.

atoms(*types)

Gather all leaf-operands of specified types.

attempt(id=None)

Recursively attempt to evaluate operation.

abstractmethod bases()
build_out()
abstractmethod check_conditions()

Check that arguments are in a proper layout.

abstractmethod enforce_conditions()

Require arguments to be in a proper layout.

evaluate(id=None, force=True)

Recursively evaluate operation.

gather_ncc_coeffs()
get_out()
has(*vars)

Determine if tree contains any specified operands/operators.

abstractmethod operate(out)

Perform operation.

prep_nccs(vars)
replace(old, new)

Replace specified operand/operator.

replace_dict(subs)

Replace specified operands/operators according to a dictionary.

reset()

Restore original arguments.

args = []
dist
last_id = None
original_args = ()
out = None
scales = 1
store_last
class FutureField(*args, out=None)

Class for deferred operations producing a Field.

static cast(arg, dist)

Cast an object to a FutureField.

static parse(string, namespace, dist)

Build FutureField from a string expression.

future_type
class FutureLockedField(*args, out=None)

Class for deferred operations producing an Array.

future_type
STORE_LAST_DEFAULT
STORE_OUTPUTS
logger