biogeme.expressions.derive module

Arithmetic expressions accepted by Biogeme: Derive

Michel Bierlaire Fri May 02 2025, 13:24:27

class biogeme.expressions.derive.Derive(child, name)[source]

Bases: UnaryOperator

Derivative with respect to a variable

Parameters:
  • child (ExpressionOrNumeric)

  • name (str)

deep_flat_copy()[source]

Provides a copy of the expression. It is deep in the sense that it generates copies of the children. It is flat in the sense that any MultipleExpression is transformed into the currently selected expression. The flat part is irrelevant for this expression.

Return type:

Derive

recursive_construct_jax_function(numerically_safe)[source]

Generates a function to be used by biogeme_jax. Must be overloaded by each expression :rtype: Callable[[Array, Array, Array, Array], array] :return: the function takes two parameters: the parameters, and one row of the database.

Parameters:

numerically_safe (bool)

Return type:

Callable[[Array, Array, Array, Array], array]

recursive_construct_jax_function_beta(numerically_safe)[source]

Generates a function to be used by biogeme_jax. Must be overloaded by each expression :rtype: Callable[[Array, Array, Array, Array], array] :return: the function takes two parameters: the parameters, and one row of the database.

Parameters:

numerically_safe (bool)

Return type:

Callable[[Array, Array, Array, Array], array]

recursive_construct_jax_function_variable(numerically_safe)[source]

Generates a function to be used by biogeme_jax. Must be overloaded by each expression :rtype: Callable[[Array, Array, Array, Array], array] :return: the function takes two parameters: the parameters, and one row of the database.

Parameters:

numerically_safe (bool)

Return type:

Callable[[Array, Array, Array, Array], array]