Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Interpolation options #477

Closed
modelica-trac-importer opened this issue Jan 14, 2017 · 5 comments
Closed

Interpolation options #477

modelica-trac-importer opened this issue Jan 14, 2017 · 5 comments
Assignees
Labels
enhancement New feature or enhancement L: Blocks Issue addresses Modelica.Blocks L: C-Sources Issue addresses Modelica/Resources/C-Sources P: high High priority issue
Milestone

Comments

@modelica-trac-importer
Copy link

Reported by mtiller on 14 Jan 2011 17:54 UTC
I've been working on a project for some time that uses model inversion extensively. One of the issues we have seen is that the tables provided in the Modelica Standard Library assume extrapolation beyond the limits of the independent variables. In many cases, this is not desirable.

If the behavior of the model is only valid over a given table, there should be a way to reflect this. If they want a different way of interpolating, that should also be possible.

Specifically, it should be possible for users to specify different approaches to interpolation beyond the edges. I would propose at least the following options:

  • Fatal assertion - A fatal assertion is violated in such cases.
  • Warning assertion - A warning assertion (and presumably a warning message) is generated.
  • Limits - The inputs are "capped" by the upper and lower values of the independent variable.
  • Extrapolation - The current behavior
  • Periodic - The independent variable should "wrap" around when it goes beyond the edges of the table.

These are not arbitrary choices, we have seen use cases for all of these in our regular work.

Ideally, it should be possible to have a different approach for each independent variable in a given table.


Migrated-From: https://trac.modelica.org/Modelica/ticket/477

@modelica-trac-importer modelica-trac-importer added enhancement New feature or enhancement P: high High priority issue labels Jan 14, 2017
@modelica-trac-importer
Copy link
Author

Comment by Volker.Beuter on 24 Jan 2011 15:27 UTC
In case you issue a warning when leaving the interpolation range but do not stop, you are left with the question how to extrapolate. So the second choice is not a choice of its own but something to combine possibly with one of the three last choices.
Besides the warning the four remaining cases (assertion, constant, linear and periodic extrapolation) is what we at Kämmerer implemented for extrapolation in our cubic spline package Spline. In two dimensions things get even more complicated: There are applications where you need linear extrapolation in x but periodic in y (e.g. a radius function for some shape in cylinder coordinates. So all possible combinations are implemented in our AreaSpline package.

@modelica-trac-importer
Copy link
Author

Modified by hubertus on 23 Apr 2014 13:48 UTC

@modelica-trac-importer
Copy link
Author

Changelog removed by hubertus on 23 Apr 2014 13:48 UTC

@modelica-trac-importer
Copy link
Author

Comment by beutlich on 25 Apr 2014 13:20 UTC
See also #1153 where this ticket is referenced.

@beutlich beutlich added the L: Blocks Issue addresses Modelica.Blocks label Jan 29, 2017
@beutlich beutlich self-assigned this Feb 8, 2017
@beutlich beutlich added the L: C-Sources Issue addresses Modelica/Resources/C-Sources label Aug 29, 2017
@beutlich beutlich added this to the MSL_next-MINOR-version milestone Aug 29, 2017
@beutlich
Copy link
Member

@mtiller Good news: After closing #1839, #2120, #2190 and #2244 I believe your issue is resolved. 🍦

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or enhancement L: Blocks Issue addresses Modelica.Blocks L: C-Sources Issue addresses Modelica/Resources/C-Sources P: high High priority issue
Projects
None yet
Development

No branches or pull requests

3 participants