Main Page | Modules | Data Structures | File List | Data Fields | Globals | Related Pages

numeric_prototypes.h

Go to the documentation of this file.
00001 #ifndef DEF_numeric_prototypes 00002 #define DEF_numeric_prototypes 00003 00004 public void initialize_amoeba( 00005 amoeba_struct *amoeba, 00006 int n_parameters, 00007 Real initial_parameters[], 00008 Real parameter_deltas[], 00009 amoeba_function function, 00010 void *function_data, 00011 Real tolerance ); 00012 00013 public Real get_amoeba_parameters( 00014 amoeba_struct *amoeba, 00015 Real parameters[] ); 00016 00017 public void terminate_amoeba( 00018 amoeba_struct *amoeba ); 00019 00020 public BOOLEAN perform_amoeba( 00021 amoeba_struct *amoeba ); 00022 00023 public BOOLEAN solve_linear_system_float( 00024 int n, 00025 float **coefs, 00026 float values[], 00027 float solution[] ); 00028 00029 public BOOLEAN invert_square_matrix_float( 00030 int n, 00031 float **matrix, 00032 float **inverse ); 00033 00034 public Real gradient_steps_minimize_function( 00035 int n_dims, 00036 Real initial_parameters[], 00037 Real initial_step_sizes[], 00038 Real (*func) ( Real [], void * ), 00039 void *func_data, 00040 int n_search_dims, 00041 int max_iterations, 00042 Real tolerance, 00043 Real solution[] ); 00044 00045 public void initialize_histogram( 00046 histogram_struct *histogram, 00047 Real delta, 00048 Real offset ); 00049 00050 public void delete_histogram( 00051 histogram_struct *histogram ); 00052 00053 public void add_to_histogram( 00054 histogram_struct *histogram, 00055 Real value ); 00056 00057 public int get_histogram_counts( 00058 histogram_struct *histogram, 00059 Real *counts[], 00060 Real filter_width, 00061 Real *scale_factor, 00062 Real *trans_factor ); 00063 00064 public void display_histogram( 00065 histogram_struct *histogram, 00066 int x_size, 00067 int y_size ); 00068 00069 public void create_histogram_line( 00070 histogram_struct *histogram, 00071 int x_size, 00072 int y_size, 00073 Real filter_width, 00074 lines_struct *lines ); 00075 00076 public BOOLEAN least_squares( 00077 int n_points, 00078 int n_dims, 00079 Real **points, 00080 Real values[], 00081 Real parameters[] ); 00082 00083 public void initialize_linear_least_squares( 00084 linear_least_squares *lsq, 00085 int n_parameters ); 00086 00087 public void add_to_linear_least_squares( 00088 linear_least_squares *lsq, 00089 Real parameter_coefs[], 00090 Real constant ); 00091 00092 public BOOLEAN get_linear_least_squares_solution( 00093 linear_least_squares *lsq, 00094 Real solution[] ); 00095 00096 public void delete_linear_least_squares( 00097 linear_least_squares *lsq ); 00098 00099 public BOOLEAN singular_value_decomposition( 00100 int m, 00101 int n, 00102 Real **a, 00103 Real w[], 00104 Real **v ); 00105 00106 public Real minimize_lsq( 00107 int n_parameters, 00108 Real constant_term, 00109 Real linear_terms[], 00110 Real square_terms[], 00111 int n_cross_terms[], 00112 int *cross_parms[], 00113 Real *cross_terms[], 00114 Real max_step_size, 00115 int n_iters, 00116 Real node_values[] ); 00117 00118 public void initialize_lsq_terms( 00119 int n_parameters, 00120 Real *constant_term, 00121 Real *linear_terms[], 00122 Real *square_terms[], 00123 int *n_cross_terms[], 00124 int **cross_parms[], 00125 Real **cross_terms[] ); 00126 00127 public void reset_lsq_terms( 00128 int n_parameters, 00129 Real *constant_term, 00130 Real linear_terms[], 00131 Real square_terms[], 00132 int n_cross_terms[], 00133 int *cross_parms[], 00134 Real *cross_terms[] ); 00135 00136 public void add_to_lsq_terms( 00137 int n_parameters, 00138 Real *constant_term, 00139 Real linear_terms[], 00140 Real square_terms[], 00141 int n_cross_terms[], 00142 int *cross_parms[], 00143 Real *cross_terms[], 00144 int n_in_list, 00145 int list[], 00146 Real weights[], 00147 Real constant, 00148 int alloc_increment ); 00149 00150 public void realloc_lsq_terms( 00151 int n_parameters, 00152 int n_cross_terms[], 00153 int *cross_parms[], 00154 Real *cross_terms[] ); 00155 00156 public void delete_lsq_terms( 00157 int n_parameters, 00158 Real linear_terms[], 00159 Real square_terms[], 00160 int n_cross_terms[], 00161 int *cross_parms[], 00162 Real *cross_terms[] ); 00163 00164 public Real minimize_lsq_float( 00165 int n_parameters, 00166 Real constant_term, 00167 float linear_terms[], 00168 float square_terms[], 00169 int n_cross_terms[], 00170 int *cross_parms[], 00171 float *cross_terms[], 00172 Real max_step_size, 00173 int n_iters, 00174 Real node_values[] ); 00175 00176 public void initialize_lsq_terms_float( 00177 int n_parameters, 00178 Real *constant_term, 00179 float *linear_terms[], 00180 float *square_terms[], 00181 int *n_cross_terms[], 00182 int **cross_parms[], 00183 float **cross_terms[] ); 00184 00185 public void reset_lsq_terms_float( 00186 int n_parameters, 00187 Real *constant_term, 00188 float linear_terms[], 00189 float square_terms[], 00190 int n_cross_terms[], 00191 int *cross_parms[], 00192 float *cross_terms[] ); 00193 00194 public void add_to_lsq_terms_float( 00195 int n_parameters, 00196 Real *constant_term, 00197 float linear_terms[], 00198 float square_terms[], 00199 int n_cross_terms[], 00200 int *cross_parms[], 00201 float *cross_terms[], 00202 int n_in_list, 00203 int list[], 00204 Real weights[], 00205 Real constant, 00206 int alloc_increment ); 00207 00208 public void realloc_lsq_terms_float( 00209 int n_parameters, 00210 int n_cross_terms[], 00211 int *cross_parms[], 00212 float *cross_terms[] ); 00213 00214 public void delete_lsq_terms_float( 00215 int n_parameters, 00216 float linear_terms[], 00217 float square_terms[], 00218 int n_cross_terms[], 00219 int *cross_parms[], 00220 float *cross_terms[] ); 00221 00222 public void create_lsq_hypersurface_float( 00223 STRING filename, 00224 int parm1, 00225 int parm2, 00226 int x_size, 00227 int y_size, 00228 Real x_min, 00229 Real x_max, 00230 Real y_min, 00231 Real y_max, 00232 Real scale, 00233 int n_parameters, 00234 Real constant, 00235 float linear_terms[], 00236 float square_terms[], 00237 int n_cross_terms[], 00238 int *cross_parms[], 00239 float *cross_terms[], 00240 Real parameters[] ); 00241 00242 public BOOLEAN numerically_close( 00243 Real n1, 00244 Real n2, 00245 Real threshold_ratio ); 00246 00247 public Real get_good_round_value( 00248 Real value ); 00249 00250 public Real round_to_nearest_multiple( 00251 Real value, 00252 Real multiple_value ); 00253 00254 public int solve_quadratic( 00255 Real a, 00256 Real b, 00257 Real c, 00258 Real *solution1, 00259 Real *solution2 ); 00260 00261 public int solve_cubic( 00262 Real a, 00263 Real b, 00264 Real c, 00265 Real d, 00266 Real s[ 3 ] ); 00267 00268 public Real evaluate_polynomial( 00269 int n, 00270 Real poly[], 00271 Real u ); 00272 00273 public int get_roots_of_polynomial( 00274 int n, 00275 Real poly[], 00276 Real u_min, 00277 Real u_max, 00278 Real accuracy, 00279 Real roots[] ); 00280 00281 public BOOLEAN get_range_of_polynomial( 00282 int n, 00283 Real poly[], 00284 Real u_min, 00285 Real u_max, 00286 Real min_val, 00287 Real max_val, 00288 Real accuracy, 00289 Real *u_min_range, 00290 Real *u_max_range ); 00291 00292 public void initialize_quadratic( 00293 int n_parameters, 00294 Real *constant_term, 00295 float *linear_terms[], 00296 float *square_terms[], 00297 int *n_cross_terms[], 00298 int **cross_parms[], 00299 float **cross_terms[] ); 00300 00301 public void zero_quadratic( 00302 int n_parameters, 00303 Real *constant_term, 00304 float linear_terms[], 00305 float square_terms[], 00306 int n_cross_terms[], 00307 int *cross_parms[], 00308 float *cross_terms[] ); 00309 00310 public void add_to_quadratic_cross_term( 00311 int *n_cross_terms[], 00312 int **cross_parms[], 00313 float **cross_terms[], 00314 int parm1, 00315 int parm2, 00316 Real value, 00317 int alloc_increment ); 00318 00319 public void realloc_quadratic_cross_terms( 00320 int n_parameters, 00321 int n_cross_terms[], 00322 int **cross_parms[], 00323 float **cross_terms[] ); 00324 00325 public void delete_quadratic( 00326 int n_parameters, 00327 float linear_terms[], 00328 float square_terms[], 00329 int n_cross_terms[], 00330 int *cross_parms[], 00331 float *cross_terms[] ); 00332 00333 public Real evaluate_quadratic( 00334 int n_parameters, 00335 float parameters[], 00336 Real constant, 00337 float linear[], 00338 float square[], 00339 int n_cross_terms[], 00340 int *cross_parms[], 00341 float *cross_terms[] ); 00342 00343 public void evaluate_quadratic_deriv( 00344 int n_parameters, 00345 float parameters[], 00346 float linear[], 00347 float square[], 00348 int n_cross_terms[], 00349 int *cross_parms[], 00350 float *cross_terms[], 00351 float deriv[] ); 00352 00353 public void initialize_quadratic_real( 00354 int n_parameters, 00355 Real *constant_term, 00356 Real *linear_terms[], 00357 Real *square_terms[], 00358 int *n_cross_terms[], 00359 int **cross_parms[], 00360 Real **cross_terms[] ); 00361 00362 public void zero_quadratic_real( 00363 int n_parameters, 00364 Real *constant_term, 00365 Real linear_terms[], 00366 Real square_terms[], 00367 int n_cross_terms[], 00368 int *cross_parms[], 00369 Real *cross_terms[] ); 00370 00371 public void add_to_quadratic_cross_term_real( 00372 int *n_cross_terms[], 00373 int **cross_parms[], 00374 Real **cross_terms[], 00375 int parm1, 00376 int parm2, 00377 Real value, 00378 int alloc_increment ); 00379 00380 public void realloc_quadratic_cross_terms_real( 00381 int n_parameters, 00382 int n_cross_terms[], 00383 int **cross_parms[], 00384 Real **cross_terms[] ); 00385 00386 public void delete_quadratic_real( 00387 int n_parameters, 00388 Real linear_terms[], 00389 Real square_terms[], 00390 int n_cross_terms[], 00391 int *cross_parms[], 00392 Real *cross_terms[] ); 00393 00394 public Real evaluate_quadratic_real( 00395 int n_parameters, 00396 Real parameters[], 00397 Real constant, 00398 Real linear[], 00399 Real square[], 00400 int n_cross_terms[], 00401 int *cross_parms[], 00402 Real *cross_terms[] ); 00403 00404 public void evaluate_quadratic_deriv_real( 00405 int n_parameters, 00406 Real parameters[], 00407 Real linear[], 00408 Real square[], 00409 int n_cross_terms[], 00410 int *cross_parms[], 00411 Real *cross_terms[], 00412 Real deriv[] ); 00413 00414 public void compute_statistics( 00415 int n, 00416 Real samples[], 00417 Real *min_value, 00418 Real *max_value, 00419 Real *mean_value, 00420 Real *std_dev, 00421 Real *median ); 00422 00423 public void initialize_statistics( 00424 statistics_struct *stats, 00425 Real median_lower_bound, 00426 Real median_upper_bound ); 00427 00428 public void add_sample_to_statistics( 00429 statistics_struct *stats, 00430 Real sample ); 00431 00432 public void restart_statistics_with_narrower_median_range( 00433 statistics_struct *stats ); 00434 00435 public void get_statistics( 00436 statistics_struct *stats, 00437 int *n_samples, 00438 Real *mean, 00439 Real *median, 00440 Real *median_error, 00441 Real *min_value, 00442 Real *max_value, 00443 Real *std_deviation ); 00444 00445 public void terminate_statistics( 00446 statistics_struct *stats ); 00447 00448 public void compute_mean_and_variance( 00449 int n, 00450 Real samples[], 00451 Real *mean, 00452 Real *variance ); 00453 00454 public Real compute_two_means_t_statistic( 00455 int n1, 00456 Real samples1[], 00457 int n2, 00458 Real samples2[] ); 00459 00460 public void initialize_cumulative_t_stat( 00461 t_stat_struct *stat, 00462 int degrees_freedom ); 00463 00464 public void delete_cumulative_t_stat( 00465 t_stat_struct *stat ); 00466 00467 public Real get_cumulative_t_stat( 00468 t_stat_struct *stat, 00469 Real t ); 00470 #endif

Generated on Wed Jul 28 09:10:57 2004 for BICPL by doxygen 1.3.7