idea to avoid incorrect results (can be solved by opening the algebraic loop)
issue a Warning in module StateSelection function getSortedAndSolvedAST like this
if !isLinear
@warn "\n===>>> getSortedAndSolvedAST\n===>>> system -$j.$i- NOT linear \n===>>> isLinear: $(isLinear)\n===>>> hasConstCoeff: $(hasConstantCoefficients)\n"
end
reactivate showMessage2 - at the moment commented
if linearAssumption
isLinear = true
hasConstantCoefficients = false
#showMessage2("It is heuristically assumed that equation system is linear (although isLinearEquation returned isLinear=false).";
# severity = WARNING,
# variables = vConstraints[i],
# equations = eConstraints[i])
end
testing a simple control circuit with a nonlinear element and received wrong result.
OM circuit diagram
wrong result - Modia
correct result - Modia
NoNlinear.zip
idea to avoid incorrect results (can be solved by opening the algebraic loop)
StateSelection
functiongetSortedAndSolvedAST
like thisshowMessage2
- at the moment commented