00001
00002
00003
00004
00005 #ifndef DEQPGENFACTORY
00006 #define DEQPGENFACTORY
00007
00008 #include "QpGen.h"
00009 #include "OoqpVectorHandle.h"
00010 class QpGenData;
00011 class QpGenVars;
00012
00013 class QpGenDense : public QpGen {
00014
00015 public:
00016 QpGenDense( int nx_, int my_, int mz_ );
00017
00018
00019
00020 QpGenDense( int nx_, int my_, int mz_,
00021 int nnzQ, int nnzA, int nnzC);
00022 virtual LinearSystem * makeLinsys( Data * prob_in );
00023 virtual QpGenData * makeData( double c[], double Q[],
00024 double xlow[], char ixlow[],
00025 double xupp[], char ixupp[],
00026 double A[], double bA[],
00027 double C[],
00028 double clow[], char iclow[],
00029 double cupp[], char icupp[] );
00030 virtual QpGenData * makeData();
00031 void makeRandomData(QpGenData *& data, QpGenVars *& soln);
00032
00033 virtual void joinRHS( OoqpVector& rhs_in, OoqpVector& rhs1_in,
00034 OoqpVector& rhs2_in, OoqpVector& rhs3_in );
00035
00036 virtual void separateVars( OoqpVector& x_in, OoqpVector& y_in,
00037 OoqpVector& z_in, OoqpVector& vars_in );
00038 };
00039
00040 #endif