| Prev | Next |  |  |  |  |  |  |

abs_normal: Evaluate First Order Approximation
Syntax
`g_tilde = abs_eval(n, m, s, g_hat, g_jac, delta_x)`
Prototype

    template <class Vector>
    Vector abs_eval(
         size_t        n       ,
         size_t        m       ,
         size_t        s       ,
         const Vector& g_hat   ,
         const Vector& g_jac   ,
         const Vector& delta_x )

Source
This following is a link to the source code for this example: abs_eval.hpp .
Purpose
Given a current that abs-normal representation at a point x ^ ∈ R n , and a Δ x ∈ R n , this routine evaluates the abs-normal approximation for f(x) where x = x ^ + Δ x .
Vector
The type `Vector` is a simple vector with elements of type `double`.
f
We use the notation `f` for the original function; see f .
n
This is the dimension of the domain space for `f` ; see n .
m
This is the dimension of the range space for `f` ; see m .
s
This is the number of absolute value terms in `f` ; see
g
We use the notation `g` for the abs-normal representation of `f` ; see g .
g_hat
This vector has size `m + s` and is the value of `g(x, u)` at x = x ^ and u = a ( x ^ ) .
g_jac
This vector has size `(m + s) * (n + s)` and is the Jacobian of g ( x , u ) at x = x ^ and u = a ( x ^ ) .
delta_x
This vector has size `n` and is the difference Δ x = x - x ^ , where x is the point that we are approximating f ( x ) .
g_tilde
This vector has size `m + s` and is a the first order approximation for g that corresponds to the point x = x ^ + Δ x and u = a ( x ) .
Example
The file abs_eval.cpp contains an example and test of `abs_eval`. It returns true if the test passes and false otherwise.

Input File: example/abs_normal/abs_eval.hpp