Deviations in Result from 2 Matlab Versions
조회 수: 1 (최근 30일)
이전 댓글 표시
Hello guys,
I have a complex model (let's name it model 'A') that run in Matlab/Simulink 2016b. When I migrate to 2018b and tried to run it, and error appeared due to SLPRJ folders from 2016b. From my understanding (after reading from other forums), SLPRJ folders are generated when model was run and it simply generated the C code for the calculations.
In my Matlab 2018b, an add ons MINGW.mlpkginstall was installed because it's needed to run another model (let's say model 'B'). Thus, in order to able to run that complex model ('A'), I simply deleted the SLPRJ folders(that was made in 2016b) and the results showed up and everything works without error.
When I tried to compare the results, somehow the deviations occured between 2016b and 2018b. I've tried to read release notes from 2017a to 2018b, but I couldn't find something that can be relevant as the cause for those deviations.
Has anybody any idea, what can be the root cause? I would say by deleting SLPRJ folders (2016b) and Mingw shouldn't be the main cause for those deviations. Am I right?
Thank you
Regards
Daniel
댓글 수: 2
Sivani Pentapati
2021년 9월 2일
Could you please provide a detailed explanation along with the code you have tried so that we can replicate the issue?
채택된 답변
Walter Roberson
2021년 9월 3일
We can see a transfer function step in Picture 3. No matter whether you use Continuous time or Discrete Time, if you have a transfer function, MATLAB is going to end up having to create differential equations and use a differential equation solver. That is going to involve the linear algebra functions, and will probably need BLAS or LAPACK .
If you are using continuous time, MATLAB always sets up differential equations and uses a differential equation solver.
If you are using discrete time, then you are operating closer to a state machine, and potentially MATLAB might not need to set up differential equations -- but transfer functions need derivatives and you need a differential equation solver in that case.
댓글 수: 5
Walter Roberson
2021년 9월 3일
No, using continuous time requires that differential equations are calculated, and the solvers for those use functions such as the \ operator that use BLAS or LAPACK.
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Array and Matrix Mathematics에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!