/* ************************************************************* */ /* * BLWIRE.H * * Zachary Wolf * 11/24/99 */ #ifndef __BLWIRE_HEADER #define __BLWIRE_HEADER /* ************************************************************* */ /* PARAMETERS */ #define BLWIRE_MAX_NUM_CHAR 100 #define BLWIRE_MAX_NUM_X0_POS 200 /* ************************************************************* */ /* ENUM DEFINITIONS */ enum blwire_binary_enum {BLWIRE_TRUE, BLWIRE_FALSE}; /* ************************************************************* */ /* STRUCTURE DEFINITIONS */ struct blwire_param_struct { int num_turns_wire; /* number of turns in the stretched wire */ enum blwire_binary_enum show_ui; /* show user interface if TRUE, don't show if FALSE */ }; /* ************************************************************* */ /* PUBLIC FUNCTION DECLARATIONS */ void blwire_init(char log_file_in[], char dat_file_in[], char plt_file_in[], struct blwire_param_struct blwire_param_in); void blwire_get_bl_ave(double x0, double dx, double* bl_ave, double* bl_rms); void blwire_get_bl_vs_x(int num_x0_pos, double x0[], double dx, double bl_ave[], double bl_rms[]); void blwire_get_integ_str(int num_str_har, int num_x0_pos, double x0[], double dx, double* sl_ave, double* sl_rms); void blwire_calc_integ_str(int num_str_har, int num_x0_pos, double x0[], double bl_ave[], double bl_rms[], double* sl_ave, double* sl_rms); void blwire_dat_bl_vs_x(double dx, int num_turns_wire, int num_meas_ave, double x0, double imag_ave, double imag_rms, double bl_ave, double bl_rms); void blwire_plt_bl_vs_x(double x0, double imag_ave, double imag_rms, double bl_ave, double bl_rms); void blwire_dat_integ_str_vs_imag(double dx, int num_turns_wire, int num_meas_ave, int num_str_har, double imag_ave, double imag_rms, double sl_ave, double sl_rms); void blwire_plt_integ_str_vs_imag(int num_str_har, double imag_ave, double imag_rms, double sl_ave, double sl_rms); void blwire_calc_mag_center(int num_main_har, int num_x0_pos, double x0[], double bl_ave[], double bl_rms[], double bl_center, double poly_fit_coeff[], double poly_fit_coeff_err[], double* x_center, double* x_center_err); void blwire_dat_mag_center(double x_center, double x_err); void blwire_dat_mag_center_check(double x0, double imag_ave, double imag_rms, double bl_ave, double bl_rms, double bl_center, double inter, double inter_rms, double slope, double slope_rms); /* ************************************************************** */ /* DONE */ #endif