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

Shifted Operator Inference #42

Open
6 tasks
shanemcq18 opened this issue Aug 18, 2023 · 0 comments
Open
6 tasks

Shifted Operator Inference #42

shanemcq18 opened this issue Aug 18, 2023 · 0 comments
Labels
enhancement New feature or request

Comments

@shanemcq18
Copy link
Member

shanemcq18 commented Aug 18, 2023

New feature: Shifted Operator Inference from the paper Predicting solar wind streams from the inner-heliosphere to Earth via shifted operator inference by Opal Issan (@opaliss) and Boris Kramer (@bokramer). This strategy shifts the state snapshots to a moving coordinate frame. In the paper, this is notated in Eq. (16),

$$\mathbf{u}_{i} \approx u(\mathbf{x},t_{i}) \mapsto \tilde{u}(\tilde{\mathbf{x}}(\mathbf{x}, t_{i}), t_{i}) \approx \tilde{\mathbf{u}}_{i}$$

where

$$\tilde{\mathbf{x}}(\mathbf{x},t) = \mathbf{x} + \mathbf{c}(t).$$

@opaliss will take the lead on this. Essentially this will involve writing a new transformer class, perhaps WaveshiftTransformer? See opinf.pre._shiftscale.ShiftScaleTransformer for another transformer to compare to. Implementation steps:

  • Create a new file in /src/opinf/pre/.
  • Define the class so it inherits from opinf.pre.TransformerTemplate and implements fit(), transform(), and inverse_transform().
  • Import the new class in /src/opinf/pre/__init__.py.
  • Write unit tests for the new class in a new file in /tests/pre/.
  • Compile the docs (make docs) and check that the automatically generated documentation page looks good.
  • If possible, demonstrate using the class in a new Jupyter notebook tutorial in docs/source/tutorials/.
@shanemcq18 shanemcq18 added the enhancement New feature or request label Aug 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Development

No branches or pull requests

1 participant