Class AbstractSecurityAnalysis<V extends Enum<V> & Quantity,E extends Enum<E> & Quantity,P extends AbstractLoadFlowParameters,C extends LoadFlowContext<V,E,P>>

java.lang.Object
com.powsybl.openloadflow.sa.AbstractSecurityAnalysis<V,E,P,C>
Direct Known Subclasses:
AcSecurityAnalysis, DcSecurityAnalysis

public abstract class AbstractSecurityAnalysis<V extends Enum<V> & Quantity,E extends Enum<E> & Quantity,P extends AbstractLoadFlowParameters,C extends LoadFlowContext<V,E,P>> extends Object
Author:
Geoffroy Jamgotchian <geoffroy.jamgotchian at rte-france.com>
  • Field Details

    • LOGGER

      protected static final org.slf4j.Logger LOGGER
    • network

      protected final com.powsybl.iidm.network.Network network
    • matrixFactory

      protected final com.powsybl.math.matrix.MatrixFactory matrixFactory
    • connectivityFactory

      protected final GraphConnectivityFactory<LfBus,LfBranch> connectivityFactory
    • monitorIndex

      protected final com.powsybl.security.monitor.StateMonitorIndex monitorIndex
    • reporter

      protected final com.powsybl.commons.reporter.Reporter reporter
  • Constructor Details

    • AbstractSecurityAnalysis

      protected AbstractSecurityAnalysis(com.powsybl.iidm.network.Network network, com.powsybl.math.matrix.MatrixFactory matrixFactory, GraphConnectivityFactory<LfBus,LfBranch> connectivityFactory, List<com.powsybl.security.monitor.StateMonitor> stateMonitors, com.powsybl.commons.reporter.Reporter reporter)
  • Method Details

    • run

      public CompletableFuture<com.powsybl.security.SecurityAnalysisReport> run(String workingVariantId, com.powsybl.security.SecurityAnalysisParameters securityAnalysisParameters, com.powsybl.contingency.ContingenciesProvider contingenciesProvider, com.powsybl.computation.ComputationManager computationManager, List<com.powsybl.security.strategy.OperatorStrategy> operatorStrategies, List<com.powsybl.security.action.Action> actions)
    • postContingencyStatusFromAcLoadFlowResult

      public static com.powsybl.security.PostContingencyComputationStatus postContingencyStatusFromAcLoadFlowResult(AcLoadFlowResult result)
    • checkActions

      protected static void checkActions(com.powsybl.iidm.network.Network network, List<com.powsybl.security.action.Action> actions)
    • createLfActions

      protected static Map<String,LfAction> createLfActions(LfNetwork lfNetwork, Set<com.powsybl.security.action.Action> actions, com.powsybl.iidm.network.Network network, LfNetworkParameters parameters)
    • indexActionsById

      protected static Map<String,com.powsybl.security.action.Action> indexActionsById(List<com.powsybl.security.action.Action> actions)
    • indexOperatorStrategiesByContingencyId

      protected static Map<String,List<com.powsybl.security.strategy.OperatorStrategy>> indexOperatorStrategiesByContingencyId(List<PropagatedContingency> propagatedContingencies, List<com.powsybl.security.strategy.OperatorStrategy> operatorStrategies, Map<String,com.powsybl.security.action.Action> actionsById, Set<com.powsybl.security.action.Action> neededActions)
    • checkCondition

      protected List<String> checkCondition(com.powsybl.security.strategy.OperatorStrategy operatorStrategy, com.powsybl.security.LimitViolationsResult limitViolationsResult)
    • findAllSwitchesToOperate

      protected static void findAllSwitchesToOperate(com.powsybl.iidm.network.Network network, List<com.powsybl.security.action.Action> actions, LfTopoConfig topoConfig)
    • findAllPtcToOperate

      protected static void findAllPtcToOperate(List<com.powsybl.security.action.Action> actions, LfTopoConfig topoConfig)
    • findAllRtcToOperate

      protected static void findAllRtcToOperate(List<com.powsybl.security.action.Action> actions, LfTopoConfig topoConfig)
    • runActionSimulation

      protected com.powsybl.security.results.OperatorStrategyResult runActionSimulation(LfNetwork network, C context, com.powsybl.security.strategy.OperatorStrategy operatorStrategy, List<String> actionsIds, LimitViolationManager preContingencyLimitViolationManager, com.powsybl.security.SecurityAnalysisParameters.IncreasedViolationsParameters violationsParameters, Map<String,LfAction> lfActionById, boolean createResultExtension, LfContingency contingency, LfNetworkParameters networkParameters)
    • runActionLoadFlow

      protected abstract com.powsybl.security.PostContingencyComputationStatus runActionLoadFlow(C context)