ism3d.arts.utils.pix2sky

ism3d.arts.utils.pix2sky(obj, w, px=None, py=None, pz=None)[source]

convert pixel index (zero-based) to the reference model coordinate system

for line emission “cloudlet” objects:

the sky-projected rest-frame galactic coodrinates, which is centered around the object xypos) z = LOS

for continuume emission “cloudlet” objects:

spatial-wise the sky-projected rest-frame galactic coodrinates, which is centered around the object xypos) spectral-wise, sky-or-rest-frame wavelength or frequency

“sky-frame” could be (angular,angular,velocity) or (distance,distance,velocity) while typically the sky-frame is defined in angular units; if the sky frame is defined in length the angular seperation will be converted to physical angular size. the object redshift is required

We assume:

inverse-RA (and pixel-x) aligns along with x DEC (and pixel-y) aligns along with y

The functin dosn’t consider pixel rotation at this moment

Essentially, we transfer:

ModelRef_origin->World->pix: Then map pix index back to ModelRef Vec

mxo,myo,mzo: the origin of the reference model

for cloudlet3d models: (kpc,kpc,km/s) for cloudlet2d models: (kpc,kpc,Hz)