# Fischer

Evaluates the Fischer-Burmeister function for complementarity problems.

## Synopsis

    #include "tao_solver.h"
    int TaoVec::Fischer(TaoVec* xx, TaoVec* ff, TaoVec* ll, TaoVec* uu)

## Input Parameters

| xx | - current point
| ff | - function evaluated at x
| ll | - lower bounds
| uu | - upper bounds

## Notes

The Fischer-Burmeister function is defined as

           phi(a,b) := sqrt(a*a + b*b) - a - b

and is used reformulate a complementarity problem as a semismooth system of equations.

## The result of this function is done by cases

| l[i] == | - infinity, u[i] == infinity -- fb[i] = -f[i]
| l[i] == | - infinity, u[i] finite -- fb[i] = phi(u[i]-x[i], -f[i])
| l[i] finite, u[i] == infinity | - - fb[i] = phi(x[i]-l[i], f[i])
| l[i] finite < u[i] finite | - - fb[i] = phi(x[i]-l[i], phi(u[i]-x[i], -f[u]))
| otherwise l[i] == u[i] | - - fb[i] = l[i] - x[i]

## See Also

TaoMat::D_Fischer()

Level:advanced
Location:src/vector/taovec.c
TAO Solver Index
Table of Contents