tao-2.1-p0 2012-07-24

VecSFischer

Evaluates the Smoothed Fischer-Burmeister function for complementarity problems.

Synopsis

#include "tao.h" 
#include "tao_util.h" 
PetscErrorCode VecSFischer(Vec X, Vec F, Vec L, Vec U, PetscReal mu, Vec FB)
Logically Collective on vectors

Input Parameters

X - current point
F - function evaluated at x
L - lower bounds
U - upper bounds
mu - smoothing parameter

Output Parameters

FB -The Smoothed Fischer-Burmeister function vector

Notes

The Smoothed Fischer-Burmeister function is defined as
       phi(a,b) := sqrt(a*a + b*b + 2*mu*mu) - 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] - 2*mu*x[i]
l[i] == - infinity, u[i] finite -- fb[i] = phi(u[i]-x[i], -f[i], mu)
l[i] finite, u[i] == infinity - - fb[i] = phi(x[i]-l[i], f[i], mu)
l[i] finite < u[i] finite - - fb[i] = phi(x[i]-l[i], phi(u[i]-x[i], -f[u], mu), mu)
otherwise l[i] == u[i] - - fb[i] = l[i] - x[i]

See Also

VecFischer()

Level:developer
Location:src/util/tao_util.c
TAO Solver Index
Table of Contents