- java.lang.Object
-
- com.powsybl.security.SecurityAnalysis
-
public final class SecurityAnalysis extends Object
Security analysis main API. It is a utility class (so with only static methods) used as an entry point for running a security analysis allowing to choose either a specific implementation or just to rely on the default one.- Author:
- Thomas Adam
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
SecurityAnalysis.Runner
A security analysis runner is responsible for providing convenient methods on top ofSecurityAnalysisProvider
: several variants of synchronous and asynchronous run with default parameters.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static SecurityAnalysis.Runner
find()
Get a runner for default security analysis implementation.static SecurityAnalysis.Runner
find(String name)
Get a runner for security analysis implementation namedname
.static SecurityAnalysisReport
run(Network network, ContingenciesProvider contingenciesProvider, SecurityAnalysisParameters parameters, com.powsybl.computation.ComputationManager computationManager)
static SecurityAnalysisReport
run(Network network, ContingenciesProvider contingenciesProvider, SecurityAnalysisParameters parameters, com.powsybl.computation.ComputationManager computationManager, LimitViolationFilter filter)
static SecurityAnalysisReport
run(Network network, String workingStateId, ContingenciesProvider contingenciesProvider, SecurityAnalysisParameters parameters, com.powsybl.computation.ComputationManager computationManager, LimitViolationFilter filter, LimitViolationDetector detector, List<SecurityAnalysisInterceptor> interceptors, List<OperatorStrategy> operatorStrategies, List<Action> actions)
static SecurityAnalysisReport
run(Network network, String workingStateId, ContingenciesProvider contingenciesProvider, SecurityAnalysisParameters parameters, com.powsybl.computation.ComputationManager computationManager, LimitViolationFilter filter, LimitViolationDetector detector, List<SecurityAnalysisInterceptor> interceptors, List<OperatorStrategy> operatorStrategies, List<Action> actions, List<StateMonitor> monitors, com.powsybl.commons.reporter.Reporter reporter)
static SecurityAnalysisReport
run(Network network, List<Contingency> contingencies)
static SecurityAnalysisReport
run(Network network, List<Contingency> contingencies, SecurityAnalysisParameters parameters)
static CompletableFuture<SecurityAnalysisReport>
runAsync(Network network, ContingenciesProvider contingenciesProvider, SecurityAnalysisParameters parameters, com.powsybl.computation.ComputationManager computationManager)
static CompletableFuture<SecurityAnalysisReport>
runAsync(Network network, ContingenciesProvider contingenciesProvider, SecurityAnalysisParameters parameters, com.powsybl.computation.ComputationManager computationManager, LimitViolationFilter filter)
static CompletableFuture<SecurityAnalysisReport>
runAsync(Network network, String workingStateId, ContingenciesProvider contingenciesProvider, SecurityAnalysisParameters parameters, com.powsybl.computation.ComputationManager computationManager, LimitViolationFilter filter, LimitViolationDetector detector, List<SecurityAnalysisInterceptor> interceptors, List<OperatorStrategy> operatorStrategies, List<Action> actions, com.powsybl.commons.reporter.Reporter reporter)
static CompletableFuture<SecurityAnalysisReport>
runAsync(Network network, List<Contingency> contingencies)
static CompletableFuture<SecurityAnalysisReport>
runAsync(Network network, List<Contingency> contingencies, SecurityAnalysisParameters parameters)
-
-
-
Method Detail
-
find
public static SecurityAnalysis.Runner find(String name)
Get a runner for security analysis implementation namedname
. In the case of a nullname
, default implementation is used.- Parameters:
name
- name of the security analysis implementation, null if we want to use default one- Returns:
- a runner for security analysis implementation named
name
-
find
public static SecurityAnalysis.Runner find()
Get a runner for default security analysis implementation.- Returns:
- a runner for default security analysis implementation
- Throws:
com.powsybl.commons.PowsyblException
- in case we cannot find a default implementation
-
runAsync
public static CompletableFuture<SecurityAnalysisReport> runAsync(Network network, String workingStateId, ContingenciesProvider contingenciesProvider, SecurityAnalysisParameters parameters, com.powsybl.computation.ComputationManager computationManager, LimitViolationFilter filter, LimitViolationDetector detector, List<SecurityAnalysisInterceptor> interceptors, List<OperatorStrategy> operatorStrategies, List<Action> actions, com.powsybl.commons.reporter.Reporter reporter)
-
runAsync
public static CompletableFuture<SecurityAnalysisReport> runAsync(Network network, ContingenciesProvider contingenciesProvider, SecurityAnalysisParameters parameters, com.powsybl.computation.ComputationManager computationManager, LimitViolationFilter filter)
-
runAsync
public static CompletableFuture<SecurityAnalysisReport> runAsync(Network network, ContingenciesProvider contingenciesProvider, SecurityAnalysisParameters parameters, com.powsybl.computation.ComputationManager computationManager)
-
runAsync
public static CompletableFuture<SecurityAnalysisReport> runAsync(Network network, List<Contingency> contingencies, SecurityAnalysisParameters parameters)
-
runAsync
public static CompletableFuture<SecurityAnalysisReport> runAsync(Network network, List<Contingency> contingencies)
-
run
public static SecurityAnalysisReport run(Network network, String workingStateId, ContingenciesProvider contingenciesProvider, SecurityAnalysisParameters parameters, com.powsybl.computation.ComputationManager computationManager, LimitViolationFilter filter, LimitViolationDetector detector, List<SecurityAnalysisInterceptor> interceptors, List<OperatorStrategy> operatorStrategies, List<Action> actions)
-
run
public static SecurityAnalysisReport run(Network network, String workingStateId, ContingenciesProvider contingenciesProvider, SecurityAnalysisParameters parameters, com.powsybl.computation.ComputationManager computationManager, LimitViolationFilter filter, LimitViolationDetector detector, List<SecurityAnalysisInterceptor> interceptors, List<OperatorStrategy> operatorStrategies, List<Action> actions, List<StateMonitor> monitors, com.powsybl.commons.reporter.Reporter reporter)
-
run
public static SecurityAnalysisReport run(Network network, ContingenciesProvider contingenciesProvider, SecurityAnalysisParameters parameters, com.powsybl.computation.ComputationManager computationManager, LimitViolationFilter filter)
-
run
public static SecurityAnalysisReport run(Network network, ContingenciesProvider contingenciesProvider, SecurityAnalysisParameters parameters, com.powsybl.computation.ComputationManager computationManager)
-
run
public static SecurityAnalysisReport run(Network network, List<Contingency> contingencies, SecurityAnalysisParameters parameters)
-
run
public static SecurityAnalysisReport run(Network network, List<Contingency> contingencies)
-
-