| [220] | 1 | /*  Fonctions de manipulation de matrices et de vecteurs    */ | 
|---|
|  | 2 | /*  Resolution de systemes lineaires                        */ | 
|---|
|  | 3 |  | 
|---|
|  | 4 | /*                              R. Ansari  Juillet 1993     */ | 
|---|
|  | 5 | /*  Note: 07/94 Fonction GausPiv(Inversion Matrice) CMV     */ | 
|---|
|  | 6 | /*        est utilisee pour  R/DFitLinErr()                 */ | 
|---|
|  | 7 |  | 
|---|
|  | 8 | #ifndef MATXOP_H_SEEN | 
|---|
|  | 9 | #define MATXOP_H_SEEN | 
|---|
|  | 10 |  | 
|---|
|  | 11 | #ifdef __cplusplus | 
|---|
|  | 12 | extern "C" { | 
|---|
|  | 13 | #endif | 
|---|
|  | 14 |  | 
|---|
|  | 15 | /*   Declaration des fonctions   */ | 
|---|
|  | 16 |  | 
|---|
|  | 17 | /*  Operation Vecteurs/ Matrices   */ | 
|---|
|  | 18 | int IVecxVec(int *v1, int *v2, int n); | 
|---|
|  | 19 | float RVecxVec(float *v1, float *v2, int n); | 
|---|
|  | 20 | double DVecxVec(double *v1, double *v2, int n); | 
|---|
|  | 21 | void  IMatxVec(int *mx, int *vi, int *vo, int n); | 
|---|
|  | 22 | void  RMatxVec(float *mx, float *vi, float *vo, int n); | 
|---|
|  | 23 | void  DMatxVec(double *mx, double *vi, double *vo, int n); | 
|---|
|  | 24 |  | 
|---|
|  | 25 | /*  Resolution  de systemes lineaires  */ | 
|---|
|  | 26 | float SolveRLinSyst(float *mx, float *b, float *x, int n); | 
|---|
|  | 27 | double SolveDLinSyst(double *mx, double *b, double *x, int n); | 
|---|
|  | 28 |  | 
|---|
|  | 29 |  | 
|---|
|  | 30 | /*  Ajustement de Chi2   */ | 
|---|
|  | 31 |  | 
|---|
|  | 32 | /*  Ajustement avec vecteurs de depart Reels  */ | 
|---|
|  | 33 | int InitRFitLin(int nstmx, int szv); | 
|---|
|  | 34 | void EndRFitLin(void); | 
|---|
|  | 35 | float **GetRFitVect(int nvar, int vsz); | 
|---|
|  | 36 | void FreeRFitVect(void); | 
|---|
|  | 37 | float RFitLin(int nd, int vsz, float *XVar); | 
|---|
|  | 38 | float RFitLinErr(int nd, int vsz, float *XVar, float *Err); | 
|---|
|  | 39 |  | 
|---|
|  | 40 | /*  Ajustement avec vecteurs de depart double  */ | 
|---|
|  | 41 | int InitDFitLin(int nstmx, int szv); | 
|---|
|  | 42 | void EndDFitLin(void); | 
|---|
|  | 43 | double **GetDFitVect(int nvar, int vsz); | 
|---|
|  | 44 | void FreeDFitVect(void); | 
|---|
|  | 45 | double DFitLin(int nd, int vsz, double *XVar); | 
|---|
|  | 46 | double DFitLinErr(int nd, int vsz, double *XVar, double *Err); | 
|---|
|  | 47 |  | 
|---|
|  | 48 | #ifdef __cplusplus | 
|---|
|  | 49 | } | 
|---|
|  | 50 | #endif | 
|---|
|  | 51 |  | 
|---|
|  | 52 | #endif | 
|---|
|  | 53 |  | 
|---|
|  | 54 |  | 
|---|
|  | 55 |  | 
|---|
|  | 56 |  | 
|---|
|  | 57 |  | 
|---|