Opened 11 years ago

Last modified 7 years ago

#2502 new defect

array equations may matched inconsistent

Reported by: wbraun Owned by: wbraun
Priority: high Milestone: Future
Component: Backend Version: trunk
Keywords: Cc: lochel, jfrenkel

Description (last modified by wbraun)

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 Changed 11 years ago by wbraun

  • Description modified (diff)

comment:2 Changed 11 years ago by lochel

  • Cc lochel added

comment:3 Changed 11 years ago by jfrenkel

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} to a[1]=1 and a[2]=3) the code generation (SimCodeUtil.createSingleArrayEqnCode) have to handle this.

Last edited 11 years ago by jfrenkel (previous) (diff)

comment:4 Changed 11 years ago by jfrenkel

  • Cc jfrenkel added

comment:5 Changed 11 years ago by sjoelund.se

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 Changed 11 years ago by jfrenkel

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 Changed 10 years ago by sjoelund.se

  • Milestone changed from 1.9.1 to 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 Changed 10 years ago by sjoelund.se

  • Milestone changed from 1.9.2 to 1.9.3

Milestone changed to 1.9.3 since 1.9.2 was released.

comment:9 Changed 9 years ago by sjoelund.se

  • Milestone changed from 1.9.3 to 1.9.4

Moved to new milestone 1.9.4

comment:10 Changed 9 years ago by sjoelund.se

  • Milestone changed from 1.9.4 to 1.9.5

Milestone pushed to 1.9.5

comment:11 Changed 9 years ago by sjoelund.se

  • Milestone changed from 1.9.5 to 1.10.0

Milestone renamed

comment:12 Changed 8 years ago by sjoelund.se

  • Milestone changed from 1.10.0 to 1.11.0

Ticket retargeted after milestone closed

comment:13 Changed 8 years ago by sjoelund.se

  • Milestone changed from 1.11.0 to 1.12.0

Milestone moved to 1.12.0 due to 1.11.0 already being released.

comment:14 Changed 7 years ago by casella

  • Milestone changed from 1.12.0 to 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.

Note: See TracTickets for help on using tickets.