Opened 6 years ago

Last modified 6 years ago

#4998 new defect

table.getNextTimeEvent

Reported by: clement.tobac@… Owned by: Lennart Ochel
Priority: high Milestone: Future
Component: Backend Version: v1.12.0
Keywords: CombieTimeTable Cc: Adrian Pop

Description

Hi,

I've got issue when I mix two different blocks that are reading ASCII - table.
It's working when i consider them alone, with other non-reader blocks that behave the same (but whithout extranal input, just constant settings), but when I use them both, I've got this issue :

[118] 16:03:38 Traduction Erreur
Internal error BackendDAE.adjacencyRowEnhanced failed for eqn:
when {$whenCondition1, initial()} then

z2.C11.table.nextTimeEventScaled := Modelica.Blocks.Sources.CombiTimeTable$z2$C11$table.getNextTimeEvent(z2.C11.table.tableID, z2.C11.table.timeScaled, z2.C11.table.tableOnFileRead);

end when;

[119] 16:03:38 Traduction Erreur
Internal error BackendDAEUtil.getAdjacencyMatrixEnhancedScalar failed

[120] 16:03:38 Traduction Erreur
Internal error - IndexReduction.dynamicStateSelectionWork failed!

Thanks for your help,
Regards,

Change History (4)

comment:1 by Francesco Casella, 6 years ago

Priority: blockerhigh

Dear Clement,

it would help a lot if you could attach a test case to replicate the problem.

Thanks!

comment:2 by anonymous, 6 years ago

It's a huge model, I'll try to replicate the issue on a smaller case.

However, I've noticed that on a simplified model, I've got red text on the compilation that should be linked, even if the compilation succeed :

Generated.ZoneGenerated5.c: In function 'Generated_ZoneGenerated5_eqFunction_877':

Generated.ZoneGenerated5.c:3883:5: warning: floating constant exceeds range of 'double' [-Woverflow]

tmp173 = Less(data->localData[0]->realVars[626] /*

z1._G91._table_int_step._nextTimeEventScaled DISCRETE */, 1.797693134862316e+308);


Generated.ZoneGenerated5.c:3884:5: warning: floating constant exceeds range of 'double' [-Woverflow]

data->localData[0]->realVars[625] /* z1._G91._table_int_step._nextTimeEvent DISCRETE */ = (tmp173?data->localData[0]->realVars[626] /*

z1._G91._table_int_step._nextTimeEventScaled DISCRETE */:1.797693134862316e+308);

Does this help ?

comment:3 by Francesco Casella, 6 years ago

Cc: Adrian Pop added

In many cases we are using Modelica.Constants.Inf to set a value which is for sure larger than any user-derfined ones.

It looks like the constant is actually too big for the compiler we are using, @adrpo can you please check?

comment:4 by anonymous, 6 years ago

Seems to be fixed in the nightly build v1.13 !

Note: See TracTickets for help on using tickets.