Opened 5 years ago
Last modified 2 years ago
#5404 assigned defect
Module RemoveSimpleEquations doesn't support synchronous systems
Reported by: | gossen | Owned by: | Karim.Abdelhak |
---|---|---|---|
Priority: | high | Milestone: | |
Component: | Backend | Version: | |
Keywords: | Cc: |
Description (last modified by gossen)
This simple synchronous equation system
model Example1 Real x, y; equation when Clock(0.1) then x + y = 0; x - y = 0; end when; end Example1;
produce an under-determined system
######################################## dumpindxdae ######################################## clocked partition(1) ======================================== Variables (2) ======================================== 1: y:VARIABLE() type: Real 2: x:VARIABLE() type: Real Equations (2, 2) ======================================== 1/1 (1): -1.0 = 1.0 [dynamic |0|0|0|0|] 2/2 (1): y = -x [dynamic |0|0|0|0|] Matching ======================================== 2 variables and equations var 1 is solved in eqn 2 var 2 is solved in eqn 1 StrongComponents ======================================== {1:2} Size: 1 Generic Jacobian via directional derivatives {2:1} BackendDAEType: simulation Base partitions (1) ======================================== 1: Clock(0.1)[1] Sub partitions (1) ======================================== 1: factor(1/1) shift(0/1) event(false)
optdaedump output shows that module removeSimpleEquations skip synchronous equations and module comSubExp produce wrong equation system.
######################################## pre-optimization module comSubExp (simulation) ######################################## clocked partition(1) ======================================== Variables (2) ======================================== 1: y:VARIABLE() type: Real 2: x:VARIABLE() type: Real Equations (2, 2) ======================================== 1/1 (1): (-x) / x = 1.0 [dynamic |0|0|0|0|] 2/2 (1): x + y = 0.0 [dynamic |0|0|0|0|] no matching BackendDAEType: simulation Base partitions (1) ======================================== 1: Clock(0.1)[1] Sub partitions (1) ======================================== 1: factor(1/1) shift(0/1) event(false)
Change History (12)
comment:1 Changed 5 years ago by casella
- Milestone changed from Future to 1.14.0
comment:2 Changed 5 years ago by gossen
- Description modified (diff)
- Summary changed from postOpt modules dont work with synchronous equations to pre optimisation modules dont work synchronous equations
comment:3 Changed 5 years ago by gossen
- Owner changed from lochel to gossen
- Status changed from new to accepted
comment:4 Changed 5 years ago by gossen
- Owner gossen deleted
- Status changed from accepted to assigned
- Summary changed from pre optimisation modules dont work synchronous equations to Module RemoveSimpleEquations doesn't support synchronous systems
comment:5 Changed 5 years ago by casella
- Milestone changed from 1.14.0 to 1.16.0
comment:6 Changed 4 years ago by casella
- Milestone changed from 1.16.0 to 1.17.0
Retargeted to 1.17.0 after 1.16.0 release
comment:7 Changed 3 years ago by casella
- Milestone changed from 1.17.0 to 1.18.0
Retargeted to 1.18.0 because of 1.17.0 timed release.
comment:8 Changed 3 years ago by casella
- Milestone 1.18.0 deleted
Ticket retargeted after milestone closed
comment:9 Changed 2 years ago by casella
- Resolution set to fixed
- Status changed from assigned to closed
As of 1.19.0, the reported test case works fine.
comment:10 Changed 2 years ago by casella
- Resolution fixed deleted
- Status changed from closed to reopened
comment:11 Changed 2 years ago by casella
- Owner set to Karim.Abdelhak
- Status changed from reopened to assigned
comment:12 Changed 2 years ago by casella
See discussion on GitHub: https://github.com/OpenModelica/OpenModelica/issues/5404
Releasing 1.14.0 which is stable and has many improvements w.r.t. 1.13.2. This issue is rescheduled to 1.16.0