Skip to content

Pixels below the horizon being passed into UVBeam #79

@nicholebarry

Description

@nicholebarry

Some pixels below the horizon are being passed to UVBeam. I've traced this back to line 184 in init_beam (ra_arr, dec_arr = pixel_to_radec(xvals_celestial, yvals_celestial, obs["astr"])). Some dec values that are created from this are a bit below the horizon, and thus should have been filled by nans instead of a value.

pixel_to_radec uses WCS to do the conversion. So perhaps something about the metadata is incorrect?

Here is the original error stack:

  File "/fred/oz048/nbarry/PyFHD/PyFHD/pyfhd.py", line 301, in main
    psf = create_psf(obs, pyfhd_config, logger)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/fred/oz048/nbarry/PyFHD/PyFHD/beam_setup/beam.py", line 54, in create_psf
    antenna, psf, beam = init_beam(obs, pyfhd_config, logger)
                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/fred/oz048/nbarry/PyFHD/PyFHD/beam_setup/antenna.py", line 240, in init_beam
    antenna["iresponse"], antenna["projection"] = general_jones_matrix(
                                                  ^^^^^^^^^^^^^^^^^^^^^
  File "/fred/oz048/nbarry/PyFHD/PyFHD/beam_setup/antenna.py", line 391, in general_jones_matrix
    f_vals = f_beam.compute_response(
             ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/fred/oz048/nbarry/software/pyuvdata/fhd_beam_decompose/lib/python3.11/site-packages/pyuvdata/beam_interface.py", line 306, in compute_response
    interp_data, _ = self.beam.interp(
                     ^^^^^^^^^^^^^^^^^
  File "/fred/oz048/nbarry/software/pyuvdata/fhd_beam_decompose/lib/python3.11/site-packages/pyuvdata/uvbeam/uvbeam.py", line 2636, in interp
    interp_arrays = getattr(self, interp_func)(
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/fred/oz048/nbarry/software/pyuvdata/fhd_beam_decompose/lib/python3.11/site-packages/pyuvdata/uvbeam/uvbeam.py", line 2029, in _interp_az_za_rect_spline
    self._check_interpolation_domain(az_array, za_array, phi_use, theta_use)
  File "/fred/oz048/nbarry/software/pyuvdata/fhd_beam_decompose/lib/python3.11/site-packages/pyuvdata/uvbeam/uvbeam.py", line 1824, in _check_interpolation_domain
    raise ValueError(
ValueError: at least one interpolation location is outside of the UVBeam pixel coverage. The zenith angles values are outside UVBeam coverage.```

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions