00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034 #ifndef GFunVisualizationAnalysis_h
00035 #define GFunVisualizationAnalysis_h
00036
00037 #include <ReliabilityAnalysis.h>
00038 #include <GFunEvaluator.h>
00039 #include <FindDesignPointAlgorithm.h>
00040 #include <ProbabilityTransformation.h>
00041 #include <ReliabilityDomain.h>
00042 #include <GradGEvaluator.h>
00043 #include <MeritFunctionCheck.h>
00044 #include <ReliabilityConvergenceCheck.h>
00045 #include <RootFinding.h>
00046
00047
00048 class GFunVisualizationAnalysis : public ReliabilityAnalysis
00049 {
00050
00051 public:
00052 GFunVisualizationAnalysis(
00053 ReliabilityDomain *theReliabilityDomain,
00054 GFunEvaluator *theGFunEvaluator,
00055 ProbabilityTransformation *theProbabilityTransformation,
00056 TCL_Char *outputFileName,
00057 TCL_Char *convFileName,
00058 int convResults,
00059 int space,
00060 int funSurf,
00061 int axes,
00062 int dir);
00063 virtual ~GFunVisualizationAnalysis();
00064
00065 int analyze(void);
00066
00067 int setDirection(int rvDir);
00068 int setDirection(Vector theDirectionVector);
00069
00070 int setAxes(Vector axesVector);
00071 int setAxes(Matrix theMatrix);
00072 int setNumLinePts(int numLinePts);
00073
00074 int setRootFindingAlgorithm(RootFinding *theRootFinder);
00075 int setStartPoint(Vector *theStartPoint);
00076 int setGradGEvaluator(GradGEvaluator *theGradGEvaluator);
00077 int setMeritFunctionCheck(MeritFunctionCheck *theMeritFunctionCheck);
00078 int setReliabilityConvergenceCheck(ReliabilityConvergenceCheck *theReliabilityConvergenceCheck);
00079
00080
00081 protected:
00082
00083 private:
00084
00085 Vector getCurrentAxes12Point(int i, int j);
00086 Vector getCurrentAxes3Point(int i, int j);
00087 double findGSurface(Vector thePoint);
00088 double evaluateGFunction(Vector thePoint, bool printDivision);
00089
00090
00091
00092
00093
00094 ReliabilityDomain *theReliabilityDomain;
00095 GFunEvaluator *theGFunEvaluator;
00096 ProbabilityTransformation *theProbabilityTransformation;
00097 MeritFunctionCheck *theMeritFunctionCheck;
00098 GradGEvaluator *theGradGEvaluator;
00099 ReliabilityConvergenceCheck *theReliabilityConvergenceCheck;
00100 Vector *theStartPoint;
00101 RootFinding *theRootFindingAlgorithm;
00102
00103 char *outputFileName;
00104 char *convFileName;
00105 int convResults;
00106 int space;
00107 int funSurf;
00108 int axes;
00109 int dir;
00110
00111 int rvDir;
00112 Vector theDirectionVector;
00113 int rv1, rv2;
00114 double from1, interval1;
00115 double from2, interval2;
00116 int numPts1, numPts2;
00117 Matrix theMatrix;
00118 int numLinePts;
00119
00120 int nrv;
00121
00122 double scaleValue;
00123 };
00124
00125 #endif