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

Add a PeriodogramCollection object #1323

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

Conversation

ojhall94
Copy link
Contributor

@ojhall94 ojhall94 commented May 1, 2023

There are established use cases where a PeriodogramCollection may be useful. These are, for example:

  • Averaging the power spectra of time-separated sectors of TESS data to avoid aliasing
  • Studying signals of variability independently in time separated sectors of TESS data (i.e. looking at spot rotation).
  • Separately treating periodograms of light cuves of the same target with different exposure times (i.e. stars observed by Kepler and TESS, stars observed in TESS FFIs across the extended mission).

A PeriodogramCollection can be established by a user passing in a list of lightkurve.Periodogram objects, or by using the function lightkurve.LightCurveCollection.to_periodograms(**kwargs), which passes all the keyword arguments of lightcurve.to_periodogram().

An important discussion point is how to combine consecutive sectors of Kepler and TESS data, and whether to do that by default. Maybe there should be a LightCurveCollection.partial_stitch() method?

To do:

  • Build PeriodogramCollection.flatten() function
  • Build PeriodogramCollection.normalize() function
  • Build PeriodogramCollection.average() function
  • Build unit tests
  • Establish workflow for partial stitching of light curves
  • Build code into LightCurveCollection to partially stitch light curves.

@christinahedges
Copy link
Collaborator

This is really awesome! Can't wait to see how this evolves. @ojhall94 what do you envision partial stitching might be?

@christinahedges christinahedges added the 💪 WIP This is a work in progress! label May 1, 2023
@ojhall94
Copy link
Contributor Author

ojhall94 commented May 1, 2023

This is really awesome! Can't wait to see how this evolves. @ojhall94 what do you envision partial stitching might be?

So, when I've worked with TESS LCs in the past I've just stitched any sectors that were consecutive and treated those as independent light curves, so I think that would be a sensible place to start. I'm not sure if "partial stitch" is the right phrasing for that kind of behaviour though. Perhaps implementing a split() function would allow for more bespoke manipulation of the light curves for power users?

@ojhall94
Copy link
Contributor Author

ojhall94 commented May 2, 2023

Averaging periodograms requires them to be on the same grid of frequencies, which at the moment isn't working well! I'm not sure if this is a deeper periodogram issue or not. At some point I'd like to figure this out!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
💪 WIP This is a work in progress!
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants