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

psrfits made by vcsbeam is affected more by RFI compared with vcstools #65

Closed
mengyaoxue opened this issue Nov 28, 2024 · 3 comments
Closed
Labels
wontfix This will not be worked on

Comments

@mengyaoxue
Copy link

mengyaoxue commented Nov 28, 2024

When I beamform toward the same pointing position using the same (legacy) data, the psrfits data products made by vcstools have higher quality compared with the psrfits made by vcsbeam (pulsars detections have higher presto sigma folded with the same ephemeris).
According to the example below, it seems that vcsbeam is affected more by RFI compared with vcstools. Not sure if that is because of the definition of 'scale' in

scale = (max - min) / 256.0; // (for 8-bit unsigned values)

compare

@robotopia
Copy link
Contributor

robotopia commented Nov 28, 2024

I think you are correct, @mengyaoxue . There is definitely a difference between the way the output values are clipped and scaled in VCSTools vs VCSBeam. If memory serves, in VCSTools, the max and min are set differently, possibly based on the standard deviation of the values (within a 1-second time frame), and as a result, abnormally large values get clipped. VCSBeam's output is "closer to the truth", which unfortunately means (impulsive) RFI is also more "truthfully" represented.

It might be worth adding an extra option to the beamformer to let the user decide on which strategy should be used for setting the max and min. It would be an easy way to mitigate strong RFI, but should only be used if the pulsar signal itself would not also get clipped. The max and min decision is made on a per (fine) channel basis.

@fxzjshm
Copy link
Contributor

fxzjshm commented Dec 2, 2024

For reference, the flatten bandpass code in VCSTools is here in flatten_bandpass_{I, C}_kernel, which appears to set mean intensity to 32 for each channel, if I understand it correctly.

@bwmeyers
Copy link
Contributor

bwmeyers commented Dec 6, 2024

So, for the moment, I think this is less of an issue w.r.t. RFI and more that VCSBeam more realistically represents the dynamic range of the data.

I'm labelling it as "wontfix" for the moment. Sammy's suggestion to add an option for how the normalisation/scaling is done is a good suggestion but nominally not on the critical path for VCSBeam development/maintenance.

@bwmeyers bwmeyers added the wontfix This will not be worked on label Dec 6, 2024
@bwmeyers bwmeyers closed this as not planned Won't fix, can't repro, duplicate, stale Jan 29, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
wontfix This will not be worked on
Projects
None yet
Development

No branches or pull requests

4 participants