Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Examples  

RSQPDirectSundanceInterface.h

Go to the documentation of this file.
00001 #ifndef RSQPDIRECTSUNDANCEINTERFACE_H
00002 #define RSQPDIRECTSUNDANCEINTERFACE_H
00003 
00004 #include "Sundance.h"
00005 
00006 namespace Sundance
00007 {
00008   using namespace NLPEpetraPack;
00009 
00010   /**
00011    * 
00012    */
00013 
00014   class RSQPSundanceDirectInterface : virtual public NLPEpetraDirectSundance,
00015     virtual public RSQPSundanceInterface
00016     {
00017     public:
00018       /** */
00019       RSQPSundanceDirectInterface();
00020 
00021       /** */
00022       virtual ~RSQPSundanceDirectInterface();
00023 
00024       /** Factory method to allocate an object for the 
00025        * reduced Jacobian */
00026       virtual const TSFSmartPtr<Epetra_MultiVector> create_D_r_hcl() const ;
00027       
00028       /** Calculate the reduced Jacobian and Hessian */
00029       virtual void calc_D_r_g_r(const TSFSmartPtr<Epetra_Vector>& uk,
00030                                 const TSFSmartPtr<Epetra_Vector>& dk,
00031                                 TSFSmartPtr<Epetra_MultiVector>& Drk,
00032                                 const TSFSmartPtr<Epetra_Vector>& grk) const ;
00033       
00034 
00035 
00036       protected:
00037 
00038       /** Computes the reduced jacobian and gradient given the current 
00039        * state. */
00040       void computeDrGr(const Expr& uk, const Expr& dk, 
00041                        Expr& Drk, Expr& grk) const ;
00042 
00043     };
00044     
00045 }
00046 
00047 #endif

Contact:
Kevin Long (krlong@ca.sandia.gov)


Documentation generated by