Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

SvmData.h

00001 /* OOQP                                                               *
00002  * Authors: E. Michael Gertz, Stephen J. Wright                       *
00003  * (C) 2001 University of Chicago. See Copyright Notification in OOQP */
00004 
00005 #ifndef SVMDATA_H
00006 #define SVMDATA_H
00007 
00008 #include "Data.h"
00009 #include "DenseGenMatrixHandle.h"
00010 #include "DenseSymMatrixHandle.h"
00011 #include "SimpleVectorHandle.h"
00012 
00020 class SvmData : public Data
00021 {
00022  public:
00023 
00033   SvmData(int hyperplanedim_in, int nobservations_in,
00034           double penalty  );
00035 
00051   SvmData(int hyperplanedim_in, int nobservations_in, double * X, double * d,
00052           double penalty );
00053 
00055   ~SvmData();
00056 
00072   static SvmData * textInput(char filename[], double penalty, int &iErr);
00073 
00075   double mPenalty;
00076 
00078   int hyperplanedim;    
00079 
00081   int nobservations;  
00082 
00087   DenseGenMatrixHandle Yt; 
00088 
00091   SimpleVectorHandle  categories; 
00092 
00097   virtual void YMult( double beta, SimpleVector& y,
00098                       double alpha, SimpleVector& x );
00099   
00104   virtual void YTransMult( double beta, SimpleVector& y,
00105                            double alpha, SimpleVector& x );
00106 
00108   virtual double dotCategories( SimpleVector & v );
00109 
00110   virtual double datanorm();
00111   virtual void datarandom();
00112   virtual void datainput() { };
00113   virtual void print() {};
00114   double penalty() { return mPenalty; }
00115 };
00116 
00117 enum { svminputok = 0,
00118        svmfileopenerror = -1,  // couldn't find the designated input file
00119        svmfileinputerror = -2, // not enough input, or error on input
00120        svmlabelerror = -3    // there were not exactly two distinct labels
00121 }; 
00122 
00123 #endif
00124 
00125 

Generated on Mon May 24 17:40:46 2004 for OOQP by doxygen1.2.18