#ifndef Mline
#define Mline 500
#endif
#define Mstore 6000
typedef struct pst_par{
double epsilon;
double ff, Tall;
double t_inter, t_off_ra, t_off_rb;
double t_integrate;
int ncol, *colar, max_nc, nskip, average_cycle;
int ult, upt, ura, urb, alt, apt;
} pst_par;
/* Function Declaration */
void read_input_psth(pst_par *pstpar, fl_st fl);
FILE** fl_vector(long nl, long nh);
void free_fl_vector(FILE **fl, long nl, long nh);
void analyze_psth(pst_par *pstpar, save_str *sv, psth_str *ps, fl_st *fl);
void store_pr(double x1, double x2, double ***av_ar, int *num_ar, int inar);
void average_over_cycles(double **av_ar, int num_ar, double ff,
int average_cycle, int inar, pst_par *pstpar, double *psth_res,
fl_st *fl);
void quantify_psth(double **vec_av, int ncut, double ff, int average_cycle,
int inar, double delta_t, pst_par *pstpar, double *psth_res,
fl_st *fl);
double find_maximum_dist(double **vec_av, int ncut, double ff, int inar,
double delta_t, pst_par *pstpar, fl_st *fl);
double find_latency(double hlat, double **vec_av, int ncut, double ff,
int inar, double delta_t, pst_par *pstpar, fl_st *fl);
void integral_cal(double **vec_av, int ncut, double ff, int inar,
double delta_t, pst_par *pstpar, double *dint, double *dtint, fl_st *fl);