Opened 6 years ago

Last modified 5 years ago

#5288 assigned enhancement

Achieve successful simulation of 100% MSL 3.2.3 models with NF — at Version 7

Reported by: casella Owned by: somebody
Priority: blocker Milestone: 2.0.0
Component: *unknown* Version:
Keywords: Cc: lochel, AnHeuermann, Karim.Abdelhak, perost

Description (last modified by casella)

We have a strategic goal of simulating 100% of the MSL models with annotation(experiment(StopTime)), using the new frontend. This involves some remaining issues with the NF, but also some back-end/runtime issues, that were already present with the old FE and are not solved by the new one.

At this point in time, there are 15 models that do not simulate successfully in MSL 3.2.3, and other 23 models that don't pass the verification phase. There are also 55 models that still don't have a reference result file, see #5296.

I have already identified the following open issues:

I will update the list as I identify the root cause of the remaining failing models.

I think it would be nice if we could fix them before we release 1.14.0. That would be a clearly recognizable milestone for that release.

Change History (7)

comment:1 Changed 6 years ago by casella

  • Description modified (diff)

comment:2 Changed 6 years ago by casella

  • Description modified (diff)

comment:3 Changed 6 years ago by casella

  • Description modified (diff)

comment:4 Changed 6 years ago by casella

  • Description modified (diff)

comment:5 follow-up: Changed 6 years ago by perost

Regarding #5240, the lack of function evaluation for external functions, this only affects one model as far as I know: ReadRealMatrixFromFile. The issue with that model is that it has declarations such as:

final parameter Real[:, :] A = readRealMatrix(file, matrixName, dim1[1], dim1[2]);

I.e. the size of A is determined by an external function call. We could evaluate the call and determine the dimensions of A from the result, but this means that the contents of the matrix file will be hardcoded into the model. The alternative would be to allow A to have unknown dimensions and determine the size during simulation, but that might be tricky.

So it's a rather weird model, and something you'd normally use external objects for. The model also doesn't work with the old frontend even though it flattens, because the old frontend just sets the dimensions of A to [1, 1] and hopes no one will notice.

comment:6 in reply to: ↑ 5 Changed 6 years ago by casella

Replying to perost:

Regarding #5240, the lack of function evaluation for external functions, this only affects one model as far as I know: ReadRealMatrixFromFile.

Correct.

The issue with that model is that it has declarations such as:

final parameter Real[:, :] A = readRealMatrix(file, matrixName, dim1[1], dim1[2]);

I.e. the size of A is determined by an external function call. We could evaluate the call and determine the dimensions of A from the result, but this means that the contents of the matrix file will be hardcoded into the model.

I guess that is the intention. If there ever was a structural parameter, A is certainly one. I would just evaluate it and go ahead.

comment:7 Changed 6 years ago by casella

  • Description modified (diff)
Note: See TracTickets for help on using tickets.