//Tradução da função calculaFluxoDiario public void ExecutaDiario(List <string> lstAlimentadoresCemig) { //Limpa arquivos _paramGerais.DeletaArqResultados(); // cria arquivo e preenche Cabecalho, caso modo _calcDRPDRC if (_paramGerais._parAvan._calcDRPDRC) { // Cria arquivo cabecalho VoltageLevelAnalysis.CriaArqCabecalho(_paramGerais, _janela); } //Roda o fluxo para cada alimentador foreach (string nomeAlim in lstAlimentadoresCemig) { //Verifica se foi solicitado o cancelamento. if (_janela._cancelarExecucao) { return; } // atribui nomeAlim _paramGerais.SetNomeAlimAtual(nomeAlim); //cria objeto fluxo diario _fluxoDiario = new DailyFlow(_paramGerais, _janela, _oDSS); // se carregou alimentador if (_fluxoDiario.CarregaAlimentador()) { //Executa fluxo diário openDSS ExecutaFluxoDiarioOpenDSS(); } } }
// executa modo Snap public void ExecutaSnap(List <string> lstAlimentadoresCemig) { //Limpa Arquivos _paramGerais.DeletaArqResultados(); //Roda Fluxo para cada alimentador foreach (string nomeAlim in lstAlimentadoresCemig) { // Verifica se foi solicitado o cancelamento. if (_janela._cancelarExecucao) { break; } // atribui novo alimentador _paramGerais.SetNomeAlimAtual(nomeAlim); //cria objeto fluxo diario _fluxoDiario = new DailyFlow(_paramGerais, _janela, _oDSS); // carrega alimentador _fluxoDiario.CarregaAlimentador(); //Execução com otimização demanda energia if (_paramGerais._parGUI._otmPorDemMax) { Otimiza(); } //Execução padrão else { Snap(nomeAlim); } } // TODO testar //Se modo otimiza grava arquivo load mult if (_paramGerais._parGUI._otmPorDemMax) { _paramGerais.GravaMapAlimLoadMultExcel(); } }