Opened 8 years ago

Closed 8 years ago

#4096 closed defect (invalid)

ExpressionSolve cannot solve with respect to array elements

Reported by: Lennart Ochel Owned by: Vitalij Ruge
Priority: high Milestone: Future
Component: Backend Version:
Keywords: PowerSystems Cc: Rüdiger Franke

Description

The example PowerSystems.Examples.Spot.GenerationAC3ph.TurbineGenerator contains the equation 0.0002546479089470328 * der(RLgen1.i[3]) + 0.008 * RLgen1.i[3] = 0.0, which cannot get symbolically solved with respect to RLgen1.i[3].

Change History (6)

comment:1 by Vitalij Ruge, 8 years ago

Seems to be right, that ExpressionSolve failed!
What do you expect?

comment:2 by Lennart Ochel, 8 years ago

RLgen1.i[3] = (-0.0002546479089470328 * der(RLgen1.i[3]))/0.008

in reply to:  2 ; comment:3 by Vitalij Ruge, 8 years ago

Replying to lochel:

RLgen1.i[3] = (-0.0002546479089470328 * der(RLgen1.i[3]))/0.008

Where we need this? It's strange that we should handling ode-equation(der(x) = c*x)) as not ode-equation.

comment:4 by Lennart Ochel, 8 years ago

Just run the example from the description with the flag -d=failtrace. ExpressionSolve calls the differentiate module but does not pass the array subscript. Is that intended?

[Differentiate.mo:192:7-192:147:writable] Error: Derivative of expression "RLgen1.L0 * der(RLgen1.i[3]) + RLgen1.R * RLgen1.i[3]" w.r.t. "RLgen1.i" is non-existent.
[ExpressionSolve.mo:216:9-216:210:writable] Error: Internal error Failed to solve "RLgen1.L0 * der(RLgen1.i[3]) + RLgen1.i[3] * RLgen1.R = 0.0" w.r.t. "RLgen1.i[3]"

in reply to:  3 comment:5 by Vitalij Ruge, 8 years ago

Replying to lochel:

Is that intended?

I guess it would be difficult to get the answer if the autore of the function is not involved. Newton step for linear system was before me.

Anaway I think is correct that ExpressionSolve don't solve the equation like descript in comment2.

comment:6 by Vitalij Ruge, 8 years ago

Resolution: invalid
Status: newclosed
Note: See TracTickets for help on using tickets.