XMM-Newton SAS Home Page
XMM-Newton Science Analysis System


ssclib (ssclib-4.36.1) [xmmsas_20230412_1735-21.0.0]


tanToInst

  interface tanToInst
    subroutine tanToInstScalar(tanX, tanY, refRaDeg, refDecDeg, scAttitude&
      , timeStamp, detX, detY, thetaArcsec, phi)

      real(double),                 intent(in)  :: refRaDeg,&
                                                   refDecDeg,&
                                                   tanX,&
                                                   tanY
      type(SpacecraftAttitudeType), intent(in)  :: scAttitude
      real(double),                 intent(in)  :: timeStamp
      real(single),      optional,  intent(out) :: detX,&
                                                   detY
      real(double),      optional,  intent(out) :: thetaArcsec,&
                                                   phi
    end subroutine tanToInstScalar

    subroutine tanToInstVector(tanX, tanY, refRaDeg, refDecDeg, scAttitude&
      , timeStamp, detX, detY, thetaArcsec, phi)

      real(double),                 intent(in)  :: refRaDeg,&
                                                   refDecDeg,&
                                                   tanX(:),&
                                                   tanY(size(tanX))
      type(SpacecraftAttitudeType), intent(in)  :: scAttitude
      real(double),                 intent(in)  :: timeStamp
      real(single),      optional,  intent(out) :: detX(size(tanX)),&
                                                   detY(size(tanX))
      real(double),      optional,  intent(out) :: thetaArcsec(size(tanX)),&
                                                   phi(size(tanX))
    end subroutine tanToInstVector

    subroutine tanToInstArray(tanX, tanY, refRaDeg, refDecDeg, scAttitude&
      , timeStamp, detX, detY, thetaArcsec, phi)

      real(double),                 intent(in)  :: refRaDeg,&
                                                   refDecDeg,&
                                                   tanX(:,:),&
                                                   tanY(size(tanX,1),&
                                                        size(tanX,2))
      type(SpacecraftAttitudeType), intent(in)  :: scAttitude
      real(double),                 intent(in)  :: timeStamp
      real(single),      optional,  intent(out) :: detX(size(tanX,1),&
                                                        size(tanX,2)),&
                                                   detY(size(tanX,1),&
                                                        size(tanX,2))
      real(double),      optional,  intent(out) :: thetaArcsec(size(tanX,1),&
                                                               size(tanX,2)),&
                                                   phi(size(tanX,1),&
                                                       size(tanX,2))
    end subroutine tanToInstArray
  end interface

Effectively this is just tanToRaDec (section [*]) followed by raDecToInst (section [*]).

NOTE this function requires the cal to have been set to the correct instrument before the call.



XMM-Newton SOC -- 2023-04-16