fluxions package¶
fluxions.elementary_functions module¶
-
class
fluxions.elementary_functions.DifferentiableBinopFunction(f: fluxions.fluxion_node.Fluxion, g: fluxions.fluxion_node.Fluxion, func: Callable, deriv: Callable, func_name: str)¶ Bases:
fluxions.fluxion_node.BinopA node on the calcuulation graph that is an analytically differentiable function.
-
class
fluxions.elementary_functions.DifferentiableFunctionFactory(func: Callable, deriv: Callable, func_name: str)¶ Bases:
objectFactory for analytically differentiable functions
-
class
fluxions.elementary_functions.DifferentiableUnopFunction(f: fluxions.fluxion_node.Fluxion, func: Callable, deriv: Callable, func_name: str)¶ Bases:
fluxions.fluxion_node.UnopA node on the calcuulation graph that is an analytically differentiable function.
-
class
fluxions.elementary_functions.FluxionResult(val, diff)¶ Bases:
fluxions.fluxion_node.FluxionWrapper for the result of calling an elemenatry function on value objects
fluxions.fluxion_jacobian module¶
-
fluxions.fluxion_jacobian.jacobian(f, v, v_mapping)¶ f: single fluxion object or an array or list of fluxions, representing a scalar or vector function v: vector of variables in f with respect to which the Jacobian will be calculated v_mapping: dict mapping variables in f to scalar or vector of values
fluxions.fluxion_node module¶
-
class
fluxions.fluxion_node.Addition(f: fluxions.fluxion_node.Fluxion, g: fluxions.fluxion_node.Fluxion)¶ Bases:
fluxions.fluxion_node.BinopAddition (sum) of two fluxions; h = f + g
-
class
fluxions.fluxion_node.Binop(f: fluxions.fluxion_node.Fluxion, g: fluxions.fluxion_node.Fluxion)¶ Bases:
fluxions.fluxion_node.FluxionAbstract class embodying a binary operation
-
class
fluxions.fluxion_node.Const(a: Union[int, float])¶ Bases:
fluxions.fluxion_node.FluxionA function returning a constant; floats are implicitly promoted to instances of Const
-
class
fluxions.fluxion_node.Division(f: fluxions.fluxion_node.Fluxion, g: fluxions.fluxion_node.Fluxion)¶ Bases:
fluxions.fluxion_node.BinopDivision (quotient) of two fluxions; h = f * g
-
class
fluxions.fluxion_node.Fluxion¶ Bases:
objectA Fluxion embodies a differentiable function
-
diff(*args)¶ Call forward_mode; discard value, only keep the derivative.
-
shape() → Tuple[int, int]¶ The shape of this fluxion according to numpy standard
-
val(*args)¶ Funcation evaluation; abstract base class
-
-
class
fluxions.fluxion_node.FluxionInputType¶ Bases:
enum.EnumDifferent shapes of input that can be passed to a Fluxion in forward mode
-
ARGS= 4¶
-
ARRAY_N= 1¶
-
ARRAY_TxN= 2¶
-
DICT= 3¶
-
KWARGS= 5¶
-
-
class
fluxions.fluxion_node.Multiplication(f: fluxions.fluxion_node.Fluxion, g: fluxions.fluxion_node.Fluxion)¶ Bases:
fluxions.fluxion_node.BinopMultiplication (product) of two fluxions; h = f * g
-
class
fluxions.fluxion_node.Power(f: fluxions.fluxion_node.Fluxion, p: float = 0.0)¶ Bases:
fluxions.fluxion_node.UnopRaise a fluxion to the power p
-
class
fluxions.fluxion_node.Subtraction(f: fluxions.fluxion_node.Fluxion, g: fluxions.fluxion_node.Fluxion)¶ Bases:
fluxions.fluxion_node.BinopSubtraction (difference) of two fluxions; h = f - g
-
class
fluxions.fluxion_node.Unop(f: fluxions.fluxion_node.Fluxion)¶ Bases:
fluxions.fluxion_node.FluxionAbstract class embodying a unary operation
-
class
fluxions.fluxion_node.Var(var_name: str, initial_value: Optional[numpy.ndarray] = None)¶ Bases:
fluxions.fluxion_node.FluxionClass embodying the concept of a variable that is an input to a function
-
fluxions.fluxion_node.Vars(*args)¶ Convenience function to return a tuple of unboound variables
Module contents¶
-
fluxions.jacobian(f, v, v_mapping)¶ f: single fluxion object or an array or list of fluxions, representing a scalar or vector function v: vector of variables in f with respect to which the Jacobian will be calculated v_mapping: dict mapping variables in f to scalar or vector of values