/// <summary> /// Constructor. /// </summary> public RobustAnalysis(Analysis owner) { m_owner = owner; m_param = new RobustAnalysisParameter(); }
/// <summary> /// Set the robust analysis parameter. /// </summary> /// <param name="p">the parameter of robust analysis.</param> public void SetRobustAnalysisParameter(RobustAnalysisParameter p) { m_robustParameter = p; }
/// <summary> /// This program execute the program of robust analysis. /// </summary> public void ExecuteRobustAnalysis() { if (m_env.PluginManager.Status == ProjectStatus.Uninitialized) return; m_robustParameter = m_robustDialog.GetParameter(); ShowGridStatusDialog(); string modelName = m_env.DataManager.CurrentProject.Model.ModelID; List<EcellObject> sysObj = new List<EcellObject>(); foreach (EcellObject e in m_env.DataManager.CurrentProject.SystemDic[modelName]) { sysObj.Add(e.Clone()); } List<EcellObject> stepperObj = new List<EcellObject>(); foreach (EcellObject e in m_env.DataManager.CurrentProject.StepperDic[modelName]) { stepperObj.Add(e.Clone()); } JobGroup g = m_env.JobManager.CreateJobGroup(RobustAnalysis.s_analysisName, sysObj, stepperObj); RobustAnalysis robustAnalysis = new RobustAnalysis(this); robustAnalysis.Group = g; robustAnalysis.AnalysisParameter = m_robustParameter; robustAnalysis.ExecuteAnalysis(); }
/// <summary> /// Initializes the plugin. /// </summary> public override void Initialize() { m_env.JobManager.AnalysisDic[ParameterEstimation.s_analysisName] = new ParameterEstimation(this); m_env.JobManager.AnalysisDic[BifurcationAnalysis.s_analysisName] = new BifurcationAnalysis(this); m_env.JobManager.AnalysisDic[SensitivityAnalysis.s_analysisName] = new SensitivityAnalysis(this); m_env.JobManager.AnalysisDic[RobustAnalysis.s_analysisName] = new RobustAnalysis(this); m_bifurcateParameter = new BifurcationAnalysisParameter(); m_estimationParameter = new ParameterEstimationParameter(); m_sensitivityParameter = new SensitivityAnalysisParameter(); m_robustParameter = new RobustAnalysisParameter(); m_rWin = new AnalysisResultWindow(this); m_bifurcationDialog = new BifurcationSettingDialog(this); m_bifurcationDialog.SetParameter(m_bifurcateParameter); m_bifurcationDialog.ContentType = DockContentType.ANALYSIS; m_robustDialog = new RobustAnalysisSettingDialog(this); m_robustDialog.SetParameter(m_robustParameter); m_robustDialog.ContentType = DockContentType.ANALYSIS; m_sensitivityDialog = new SensitivityAnalysisSettingDialog(this); m_sensitivityDialog.SetParameter(m_sensitivityParameter); m_sensitivityDialog.ContentType = DockContentType.ANALYSIS; m_estimationDialog = new ParameterEstimationSettingDialog(this); m_estimationDialog.SetParameter(m_estimationParameter); m_estimationDialog.ContentType = DockContentType.ANALYSIS; }
/// <summary> /// Set the robust analysis parameter. /// </summary> /// <param name="p">the parameter of robust analysis.</param> public void SetParameter(RobustAnalysisParameter p) { m_param = p; robustAnalysisMaxSampleTextBox.Text = Convert.ToString(p.SampleNum); robustAnalysisSimulationTimeTextBox.Text = Convert.ToString(p.SimulationTime); robustAnalysisMaxSampleTextBox.Text = Convert.ToString(p.MaxData); robustAnalysisMaxFrequencyTextBox.Text = Convert.ToString(p.MaxFreq); robustAnalysisMinFrequencyTextBox.Text = Convert.ToString(p.MinFreq); robustAnalysisWindowSizeTextBox.Text = Convert.ToString(p.WinSize); if (p.IsRandomCheck) robustAnalysisRandomRadioButton.Checked = true; else robustAnalysisMatrixRadioButton.Checked = true; }