Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   Related Pages  

suTrackTarget.h

00001 // suTrackTarget.h
00002 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00003 // Copyright 2003
00004 // AUTHOR: Frank C. Anderson
00005 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00006 #ifndef __suTrackTarget_h__
00007 #define __suTrackTarget_h__
00008 
00009 
00010 //==============================================================================
00011 // INCLUDES
00012 //==============================================================================
00013 #include "suTrackControllerDLL.h"
00014 #include "suTrackController.h"
00015 #include <stdlib.h>
00016 #include <stdio.h>
00017 #include <math.h>
00018 #include <rdTools.h>
00019 #include <rdMath.h>
00020 #include <rdFSQP.h>
00021 #include <rdOptimizationTarget.h>
00022 
00023 
00024 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00025 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00030 class SUTRACKCONTROLLER_API suTrackTarget : public rdOptimizationTarget
00031 {
00032 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00033 //==============================================================================
00034 // DATA
00035 //==============================================================================
00036 private:
00038    suTrackController *_controller;
00040    double *_yOrig;
00042    double *_y;
00044    double *_dydt;
00046    double *_dqdt;
00048    double *_dudt;
00049 
00050 //==============================================================================
00051 // METHODS
00052 //==============================================================================
00053 public:
00054    //---------------------------------------------------------------------------
00055    // CONSTRUCTION
00056    //---------------------------------------------------------------------------
00057    virtual ~suTrackTarget();
00058    suTrackTarget(int aNX,suTrackController *aController);
00059 private:
00060    void setNull();
00061 
00062    //---------------------------------------------------------------------------
00063    // SET AND GET
00064    //---------------------------------------------------------------------------
00065 
00066    //--------------------------------------------------------------------------
00067    // REQUIRED OPTIMIZATION TARGET METHODS
00068    //--------------------------------------------------------------------------
00069    // PERFORMANCE AND CONSTRAINTS
00070    int compute(double *x,double *p,double *c);
00071    int computeGradients(double *dx,double *x,double *dpdx,double *dcdx);
00072    // PERFORMANCE
00073    int computePerformance(double *x,double *p);
00074    int computePerformanceGradient(double *x,double *dpdx);
00075    // CONSTRAINTS
00076    int computeConstraint(double *x,int i,double *c);
00077    int computeConstraintGradient(double *x,int i,double *dcdx);
00078 
00079 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00080 }; // END class suTrackTarget
00081 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00082 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00083 
00084 
00085 #endif // #ifndef __suTrackTarget_h__

Generated on Wed Aug 20 02:17:07 2003 for Simulation Software by doxygen1.3