25 static bool lsfit(
double*,
double*,
double*,
int,
int );
36 static bool Cholesky_Decomposition(
double**,
int );
47 static bool Cholesky_SolveSystem(
double**,
double*,
int );
59 static bool Cholesky_Invert (
double**,
double**,
int );
69 static void LU_SolveSystem (
double**,
double*&,
int );
81 static void LU_Decomposition (
double**,
int*,
bool,
int );
94 static void LU_BackSubstitute(
double**,
double*&,
int*,
int );
106 static double** construct( QVector< double* >&, QVector< double >&,
117 static void tmm(
double**,
double**,
int,
int );
128 static void tmm(
double**,
double**,
int,
int,
bool );
139 static void mvv(
double**,
double*,
double*,
int,
int );
150 static void tvv(
double**,
double*,
double*,
int,
int );
162 static void mmm(
double**,
double**,
double**,
int,
int,
int );
172 static void msum(
double**,
double**,
double**,
int,
int );
182 static void vsum(
double*,
double*,
double*,
int );
189 static void mident(
double**,
int );
198 static void mcopy(
double**,
double**,
int,
int );
206 static void vcopy(
double*,
double*,
int );
214 static void add_diag(
double**,
double,
int );
223 static void add(
double**,
double,
int,
int );
232 static void scale(
double**,
double,
int,
int );
241 static double dotproduct(
double*,
double*,
int );
249 static double dotproduct(
double*,
int );
252 static void print_matrix(
double**,
int,
int );
253 static void print_vector(
double* ,
int );
278 double locationvalue;
284 void m3vm(
double ***,
double **,
unsigned int);
285 void m3vm(
float ***,
float **,
unsigned int);
286 void m3vm(
float ***,
double **,
unsigned int);
289 void m3vm(
float ***, adouble **,
unsigned int);
290 void m3vm(
double ***, adouble **,
unsigned int);
291 void m3vm(adouble ***, adouble **,
unsigned int);
292 void m3vm_a(adouble ***, adouble **,
unsigned int,
float);
293 void m3vm_b(
float ***, adouble ***, adouble **,
unsigned int,
float);
295 void m3vm_b(
float ***,
float ***,
float **,
unsigned int,
float);
296 void m3vm_b(
double ***,
double ***,
double **,
unsigned int,
double);
297 void m2vm(
double ***,
double **,
int);
298 void m2vm(
float ***,
float **,
int);
301 void m2vm(
float ***, adouble **,
int);
302 void m2vm(
double ***, adouble **,
int);
306 void mmv(
float **,
double **,
float ***,
int,
int);
307 void mmv(
float **,
float **,
float ***,
int,
int);
308 void mmv(
float **,
float **,
double ***,
int,
int);
309 void mmv(
float **,
double **,
double ***,
int,
int);
311 void ldu(
double ***,
double **,
unsigned int,
unsigned int,
bool);
312 void ldu(
float ***,
float **,
unsigned int,
unsigned int,
bool);
315 void ldu(adouble ***, adouble **,
unsigned int,
unsigned int,
bool);
316 void ldu(
float ***, adouble **,
unsigned int,
unsigned int,
bool);
319 float dotproduct(
float **,
float **,
int);
320 void vvt(
float ***,
float **,
float **,
int);
321 void LU_Decomposition(
double **,
int *,
bool,
int);
322 void LU_SolveSystem(
double **,
double **,
int);
323 void LU_Invert(
double **,
double **,
int);
324 void LU_BackSubstitute(
double **,
double **,
int *,
int);
325 bool Cholesky_Decomposition(
double **,
int);
326 bool Cholesky_SolveSystem(
double **,
double *,
int);
327 bool Cholesky_Invert(
double **,
double **,
int);
328 void generalLeastSquares(
float **,
unsigned int,
unsigned int,
float *,
float **);
329 void print_matrix(
double **,
int,
int);
330 void print_vector(
double **,
unsigned int,
const char *);
331 void calc_A_transpose_A(
double*** ,
double*** ,
332 unsigned int ,
unsigned int ,
unsigned int );
333 void calc_A_transpose_A(
float*** ,
float*** ,
334 unsigned int ,
unsigned int );
335 void calc_matrix_times_matrix(
double ***,
double ***,
double ***,
unsigned int,
unsigned int);
336 void calc_matrix_times_matrix(
float ***,
float ***,
float ***,
unsigned int,
unsigned int);
337 void calc_matrix_times_vector(
double ***,
double **,
double **,
unsigned int,
unsigned int);
338 void calc_matrix_times_vector(
float ***,
float **,
float **,
unsigned int,
unsigned int);
339 double calc_vector_transpose_times_vector(
unsigned int ,
double ** ,
double ** );
340 float calc_vector_transpose_times_vector(
unsigned int ,
float ** ,
float ** );
351 US_lsfit(
double *coeff,
double *x,
double *y,
int n,
int ord,
bool mesg);
364 double **A, *b, *c, *xval, *yval;
365 int order, numpoints, i, j, k;
366 void calc_coeff_polynomial();
370 void conc_dep_s(
float,
double **,
double **,
double ***,
float temp1,
unsigned int points);
371 void conc_dep_s(
float,
float **,
float **,
float ***,
float temp1,
unsigned int points);
373 void conc_dep_s(adouble, adouble **, adouble **,
double ***, adouble,
unsigned int points);
374 void conc_dep_s(adouble, adouble **, adouble **,
float ***, adouble,
unsigned int points);
376 void conc_dep_d(
float,
double **,
double **,
double ***,
double ***,
double ***,
377 float,
unsigned int,
double **,
double **,
double **);
378 void conc_dep_d(
float,
float **,
float **,
float ***,
float ***,
float ***,
379 float,
unsigned int,
float **,
float **,
float **);
381 void conc_dep_d(adouble, adouble **, adouble **,
float ***,
float ***,
float ***,
382 adouble,
unsigned int, adouble **, adouble **, adouble **);
383 void conc_dep_d(adouble, adouble **, adouble **,
double ***,
double ***,
double ***,
384 adouble,
unsigned int, adouble **, adouble **, adouble **);
388 #include <qwaitcondition.h>
391 class ata_d_thr_t :
public QThread
395 void ata_d_thr_setup(
unsigned int,
399 vector <vector <dpairs> > *);
401 void ata_d_thr_shutdown();
402 void ata_d_thr_wait();
406 unsigned int columns;
407 unsigned int c_start;
410 vector <vector <dpairs> > *dataarray;
417 QWaitCondition cond_work_to_do;
419 QWaitCondition cond_work_done;
420 int work_to_do_waiters;
421 int work_done_waiters;