You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm running into precision issues for images that are in the 0.01" resolution regime (ALMA, JWST, etc.). Here is a minimal example to reproduce. First, generate test images with the following Python code:
(I could also have used the Python API but just doing it the simplest way to minimize any potential issues)
Finally, check the results in Python - as the resolution has changed by a factor of 3, the total flux in the image should be changed by a factor of 9, so the following should return 1:
The result for the low resolution is as expected, but for the high resolution is significantly wrong (and diverges fast as the resolution is lowered further).
I tried to dig into the C code but I couldn't determine what might be going wrong. All the calculations are done in double precision but there must be some loss of precision in one of the calculations.
The text was updated successfully, but these errors were encountered:
I'm running into precision issues for images that are in the 0.01" resolution regime (ALMA, JWST, etc.). Here is a minimal example to reproduce. First, generate test images with the following Python code:
then run Montage with e.g.:
#!/bin/bash Montage/bin/mGetHdr data2_high.fits header2_high.hdr Montage/bin/mProject data1_high.fits data3_high.fits header2_high.hdr Montage/bin/mGetHdr data2_low.fits header2_low.hdr Montage/bin/mProject data1_low.fits data3_low.fits header2_low.hdr
(I could also have used the Python API but just doing it the simplest way to minimize any potential issues)
Finally, check the results in Python - as the resolution has changed by a factor of 3, the total flux in the image should be changed by a factor of 9, so the following should return 1:
However, this gives:
The result for the low resolution is as expected, but for the high resolution is significantly wrong (and diverges fast as the resolution is lowered further).
I tried to dig into the C code but I couldn't determine what might be going wrong. All the calculations are done in double precision but there must be some loss of precision in one of the calculations.
The text was updated successfully, but these errors were encountered: