Changes between Initial Version and Version 1 of Ticket #4395, comment 6
- Timestamp:
- 2017-09-06T21:14:01Z (8 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Ticket #4395, comment 6
initial v1 2 2 > In [https://github.com/OpenModelica/OMCompiler/pull/1793 PR #1793] the scaling issues are fixed and the examples Test2 and Test3 from 'test-kinsol-v2.mos' are solved with the same amount of iterations. 3 3 4 This is true. However, if you now remove the declaration {{{F(each nominal = 1e9)}}} from {{{Test3}}}, the very same number of iterations is needed. In fact, even the value of fnorm at each iteration is exactly the same down to the last digit. This is quite weird, I would have expected to see much worse performance when the forces are not scaled. So, for this specific example it would now seem that introducing scaling values for the variables is not necessary, or in fact that this is totally irrelevant.4 This is true. However, if you now remove the declaration {{{F(each nominal = 1e9)}}} (see {{{Test4}}} in the updated {{{test-kinsol-v2.mos}}} attachment), the very same number of iterations is needed. In fact, even the value of fnorm at each iteration is exactly the same down to the last digit. This is quite weird, I would have expected to see much worse performance when the forces are not scaled. So, for this specific example it would now seem that introducing scaling values for the variables is not necessary, or in fact that this is totally irrelevant. 5 5 6 6 In fact, the residuals for the spring equations {{{s[i]*(1 + abs(s[i])/s_0)*k[i]*N = F[i]}}} are indeed scaled correctly due to the presence of the large factors {{{k[i]}}}, even without giving a scaling factor to F. On the other hand, during the various iterations the equations {{{F[i] = F[i+1]}}}, which are badly scaled if no nominal attribute is given to F, but are trivial, are always solved to produce an exactly zero residual, so it might be well be that the scaling of the large variables F and of the residuals of those equality equations is irrelevant for this specific test case.