mpt4py.functions package#

Submodules#

mpt4py.functions.affine_function module#

class mpt4py.functions.affine_function.AffineFunction(F: ndarray[tuple[Any, ...], dtype[float64]], g: ndarray[tuple[Any, ...], dtype[float64]] | None)[source]#

Bases: FunctionBase

Class representing a (vector-valued) affine function of the form f(x) = Fx + g.

property F: ndarray[tuple[Any, ...], dtype[float64]]#
property g: ndarray[tuple[Any, ...], dtype[float64]]#
gradient(x: ndarray[tuple[Any, ...], dtype[float64]]) ndarray[tuple[Any, ...], dtype[float64]][source]#

Compute the gradient of the affine function at a given point x.

mpt4py.functions.function_base module#

class mpt4py.functions.function_base.FunctionBase(lambda_expr: Callable[[ndarray[tuple[Any, ...], dtype[float64]]], float] | None = None)[source]#

Bases: object

Abstract base class for scalar-valued functions.

evaluate(x: ndarray[tuple[Any, ...], dtype[float64]]) float[source]#

Evaluate the function at a given point x.

property get_lambda: Callable[[ndarray[tuple[Any, ...], dtype[float64]]], float]#

Get the symbolic expression of the function, if available.

Returns: sympy expression or None: The symbolic expression of the function.

gradient(x: ndarray[tuple[Any, ...], dtype[float64]]) ndarray[tuple[Any, ...], dtype[float64]][source]#

Compute the gradient of the function at a given point x.

mpt4py.functions.quadratic_function module#

class mpt4py.functions.quadratic_function.QuadraticFunction(Q: ndarray[tuple[Any, ...], dtype[float64]], F: ndarray[tuple[Any, ...], dtype[float64]] | None, g: float = 0.0)[source]#

Bases: FunctionBase

Class representing a (scalar) quadratic function of the form f(x) = 1/2*x’*Q*x + F’*x + g.

gradient(x: ndarray[tuple[Any, ...], dtype[float64]]) ndarray[tuple[Any, ...], dtype[float64]][source]#

Compute the gradient of the quadratic function at a given point x.

Module contents#