Opened 12 years ago
Last modified 8 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 , 12 years ago
| Description: | modified (diff) |
|---|
comment:2 by , 12 years ago
| Cc: | added |
|---|
comment:4 by , 12 years ago
| Cc: | added |
|---|
comment:5 by , 12 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 , 12 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 , 11 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 , 11 years ago
| Milestone: | 1.9.2 → 1.9.3 |
|---|
Milestone changed to 1.9.3 since 1.9.2 was released.
comment:13 by , 9 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 , 8 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]=1anda[2]=3) the code generation (SimCodeUtil.createSingleArrayEqnCode) have to handle this.