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 #ifndef OutCrossingAnalysis_h
00034 #define OutCrossingAnalysis_h
00035
00036 #include <ReliabilityDomain.h>
00037 #include <GFunEvaluator.h>
00038 #include <GradGEvaluator.h>
00039 #include <FindDesignPointAlgorithm.h>
00040 #include <ReliabilityAnalysis.h>
00041 #include <tcl.h>
00042
00043 #include <fstream>
00044 using std::ofstream;
00045
00046 class OutCrossingAnalysis : public ReliabilityAnalysis
00047 {
00048
00049 public:
00050 OutCrossingAnalysis(
00051 ReliabilityDomain *theRelDom,
00052 GFunEvaluator *theGFunEval,
00053 GradGEvaluator *theSensEval,
00054 FindDesignPointAlgorithm *theFindDesPt,
00055 int analysisType,
00056 int stepsToStart,
00057 int stepsToEnd,
00058 int sampleFreq,
00059 double littleDeltaT,
00060 TCL_Char *fileName);
00061 ~OutCrossingAnalysis();
00062
00063 int analyze(void);
00064
00065 protected:
00066
00067 private:
00068 ReliabilityDomain *theReliabilityDomain;
00069 GFunEvaluator *theGFunEvaluator;
00070 GradGEvaluator *theGradGEvaluator;
00071 FindDesignPointAlgorithm *theFindDesignPointAlgorithm;
00072 int analysisType;
00073 int stepsToStart;
00074 int stepsToEnd;
00075 int sampleFreq;
00076 double littleDeltaT;
00077 char *fileName;
00078
00079
00080 double functionToIntegrate(double rho, double beta1, double beta2);
00081
00082 };
00083
00084 #endif