private void runAllTransientAnalysis_Sync() { // make sure femm file is created if (!Motor.isFEMModelReady(CurrentFEMMFile)) { Motor.BuildFEMModel(CurrentFEMMFile); } // run static first runStaticAnalysis(); sw = new Stopwatch(); sw.Start(); // now run the transient analysis foreach (String name in TransAnalysisGroup.Keys) { // un-subcribe event TransAnalysisGroup[name].OnFinishedAnalysis -= OnFinishAnalysis_internal; // run in sync TransAnalysisGroup[name].RunAnalysis(); // close all opened FEMM.CloseFemm(); } sw.Stop(); log.Info("Analysis time :" + sw.Elapsed.TotalSeconds + "s"); refreshAnalysisResults(); OnMotorAnalysisResultsUpdate(this, null); }
public void runStaticAnalysis() { // load from disk first staticAnalyser.LoadResultsFromDisk(); if (staticAnalyser.Results == null) { FEMM.CloseFemm(); // make sure ans file is created if (!Motor.isFEMModelReady(CurrentFEMMFile)) { Motor.BuildFEMModel(CurrentFEMMFile); } staticAnalyser.OnFinishedAnalysis -= staticAnalyser_OnFinishedAnalysis; staticAnalyser.OnFinishedAnalysis += staticAnalyser_OnFinishedAnalysis; // do measure staticAnalyser.RunAnalysis(); FEMM.CloseFemm(); } else { staticAnalyser_OnFinishedAnalysis(this, staticAnalyser.Results); } }
public void runDQCurrentAnalysis() { // make sure femm file is created if (!Motor.isFEMModelReady(CurrentFEMMFile)) { Motor.BuildFEMModel(CurrentFEMMFile); } // static analysis first runStaticAnalysis(); sw = new Stopwatch(); sw.Start(); dqcurrentAnalyser.OnFinishedAnalysis -= dqcurrentAnalyser_OnFinishedAnalysis; dqcurrentAnalyser.OnFinishedAnalysis += dqcurrentAnalyser_OnFinishedAnalysis; dqcurrentAnalyser.StartAnalysis();//start async }
public void runTransientAnalysis(String name = "Transient\\sample") { // make sure femm file is created if (!Motor.isFEMModelReady(CurrentFEMMFile)) { Motor.BuildFEMModel(CurrentFEMMFile); } // run static analysis runStaticAnalysis(); sw = new Stopwatch(); sw.Start(); TransAnalysisGroup[name].OnFinishedAnalysis -= OnFinishAnalysis_internal; TransAnalysisGroup[name].OnFinishedAnalysis += OnFinishAnalysis_internal; TransAnalysisGroup[name].StartAnalysis();//start async }
// forcefully build fem file public void buildFEMM() { FEMM.CloseFemm(); Motor.BuildFEMModel(CurrentFEMMFile); FEMM.CloseFemm(); }