Package com.powsybl.openloadflow.sensi
Class AbstractSensitivityAnalysis
- java.lang.Object
-
- com.powsybl.openloadflow.sensi.AbstractSensitivityAnalysis
-
- Direct Known Subclasses:
AcSensitivityAnalysis
,DcSensitivityAnalysis
public abstract class AbstractSensitivityAnalysis extends Object
- Author:
- Geoffroy Jamgotchian
, Gael Macherel
-
-
Field Summary
Fields Modifier and Type Field Description protected Supplier<GraphDecrementalConnectivity<LfBus>>
connectivityProvider
protected static org.slf4j.Logger
LOGGER
protected com.powsybl.math.matrix.MatrixFactory
matrixFactory
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractSensitivityAnalysis(com.powsybl.math.matrix.MatrixFactory matrixFactory, Supplier<GraphDecrementalConnectivity<LfBus>> connectivityProvider)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
checkContingencies(com.powsybl.iidm.network.Network network, LfNetwork lfNetwork, List<PropagatedContingency> contingencies)
void
checkLoadFlowParameters(com.powsybl.loadflow.LoadFlowParameters lfParameters)
protected List<com.powsybl.openloadflow.sensi.AbstractSensitivityAnalysis.SensitivityFactorGroup>
createFactorGroups(List<com.powsybl.openloadflow.sensi.AbstractSensitivityAnalysis.LfSensitivityFactor> factors)
protected JacobianMatrix
createJacobianMatrix(EquationSystem equationSystem, VoltageInitializer voltageInitializer)
void
cutConnectivity(LfNetwork lfNetwork, GraphDecrementalConnectivity<LfBus> connectivity, Collection<String> breakingConnectivityCandidates)
protected void
fillRhsSensitivityVariable(EquationSystem equationSystem, List<com.powsybl.openloadflow.sensi.AbstractSensitivityAnalysis.SensitivityFactorGroup> factorGroups, com.powsybl.math.matrix.Matrix rhs, Map<LfBus,Double> participationByBus)
protected static com.powsybl.iidm.network.Terminal
getEquipmentRegulatingTerminal(com.powsybl.iidm.network.Network network, String equipmentId)
protected static String
getInjectionBusId(com.powsybl.iidm.network.Network network, String injectionId)
protected List<ParticipatingElement>
getParticipatingElements(Collection<LfBus> buses, com.powsybl.loadflow.LoadFlowParameters loadFlowParameters, OpenLoadFlowParameters openLoadFlowParameters)
protected com.powsybl.math.matrix.DenseMatrix
initFactorsRhs(EquationSystem equationSystem, List<com.powsybl.openloadflow.sensi.AbstractSensitivityAnalysis.SensitivityFactorGroup> factorsGroups, Map<LfBus,Double> participationByBus)
com.powsybl.openloadflow.sensi.AbstractSensitivityAnalysis.SensitivityFactorHolder
readAndCheckFactors(com.powsybl.iidm.network.Network network, Map<String,SensitivityVariableSet> variableSetsById, SensitivityFactorReader factorReader, LfNetwork lfNetwork)
protected boolean
rescaleGlsk(List<com.powsybl.openloadflow.sensi.AbstractSensitivityAnalysis.SensitivityFactorGroup> factorGroups, Set<LfBus> nonConnectedBuses)
protected void
setPredefinedResults(Collection<com.powsybl.openloadflow.sensi.AbstractSensitivityAnalysis.LfSensitivityFactor> lfFactors, Set<LfBus> connectedComponent, GraphDecrementalConnectivity<LfBus> connectivity)
protected void
writeSkippedFactors(Collection<com.powsybl.openloadflow.sensi.AbstractSensitivityAnalysis.LfSensitivityFactor> lfFactors, SensitivityValueWriter valueWriter)
-
-
-
Field Detail
-
LOGGER
protected static final org.slf4j.Logger LOGGER
-
matrixFactory
protected final com.powsybl.math.matrix.MatrixFactory matrixFactory
-
connectivityProvider
protected final Supplier<GraphDecrementalConnectivity<LfBus>> connectivityProvider
-
-
Constructor Detail
-
AbstractSensitivityAnalysis
protected AbstractSensitivityAnalysis(com.powsybl.math.matrix.MatrixFactory matrixFactory, Supplier<GraphDecrementalConnectivity<LfBus>> connectivityProvider)
-
-
Method Detail
-
getEquipmentRegulatingTerminal
protected static com.powsybl.iidm.network.Terminal getEquipmentRegulatingTerminal(com.powsybl.iidm.network.Network network, String equipmentId)
-
createJacobianMatrix
protected JacobianMatrix createJacobianMatrix(EquationSystem equationSystem, VoltageInitializer voltageInitializer)
-
createFactorGroups
protected List<com.powsybl.openloadflow.sensi.AbstractSensitivityAnalysis.SensitivityFactorGroup> createFactorGroups(List<com.powsybl.openloadflow.sensi.AbstractSensitivityAnalysis.LfSensitivityFactor> factors)
-
getParticipatingElements
protected List<ParticipatingElement> getParticipatingElements(Collection<LfBus> buses, com.powsybl.loadflow.LoadFlowParameters loadFlowParameters, OpenLoadFlowParameters openLoadFlowParameters)
-
initFactorsRhs
protected com.powsybl.math.matrix.DenseMatrix initFactorsRhs(EquationSystem equationSystem, List<com.powsybl.openloadflow.sensi.AbstractSensitivityAnalysis.SensitivityFactorGroup> factorsGroups, Map<LfBus,Double> participationByBus)
-
fillRhsSensitivityVariable
protected void fillRhsSensitivityVariable(EquationSystem equationSystem, List<com.powsybl.openloadflow.sensi.AbstractSensitivityAnalysis.SensitivityFactorGroup> factorGroups, com.powsybl.math.matrix.Matrix rhs, Map<LfBus,Double> participationByBus)
-
cutConnectivity
public void cutConnectivity(LfNetwork lfNetwork, GraphDecrementalConnectivity<LfBus> connectivity, Collection<String> breakingConnectivityCandidates)
-
setPredefinedResults
protected void setPredefinedResults(Collection<com.powsybl.openloadflow.sensi.AbstractSensitivityAnalysis.LfSensitivityFactor> lfFactors, Set<LfBus> connectedComponent, GraphDecrementalConnectivity<LfBus> connectivity)
-
rescaleGlsk
protected boolean rescaleGlsk(List<com.powsybl.openloadflow.sensi.AbstractSensitivityAnalysis.SensitivityFactorGroup> factorGroups, Set<LfBus> nonConnectedBuses)
-
writeSkippedFactors
protected void writeSkippedFactors(Collection<com.powsybl.openloadflow.sensi.AbstractSensitivityAnalysis.LfSensitivityFactor> lfFactors, SensitivityValueWriter valueWriter)
-
checkContingencies
public void checkContingencies(com.powsybl.iidm.network.Network network, LfNetwork lfNetwork, List<PropagatedContingency> contingencies)
-
checkLoadFlowParameters
public void checkLoadFlowParameters(com.powsybl.loadflow.LoadFlowParameters lfParameters)
-
getInjectionBusId
protected static String getInjectionBusId(com.powsybl.iidm.network.Network network, String injectionId)
-
readAndCheckFactors
public com.powsybl.openloadflow.sensi.AbstractSensitivityAnalysis.SensitivityFactorHolder readAndCheckFactors(com.powsybl.iidm.network.Network network, Map<String,SensitivityVariableSet> variableSetsById, SensitivityFactorReader factorReader, LfNetwork lfNetwork)
-
-