Opened 10 years ago
Closed 3 years ago
#3303 closed defect (fixed)
wrongly detected under-determined system, probably caused by combination of algorithm and arrays
Reported by: | Owned by: | somebody | |
---|---|---|---|
Priority: | high | Milestone: | 1.19.0 |
Component: | Backend | Version: | trunk |
Keywords: | Cc: |
Description
I am fairly new to Modelica, but I am quite sure this is a bug or at least a bad error message:
Error: Too few equations, under-determined system. The model has 4 equation(s) and 5 variable(s).
Error: Internal error Transformation Module PFPlusExt index Reduction Method Pantelides failed!
The array used in the testcase has a size of 1. When I change to an equivalent model without an array, it works.
Attachments (1)
Change History (4)
by , 10 years ago
Attachment: | testcase.mo added |
---|
comment:1 by , 10 years ago
Component: | Unknown → Backend |
---|
It seems that this is an issue with counting algorithm outputs due to array crefs.
comment:2 by , 9 years ago
I do not know if this information helps to get this fixed. When I manually unroll the for loop in the AD_Converter algorithm section, the error is gone.
Example:
- for i in 1:N loop - y[i] := if mod(z, 2) > 0 then L.'1' else L.'0'; - z := div(z, 2); - end for; + y[1] := if mod(z, 2) > 0 then L.'1' else L.'0'; + z := div(z, 2); + y[2] := if mod(z, 2) > 0 then L.'1' else L.'0'; + z := div(z, 2);
Also the error is gone when I implement exact the same in the testcase, instead of using a separate model for AD_Converter.
I also did a test with removing all pins and replacing them with equation u=0 in AD_Converter. There the results are the same. Except when I add +d=vectorize, I get an over-determined system with 0 variables (which is obviously correct).
Adding +d=checkBackendDae to omc -s gives the following error message:
Error: Variable i from Expression: vsense_adc[1].y[i] not found in scope BackendDAE object.
comment:3 by , 3 years ago
Milestone: | Future → 1.19.0 |
---|---|
Resolution: | → fixed |
Status: | new → closed |
This seems to have been fixed at some point, the model now simulates fine and is reported to have 14 variables and 14 equations.
Model failing to compile