32 extern std::string os_dtoa_format(
double x);
117 bool isColumnMajor,
int startSize,
int valueSize,
int* start,
int* index,
118 double* value,
int dimension);
168 inline void getMultIncr(
int* i,
int *mult,
int *incr,
int size,
int defaultIncr)
175 if (size == 1)
return;
177 for (k=1; (k < size) && (i[k] - i[k-1] == defaultIncr); k++)
181 if (*mult > 1 || size == 2)
return;
184 if (i[2] - i[1] != *incr)
return;
187 for (k=3; (k < size) && (i[k] - i[k-1] == *incr); k++)
206 inline void getMultIncr(
double* a,
int *mult,
double *incr,
int size)
214 if (size == 1)
return;
217 for (k=1; (k < size) && (a[k] == mark); k++)
221 if (*mult > 1 || size == 2)
return;
224 if (a[2] - a[1] != *incr)
return;
227 for (k=3; (k < size) && (a[k] - a[k-1] == *incr); k++)
252 if (size == 1)
return mult;
255 for (
int k=1; (k < size) && (i[k] == mark); k++)
280 if (size == 1)
return mult;
283 for (
int k=1; (k < size) && (a[k] == mark); k++)
308 double OSiRand(
int iMin,
int iMax);
int getMult(int *i, int size)
getMult
~MathUtil()
the class destructor
std::string format_os_dtoa(double x)
static SparseMatrix * convertLinearConstraintCoefficientMatrixToTheOtherMajor(bool isColumnMajor, int startSize, int valueSize, int *start, int *index, double *value, int dimension)
Round a double number to the precision specified.
void getMultIncr(int *i, int *mult, int *incr, int size, int defaultIncr)
getMultIncr
a sparse matrix data structure
MathUtil()
the class constructor
double os_strtod_wrap(const char *str, char **strEnd)
this class has routines for linear algebra.
double OSiRand(int iMin, int iMax)
OSiRand(int iMin, int iMax)