00001
00002
00003
00004
00005 #ifndef VECTORUTILITIES
00006 #define VECTORUTILITIES
00007
00008 #include <iostream>
00009 #include <fstream>
00010 using namespace std;
00011
00012 void set_to_zero( double v[], int n, int stride );
00013 void writef_to_stream( double v[], int n, int stride,
00014 ostream& out, const char format[] );
00015 void set_to_constant( double v[], int n, int stride, double c );
00016 void add_constant( double v[], int n, int stride, double c );
00017 double stepbound( double v[], int n, int incv,
00018 double s[], int incs, double max );
00019 double stepbound( double v[], int n, int incv,
00020 double s[], int incs,
00021 double b[], int incb, double u[], int incu,
00022 double max );
00023 void axdzpy( int n, double alpha,
00024 double x[], int incx, double z[], int incz,
00025 double y[], int incy );
00026
00027 double find_blocking( double w[], int n, int incw,
00028 double wstep[], int incwstep,
00029 double u[], int incu,
00030 double ustep[], int incustep,
00031 double maxStep,
00032 double *w_elt, double *wstep_elt,
00033 double *u_elt, double *ustep_elt,
00034 int& first_or_second );
00035
00036 #endif