Open frederikgeth opened 2 months ago
After discussion with Chandra today, we identified a couple of issues that cause power flow using Ipopt to be unreliable / struggle to converge.
DC voltage variable should have a sign that is known a priori. in PMACDC the sign is always positive (negative exists in the multiconductor case). Even if bounded=false, the zero lower (or upper bound) needs to be added/enforced in https://github.com/Electa-Git/PowerModelsACDC.jl/blob/a88fce28f24c4ef025f028871a56f62cfb45125f/src/core/variabledcgrid.jl#L8
Similarly, in https://github.com/Electa-Git/PowerModelsACDC.jl/blob/a88fce28f24c4ef025f028871a56f62cfb45125f/src/formconv/acp.jl#L7 it is essentially assumed that iconv_ac is positive, per, https://github.com/Electa-Git/PowerModelsACDC.jl/blob/a88fce28f24c4ef025f028871a56f62cfb45125f/src/core/variableconv.jl#L202
iconv_ac
Dropping the zero lower/upper bound leads to symmetries and bad convergence for power flow simulation
After discussion with Chandra today, we identified a couple of issues that cause power flow using Ipopt to be unreliable / struggle to converge.
DC voltage variable should have a sign that is known a priori. in PMACDC the sign is always positive (negative exists in the multiconductor case). Even if bounded=false, the zero lower (or upper bound) needs to be added/enforced in https://github.com/Electa-Git/PowerModelsACDC.jl/blob/a88fce28f24c4ef025f028871a56f62cfb45125f/src/core/variabledcgrid.jl#L8
Similarly, in https://github.com/Electa-Git/PowerModelsACDC.jl/blob/a88fce28f24c4ef025f028871a56f62cfb45125f/src/formconv/acp.jl#L7 it is essentially assumed that
iconv_ac
is positive, per, https://github.com/Electa-Git/PowerModelsACDC.jl/blob/a88fce28f24c4ef025f028871a56f62cfb45125f/src/core/variableconv.jl#L202Dropping the zero lower/upper bound leads to symmetries and bad convergence for power flow simulation