Skip to content

Brute force method to find the optimal number of harmonics for WaveX, DMWaveX, and CMWaveX#1824

Open
abhisrkckl wants to merge 26 commits intonanograv:masterfrom
abhisrkckl:select-nharms
Open

Brute force method to find the optimal number of harmonics for WaveX, DMWaveX, and CMWaveX#1824
abhisrkckl wants to merge 26 commits intonanograv:masterfrom
abhisrkckl:select-nharms

Conversation

@abhisrkckl
Copy link
Contributor

@abhisrkckl abhisrkckl commented Aug 12, 2024

This method will be slow since this is brute force. I have some ideas for a faster version, but that will be in another PR.

This PR depends on #1802, so it should be merged before merging this.

@abhisrkckl abhisrkckl linked an issue Aug 13, 2024 that may be closed by this pull request
@abhisrkckl
Copy link
Contributor Author

Here is an example for achromatic red noise and DM noise
image

@abhisrkckl abhisrkckl changed the title WIP: Brute force method to find the optimal number of harmonics for WaveX, DMWaveX, and CMWaveX Brute force method to find the optimal number of harmonics for WaveX, DMWaveX, and CMWaveX Aug 14, 2024
@abhisrkckl abhisrkckl added the awaiting review This PR needs someone to review it so it can be merged label Aug 14, 2024
@codecov
Copy link

codecov bot commented Aug 16, 2024

Codecov Report

Attention: Patch coverage is 81.72324% with 70 lines in your changes missing coverage. Please review.

Project coverage is 69.70%. Comparing base (ad88a25) to head (8f43826).
Report is 46 commits behind head on master.

Files Patch % Lines
src/pint/utils.py 70.14% 14 Missing and 6 partials ⚠️
src/pint/models/cmwavex.py 88.34% 10 Missing and 9 partials ⚠️
src/pint/models/timing_model.py 76.05% 12 Missing and 5 partials ⚠️
src/pint/noise_analysis.py 82.50% 3 Missing and 11 partials ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #1824      +/-   ##
==========================================
+ Coverage   69.53%   69.70%   +0.16%     
==========================================
  Files         108      110       +2     
  Lines       25139    25407     +268     
  Branches     4458     4520      +62     
==========================================
+ Hits        17480    17709     +229     
- Misses       6547     6565      +18     
- Partials     1112     1133      +21     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@@ -10,3 +10,4 @@ uncertainties
loguru
nestle>=0.2.0
Copy link
Contributor

Choose a reason for hiding this comment

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

should we discuss having a new requirement more broadly? If this is only needed for a subset of tasks, should it be optional?

Copy link
Member

Choose a reason for hiding this comment

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

I'm personally fine with adding new requirements if the requirement is pure python and doesn't have a bunch of its own new requirements. nestle seems like it is of that (good) type.

Copy link
Contributor

Choose a reason for hiding this comment

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

I think this was actually adding joblib?

Copy link
Contributor

Choose a reason for hiding this comment

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

In particular, I wonder about how using joblib compares to the use of concurrent.futures? I see some discussion online. It seems like we might want to stick with one library for that functionality.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I will try concurrent.futures.

@abhisrkckl abhisrkckl removed the awaiting review This PR needs someone to review it so it can be merged label Jun 2, 2025
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.

Utility function for noise model selection

3 participants