dedalus.core.future =================== .. py:module:: dedalus.core.future .. autoapi-nested-parse:: Classes for future evaluation. Module Contents --------------- .. py: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. .. rubric:: 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. .. py:method:: atoms(*types) Gather all leaf-operands of specified types. .. py:method:: attempt(id=None) Recursively attempt to evaluate operation. .. py:method:: bases() :abstractmethod: .. py:method:: build_out() .. py:method:: check_conditions() :abstractmethod: Check that arguments are in a proper layout. .. py:method:: enforce_conditions() :abstractmethod: Require arguments to be in a proper layout. .. py:method:: evaluate(id=None, force=True) Recursively evaluate operation. .. py:method:: gather_ncc_coeffs() .. py:method:: get_out() .. py:method:: has(*vars) Determine if tree contains any specified operands/operators. .. py:method:: operate(out) :abstractmethod: Perform operation. .. py:method:: prep_nccs(vars) .. py:method:: replace(old, new) Replace specified operand/operator. .. py:method:: replace_dict(subs) Replace specified operands/operators according to a dictionary. .. py:method:: reset() Restore original arguments. .. py:attribute:: args :value: [] .. py:attribute:: dist .. py:attribute:: last_id :value: None .. py:attribute:: original_args :value: () .. py:attribute:: out :value: None .. py:attribute:: scales :value: 1 .. py:attribute:: store_last .. py:class:: FutureField(*args, out=None) Class for deferred operations producing a Field. .. py:method:: cast(arg, dist) :staticmethod: Cast an object to a FutureField. .. py:method:: parse(string, namespace, dist) :staticmethod: Build FutureField from a string expression. .. py:attribute:: future_type .. py:class:: FutureLockedField(*args, out=None) Class for deferred operations producing an Array. .. py:attribute:: future_type .. py:data:: STORE_LAST_DEFAULT .. py:data:: STORE_OUTPUTS .. py:data:: logger