18 #if _MSC_VER > 1300 && _MSC_VER < 1500
24 #define EPS_ZERO 1.0e-15
29 #define M_PI 3.14159265358979323846
34 #define RAD(x) (x)*M_PI/180.0
38 extern double round (
double value,
int precision);
41 extern double atan3 (
double y,
double x,
const char* func = 0);
44 inline double atan3 (
double y,
double x,
const char* = 0)
55 int cubicSolve (
double A,
double B,
double C,
double D,
double* X);
57 int bilinearSolve (
const double* A,
const double* B,
double* X,
double* Y);
double round(double value, int precision)
Rounds off value down to precision significant digits.
Definition: FFaMath.C:31
double atan3(double y, double x, const char *=0)
Checks for singular rotations before using atan2 library function.
Definition: FFaMath.H:44
#define EPS_ZERO
Division by zero tolerance.
Definition: FFaMath.H:24
Various math utilities.
Definition: FFaMath.H:52
int bilinearSolve(const double *A, const double *B, double *X, double *Y)
Solves a bi-linear set of equations in X and Y.
Definition: FFaMath.C:158
int cubicSolve(double A, double B, double C, double D, double *X)
Solves the cubic equation A*x3 + B*x2 + C*x + D = 0.
Definition: FFaMath.C:61
integer(ptr), save, private x
Definition: extCtrlSysRoutinesModule.f90:16