53 #define NUM_ZERO DBL_MIN/DBL_EPSILON
57 #define EPS(value) (value)
60 #define ZERO EPS(1e-12)
62 #define DBL_EQ(i,j) (fabs((i)-(j))<NUM_ZERO)
63 #define DBL_GE(i,j) ((i)>(j)-NUM_ZERO)
64 #define DBL_LE(i,j) ((i)<(j)+NUM_ZERO)
65 #define DBL_GT(i,j) ((i)>(j)+NUM_ZERO)
66 #define DBL_LT(i,j) ((i)<(j)-NUM_ZERO)
69 #define SQUARE(x) ((x) * (x))
70 #define SGN(x) ( ((x)>ZERO)? (1) : ( ((x)<(-ZERO))? (-1) : (0) ) )
71 #define SUBDET2(i,j,k,l) (a[(i)][(k)]*a[(j)][(l)]-a[(i)][(l)]*a[(j)][(k)])
73 #define M_PI 3.14159265358979323846264338327950288f
void scale_vector(double[], double)
void vector_difference(double[], double[], double[])
double SmallVec1_t[1]
small matrix types
double scalar_product(double[], double[])
void normalize_vector(double[])
double MatrixInverse(double *a, double *b, int size)
void vector_product(double[], double[], double[])
void PrintSmallMatrix(double *mtx, int size)
double vector_length(double[])