Skip to content

Add time interpolation to mpc data #3559

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

Open
wants to merge 7 commits into
base: main
Choose a base branch
from

Conversation

eslickj
Copy link
Contributor

@eslickj eslickj commented Apr 11, 2025

Fixes None

Adds option to linearly interpolate from MPC TimeSeriesData.

Summary/Motivation:

Sometimes you have time series data that doesn't line up perfectly with model time indexes. @blnicho and @jsiirola, this is part of the recent MHE work.

Changes proposed in this PR:

  • Add some linear interpolation utility functions and use them to add interpolation capbility to get data and time points not in MPC TimeSeriesData

Legal Acknowledgement

By contributing to this software project, I have read the contribution guide and agree to the following terms and conditions for my contribution:

  1. I agree my contributions are submitted under the BSD license.
  2. I represent I am authorized to make the contributions and grant the license. If my employer has rights to intellectual property that includes these contributions, I represent that I have received permission to make contributions and grant the required license on behalf of that employer.

@blnicho blnicho requested review from jsiirola, Robbybp and blnicho April 14, 2025 13:45
Copy link
Contributor

@Robbybp Robbybp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the addition. This is definitely functionality we were missing. I think this would be better as it's own interpolate, or get_interpolated_data, method. Would that work for your application?

There is also the question of whether to support some form of interpolation in DynamicModelInterface. (E.g., in get_data_at_time, load_data, or dedicated methods for interpolation.) I'm fine with (and think I prefer) punting for now if you don't need this for your application.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants