14 #ifndef _DYLP_VECTOR_H 
   15 #define _DYLP_VECTOR_H 
  110   typedef union { 
unsigned char fpchr[8] ; 
double fpdbl ; } fpunion_t ;
 
  117 #ifdef WORDS_BIGENDIAN 
  118     static fpunion_t QNaNbits 
UNUSED = { { (
unsigned char) 
'\177',
 
  119                                         (
unsigned char) 
'\377',
 
  120                                         (
unsigned char) 
'\377',
 
  121                                         (
unsigned char) 
'\377',
 
  122                                         (
unsigned char) 
'\377',
 
  123                                         (
unsigned char) 
'\377',
 
  124                                         (
unsigned char) 
'\377',
 
  125                                         (
unsigned char) 
'\376' } } ;
 
  126     static fpunion_t SNaNbits 
UNUSED = { { (
unsigned char) 
'\177',
 
  127                                         (
unsigned char) 
'\360',
 
  128                                         (
unsigned char) 
'\0',
 
  129                                         (
unsigned char) 
'\0',
 
  130                                         (
unsigned char) 
'\0',
 
  131                                         (
unsigned char) 
'\0',
 
  132                                         (
unsigned char) 
'\0',
 
  133                                         (
unsigned char) 
'\001' } } ;
 
  134     static fpunion_t Infbits UNUSED = { { (
unsigned char) 
'\177',
 
  135                                        (
unsigned char) 
'\360',
 
  136                                        (
unsigned char) 
'\0',
 
  137                                        (
unsigned char) 
'\0',
 
  138                                        (
unsigned char) 
'\0',
 
  139                                        (
unsigned char) 
'\0',
 
  140                                        (
unsigned char) 
'\0',
 
  141                                        (
unsigned char) 
'\0' } } ;
 
  143     static fpunion_t QNaNbits UNUSED = { { (
unsigned char) 
'\376',
 
  144                                         (
unsigned char) 
'\377',
 
  145                                         (
unsigned char) 
'\377',
 
  146                                         (
unsigned char) 
'\377',
 
  147                                        (
unsigned char) 
'\377',
 
  148                                         (
unsigned char) 
'\377',
 
  149                                         (
unsigned char) 
'\377',
 
  150                                         (
unsigned char) 
'\177' } } ;
 
  151     static fpunion_t SNaNbits UNUSED = { { (
unsigned char) 
'\001',
 
  152                                         (
unsigned char) 
'\0',
 
  153                                         (
unsigned char) 
'\0',
 
  154                                         (
unsigned char) 
'\0',
 
  155                                         (
unsigned char) 
'\0',
 
  156                                         (
unsigned char) 
'\0',
 
  157                                         (
unsigned char) 
'\360',
 
  158                                         (
unsigned char) 
'\177' } } ;
 
  159     static fpunion_t Infbits UNUSED = { { (
unsigned char) 
'\0',
 
  160                                        (
unsigned char) 
'\0',
 
  161                                        (
unsigned char) 
'\0',
 
  162                                        (
unsigned char) 
'\0',
 
  163                                        (
unsigned char) 
'\0',
 
  164                                        (
unsigned char) 
'\0',
 
  165                                        (
unsigned char) 
'\360',
 
  166                                        (
unsigned char) 
'\177' } } ;
 
  173 #ifndef DYLP_HAS_QUIET_NAN 
  174 # define quiet_nan(zz_dummy_zz) (QNaNbits.fpdbl) 
  183 #define HUGE_VAL (Infbits.fpdbl) 
  201 # define finite DYLP_ISFINITE 
  204 # define isnan  DYLP_ISNAN 
  238 typedef struct { 
int ndx ;
 
  241 typedef struct { 
int ndx ;
 
pkvec_struct * pkvec_new(int sze)
 
bool pkvec_resize(pkvec_struct *pkvec, int sze)
 
double exvec_2norm(double *vec, int len)
 
double exvec_infnorm(double *vec, int len, int *p_jmax)
 
double pkvec_2norm(pkvec_struct *vec)
 
double pkvec_dotexvec(pkvec_struct *pkvec, double *exvec)
 
void pkvec_free(pkvec_struct *pkvec)
 
bool pkvec_check(pkvec_struct *pkvec, const char *caller)
 
double exvec_1norm(double *vec, int len)
 
double exvec_ssq(double *vec, int len)