Next: Volume of a box Up: Miscellaneous procedures Previous: Bisection procedures   Contents

# 3B procedures

The 3B procedures are implemented according to the solving algorithms. For Solve_General_Interval:

```
int ALIAS_3B_Normal(int Dimension,int DimEq,
INTERVAL_VECTOR (* Func)(int,int,INTERVAL_VECTOR &),
INTERVAL_VECTOR &Input,int (* Simp_Proc)(INTERVAL_VECTOR &))
```
where
• Dimension: number of unknowns
• DimEq: number of equations
• Func: procedure to evaluate the equations
• Input: the current box
• Simp_Proc: an optional simplification procedure

```
INTERVAL_VECTOR (* Func)(int,int,INTERVAL_VECTOR &),
INTERVAL_MATRIX (* Gradient)(int, int, INTERVAL_VECTOR &),
INTERVAL_VECTOR &Input,INTEGER_VECTOR &A1,
int (* Simp_Proc)(INTERVAL_VECTOR &))
```
whereGradient is the name of the procedure that evaluate the derivatives of the equations

For Solve_General_JH_Interval:

```
int ALIAS_3B_Hessian(int DimVar,int DimEq,
INTERVAL_VECTOR (* Func)(int,int,INTERVAL_VECTOR &),
INTERVAL_MATRIX (* Gradient)(int, int, INTERVAL_VECTOR &),
INTERVAL_MATRIX (* Hessian)(int, int, INTERVAL_VECTOR &),
INTERVAL_VECTOR &Input,INTERVAL_MATRIX &A1,
int (* Simp_Proc)(INTERVAL_VECTOR &))
```
where Hessian is the procedure that computes the Hessian of the equations.

A specific 3B exists for distance equations:

```
int ALIAS_3B_Distance(int Dim,int Dimension_Eq,
INTEGER_VECTOR &VAR_TOUCHED,
INTEGER_MATRIX &APOW,MATRIX &ACONS,
VECTOR &LI,int NB_EQV,int NB_VARV,MATRIX &AVARV,
INTERVAL_VECTOR &Input,int (* Simp_Proc)(INTERVAL_VECTOR &))
```

For the eigenvalue of matrices we have:

```
int ALIAS_3B_EigenValues(int Dimension,int Dimension_Eq,int Degree,
int (* TheMatrix)(INTERVAL_VECTOR &, INTERVAL_MATRIX &),
int Has_Matrix,
INTERVAL_VECTOR (* Func)(int,int,INTERVAL_VECTOR &),
INTERVAL_VECTOR (* TheCoeff)(INTERVAL_VECTOR &),
int Nb_Points,int Use_Solve,
double Accuracy,double Accuracy_Var,
INTERVAL_VECTOR &Input,
int (* Solve_Poly)(double *, int *,double *),
int (* Simp_Proc)(INTERVAL_VECTOR &))
```

For the geometry of region with given eigenvalue range we have:

```
int ALIAS_3B_Min_Max_EigenValues_Area(int Degree,int Nb_Parameter,
INTERVAL_VECTOR (* TheCoeff)(INTERVAL_VECTOR &),
INTERVAL_VECTOR (* TheCoeffCentered)(INTERVAL_VECTOR &,double),
int Nb_Constraints,INTEGER_VECTOR &Type_Eq,
int (* TheMatrix)(INTERVAL_VECTOR &, INTERVAL_MATRIX &),
int Has_Matrix,
INTERVAL_VECTOR (* Func)(int,int,INTERVAL_VECTOR &),
double *Seuil_First_Sol1,int RealRoot,
int (* Solve_Poly)(double *, int *,double *),
INTERVAL_VECTOR &Input,
int (* Simp_Proc)(INTERVAL_VECTOR &))
```

For the optimum of the condition number of matrices we have:

```
int ALIAS_3B_CN(int Dimension,int Dimension_Eq,int Degree,
int (* TheMatrix)(INTERVAL_VECTOR &, INTERVAL_MATRIX &),
int Has_Matrix,
INTERVAL_VECTOR (* Func)(int,int,INTERVAL_VECTOR &),
INTERVAL_VECTOR (* TheCoeff)(INTERVAL_VECTOR &),
int Nb_Points,int Absolute,
double Accuracy,double Accuracy_Var,
INTERVAL_VECTOR &Input,
int (* Solve_Poly)(double *, int *,double *),
int (* Simp_Proc)(INTERVAL_VECTOR &))
```

In the procedure ALIAS_Geometry_Carre we use:

```
int ALIAS_3B_Constraints(int Nb_Parameter,int Dimension_Eq,
INTEGER_VECTOR &Type_Eq,INTEGER_VECTOR &Imperatif,
int Degree,double Accuracy_Variable,double Accuracy,
double Accuracy_Geometry,
INTERVAL_VECTOR (* F)(int,int,INTERVAL_VECTOR &),