Opened 11 years ago
Last modified 7 years ago
#2502 new defect
array equations may matched inconsistent
Reported by: | Willi Braun | Owned by: | Willi Braun |
---|---|---|---|
Priority: | high | Milestone: | Future |
Component: | Backend | Version: | trunk |
Keywords: | Cc: | Lennart Ochel, Jens Frenkel |
Description (last modified by )
That means equation like
{a,b,c} = {d,e,f+g}
may matched to vars {d,f,g} what is inconsistent.
I try to add a testcase later.
Change History (14)
comment:1 by , 11 years ago
Description: | modified (diff) |
---|
comment:2 by , 11 years ago
Cc: | added |
---|
comment:4 by , 11 years ago
Cc: | added |
---|
comment:5 by , 11 years ago
Well... It's fine to keep it as a block, but... At it needs to match one in each of the following sets:
{a,d} {b,e} {c,f,g}
comment:6 by , 11 years ago
That means to do an unnecessary high effort of work. The matching defines the variables and equations belongs to one block. For the "inner" matching a second algorithm is necessary. This inner algorithm consider the occurrence of the variables in the equations and produce because of that an even better matching. Since this "inner" matching is costly it makes no sense to generate it after each postoptmodule.
comment:7 by , 10 years ago
Milestone: | 1.9.1 → 1.9.2 |
---|
This ticket was not closed for 1.9.1, which has now been released. It was batch modified for milestone 1.9.2 (but maybe an empty milestone was more appropriate; feel free to change it).
comment:8 by , 10 years ago
Milestone: | 1.9.2 → 1.9.3 |
---|
Milestone changed to 1.9.3 since 1.9.2 was released.
comment:13 by , 8 years ago
Milestone: | 1.11.0 → 1.12.0 |
---|
Milestone moved to 1.12.0 due to 1.11.0 already being released.
comment:14 by , 7 years ago
Milestone: | 1.12.0 → Future |
---|
The milestone of this ticket has been reassigned to "Future".
If you think the issue is still valid and relevant for you, please select milestone 1.13.0 for back-end, code generation and run-time issues, or 2.0.0 for front-end issues.
If you are aware that the problem is no longer present, please select the milestone corresponding to the version of OMC you used to check that, and set the status to "worksforme".
In both cases, a short informative comment would be welcome.
Matching is not the problem. It is with purpose designed to do this to keep the algebraic equations as a block. For example also necessary to do indexreduction.
If the array equations are not extended via the module inlineArrayEqn (changes
{a[1],a[2]}={1,3
} toa[1]=1
anda[2]=3
) the code generation (SimCodeUtil.createSingleArrayEqnCode) have to handle this.