Main Page | Data Structures | Directories | File List | Globals

mqfloat_array.h

Go to the documentation of this file.
00001 #ifndef _MQFLOAT_ARRAY_H_
00002 #define _MQFLOAT_ARRAY_H_
00003 
00004 /* Copyright (c) Kyriacos Leptos and the President and Fellows of Harvard University
00005    Release Date: 2004-11-01
00006    Part of the MapQuant suite library "mqbasic.lib" 
00007 */
00008 
00017 #define FLOAT_SWAP(a,b) {float_temp=(a);(a)=(b);(b)=float_temp;}
00018 
00019 extern float  float_temp;
00020 
00021 int MQFloat_isWithinBounds(float num, float lower, float upper);
00022 
00023 /* 1 */ float*  MQFloatArray_create(int size);
00024 
00025 /* 2 */ float*  MQFloatArray_createOnes (int size);
00026 /* 3 */ float*  MQFloatArray_createZeros(int size);
00027 
00028 /* 4 */ float*  MQFloatArray_createInit(int size, float first, ...);
00029 
00030 /* 5 */ float*  MQFloatArray_createIncrByOne(int size, int start);
00031 /* 6 */ float*  MQFloatArray_createIncr(int size, float start, float delta);
00032 
00033 /* 7 */ float*  MQFloatArray_createAddFloatToFloatArray(float* input, int size, float addition);
00034 /* 8 */ float*  MQFloatArray_createAddFloatToMQIntArray  (int*   input, int size, float addition);
00035 
00036 /* 9 */ float   MQFloatArray_getMin(float* array, int start, int stop);
00037 /*10 */ float   MQFloatArray_getMax(float* array, int start, int stop);
00038 /*11 */ int     MQFloatArray_getIndexOfMax(float* array, int start, int stop);
00039 /*12 */ void    MQFloatArray_eliminateNegatives(float* array, int start, int stop);
00040 
00041 /*23 */ float* MQFloatArray_load(FILE* fp, int* size);
00042 /*14 */ float* MQFloatArrays_subtract(float* array1, float* array2, int nsize);
00043 /*15 */ void   MQFloatArray_subtract(float* input, float* array2, int nsize);
00044 
00045 
00046 /*16 */   void   MQFloatArray_print(float* array, int start, int stop, int format);
00047 /*17 */   void   MQFloatArray_fprint  (FILE* fp, float* array, 
00048                                     int start, int stop, 
00049                                     int format);
00050 
00051 /*18 */   void   MQFloatArray_fprint_ns(    FILE* fp, float* array, 
00052                                         int start, int stop, 
00053                                         int n_per_line, 
00054                                         int sigfigs, int decimals);
00055 
00056 /*19 */   void   MQFloatArray_fprint_nt(    FILE* fp, float* array, 
00057                                         int start, int stop, 
00058                                         int n_per_line, 
00059                                         int* sigfigs_array);
00060 
00061 /*19.1 */ void   MQFloatArray_fprint_nsd(   FILE* fp, float* array, 
00062                                         int start, int stop, 
00063                                         int n_per_line, 
00064                                         int sigfigs, int decimals, 
00065                                         char delimiter);
00066 
00067 /*19.2 */ void   MQFloatArray_fprint_ntd(   FILE* fp, float* array, 
00068                                         int start, int stop, 
00069                                         int n_per_line, 
00070                                         int* sigfigs_array, 
00071                                         char delimiter);
00072 
00073 /*20 */ void   MQFloatArray_fprintfTwo(FILE* fp, 
00074                               float* array_1, float* array_2, 
00075                               int start     , int stop, 
00076                               char* format_1, char* format_2,
00077                               int elem_per_line);
00078 
00079 /*21 */ void   MQFloatArray_fprintBinary(FILE* fp, float* array, int start, int stop);
00080 
00081 /*22 */ char*  MQFloatArray_toString(float* array, int start, int stop, int* sigfigs);
00082 
00083 
00084 /*23 */ float* MQFloatArray_copyPart            (float* array, int start, int stop);
00085 /*24 */ float* MQFloatArray_copy                (float* array, int size);
00086 /*25 */ void   MQFloatArray_transferElements    (float* dest, float* source, int size);
00087 
00088 /* 26*/ int MQFloatArray_findNoOfMaxima(float* array, int npeaks);
00089 /* 27*/ float MQFloatArray_addup(float* array, int start, int stop);
00090 /* 28*/ float* MQFloatArray_merge(float* array1, long size1, float* array2, long size2, long* size);
00091 
00092         void* MQFloatArray_getElement(const void* array, unsigned int index);
00093 
00094         void  MQFloatArray_scale(float* array, int start, int stop, float scaling_factor);
00095         void  MQFloatArray_divide(float* array, int start, int stop, float dividing_factor);
00096 
00097         float*  MQFloatArray_getLog(float* pNonZero, int nNonZero, float dbase);
00098         void    MQFloatArray_operatorPlusEquals(float* a, float* b, int start, int stop);
00099         float*  MQFloatArray_getNonZeros(float* a, int start, int stop, int* nsize);
00100         
00101         float* MQFloatArray_expandZeroPadding(float* compressed, int size, int expanded_size);
00102 
00103         float* MQFloatArray_copyExcluding(float* array, int start, int stop, float exclusion_value, int* new_size);
00104 #endif
00105 

Generated on Tue Feb 7 03:25:43 2006 for libmqbasic by  doxygen 1.4.4