-
Notifications
You must be signed in to change notification settings - Fork 8
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
fix: only add Trx bias to autocorr noise #212
Conversation
Note that this rough fix assumes that people using `sky_noise_jy` want to simulate noise for a cross-correlation.
See PR #212 for a description of the issue and implemented solution.
Codecov Report
@@ Coverage Diff @@
## main #212 +/- ##
==========================================
+ Coverage 96.48% 96.56% +0.07%
==========================================
Files 24 24
Lines 2792 2797 +5
==========================================
+ Hits 2694 2701 +7
+ Misses 98 96 -2
Continue to review full report at Codecov.
|
Posting an update to detail the problem and describe the solution I implemented. It was found that the Anyway, this turned out to be a somewhat deeper and more nuanced issue than I originally thought it was, so I would like @steven-murray to take a look, as well as @jsdillon. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This all looks good to me.
I will say that, in general, that the way this was all coded makes it very difficult to figure out what was passed into, for example, ThermalNoise.__init__()
. There's a tradeoff here between generality/extensibility and clarity and I worry we've gone too far toward the former two. Getting parameters as *args and **kwargs from inspecting class constructor signatures is clever, but I worry its a lot harder to follow than just passing things around explicitly. Anyway, no specific suggestions on this front for now, other than a vague suggestion for where this might go in the future.
Comment moved to #213 (comment) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @r-pascua this looks like a good idea for now.
I agree in principle with @jsdillon that it feels like we may have strayed too much in the direction of generality while sacrificing explicitness. I know we've discussed this before, and it's a tricky problem, but perhaps we can return to it for v3.
For now, this looks like it works and makes sense.
Thanks for the review and comments, everyone. I'm realizing that the level of generality here is coming across as more of a detriment on the development side, so I think it's worthwhile to see if we can figure out a better solution for v3. I think I'd like to open an issue or discussion on this topic and try to solicit community feedback, since I don't know really know what people want out of the code or what typical use cases outside are outside of the Validation stuff I do with it. I'll leave the PR open for a few more hours for potential responses to this comment. |
@r-pascua I think an issue would be a good idea. Might be useful to tag in the issue where we previously discussed this. It's not absolutely clear to me that the current framework is not explicit enough -- that might be my own unfamiliarity with the code rather than any deficiency in the code itself. But I think its worthwhile revisiting before a new major version. |
I've copied this comment over to #213 and removed this one |
Issue about generality and complexity is posted (#214). Merging and closing this PR now. |
This PR makes sure that autocorrelations only receive a receiver temperature bias when using the
ThermalNoise
class to simulate noise. This is exactly what we did for H1C IDR2 validation, but I forgot to transfer it over tohera_sim
.Edit: Many tests broke as a result of recent changes to
vis_cpu
. I've also fixed those tests in this PR.