00001 
#ifndef _PARAM_H_
00002 
#define _PARAM_H_
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
typedef enum
00012 {               PARAM_RT                = 0x00000001,
00013                 PARAM_MZ                = 0x00000002,
00014                 PARAM_Z                 = 0x00000004,
00015                 PARAM_C                 = 0x00000008,
00016                 PARAM_SIGMA_MZ  = 0x00000010, 
00017                 PARAM_SIGMA_RT  = 0x00000020,
00018                 PARAM_ABUNDANCE = 0x00000040,
00019                 PARAM_RT_FIT_DISPL = 0x10000000,
00020                 PARAM_MZ_FIT_DISPL = 0x20000000,
00021                 PARAM_ALL               = 0xFFFFFFFF
00022 } ParameterName;
00023 
00024 
extern int* CURVE_ARRAY;
00025 
00026 
extern float NR_GAUSSIAN_INIT_N;
00027 
00028 
extern float NR_EM_GAUSSIAN_INIT_U;
00029 
extern float NR_EM_GAUSSIAN_INIT_V;
00030 
00031 
extern float NR_GAUSSIOID_INIT_U; 
00032 
extern float NR_GAUSSIOID_INIT_N; 
00033 
00034 
extern float  NR_BD_GAUSSIOID_INIT_U; 
00035 
extern float  NR_BD_GAUSSIOID_INIT_N; 
00036 
extern float* NR_BD_GAUSSIOID_INIT_Z; 
00037 
extern int* NR_BD_GAUSSIOID_INIT_C; 
00038 
extern float* NR_BD_GAUSSIOID_INIT_M; 
00039 
extern float  NR_GAUSSIOID_INIT_VN[6];
00040 
extern int  NR_GAUSSIOID_INIT_VN_ON;
00041 
00042 
float*          loadParameterArrayFromFile(
char* filename, 
int* no_param);
00043 
int                     loadNumberOfParametersFromFile(
char* filename);
00044 
int*            loadParameterStateArrayFromFile(
char* filename);
00045 
void            normalizeParArray(
float* par_array, 
int size);
00046 
int*            getStateParamArray(
int n, 
int* pattern, 
int n_per_pattern);
00047 
00048 
00049 
int ParamArray_checkForNegatives(
float* array, 
int nsize);
00050 
00051 
float* ParamArray_getInitialConditions(
int  curve,  
Map2D* MAP, 
Peak2i* PEAKS, 
int no_peaks);
00052 
00053 
00054 
void    Param_fprintParamArrayMultipleCurve(FILE* fp, 
float*    param_array,            
int* pCurves, 
int nCurves);
00055 
void    Param_fprintStateArrayMultipleCurve(FILE* fp, 
int*              state_param_array,      
int* pCurves, 
int nCurves);
00056 
void    ParamArray_fprint(FILE* fp, 
float* param_array, 
int nparam);
00057 
00058 
int             cmpParamArrays(
float* par_array, 
float* prev_par_array, 
int size);
00059 
00060 
#endif
00061