Simutil.py: Difference between revisions

From CASA Guides
Jump to navigationJump to search
(Created page with 'The python utility is called simutil.py, and is located in a scripts directory of your installation. CASA <> execfile(".../simutil.py") CASA <> util=simutil() CASA <> util<TAB…')
 
No edit summary
 
(10 intermediate revisions by 3 users not shown)
Line 1: Line 1:
The python utility is called simutil.py, and is located in a scripts directory of your installation.
{{Simulations Intro 4.0}}
 
The python utility is called simutil.py, and is located in a scripts directory of your CASA installation.
  CASA <> execfile(".../simutil.py")
  CASA <> execfile(".../simutil.py")
  CASA <> util=simutil()
  CASA <> util=simutil()
Line 5: Line 7:


Methods:
Methods:
* average_direction(directions) Returns the average of directions as a string, and relative offsets
; simutil.average_direction(directions) : Returns the average of directions as a string, and relative offsets
*
; simutil.calc_pointings(spacing, imsize, cell, direction=None, relmargin=0.5)
: If direction is a list, simply returns direction and the number of pointings in it.  Otherwise, returns a hexagonally packed list of pointings separated by spacing and fitting inside an image specified by direction, imsize and cell, and the number of pointings.  The hexagonal packing starts with a horizontal row centered on direction, and the other rows alternate being horizontally offset by a half spacing.  All of the pointings will be within a rectangle relmargin * spacing smaller than the image on all sides.
; simutil.ephemeris(date, direction=None, telescope=None)
: calculate the elevation of a source on a date, in a direction, seen from a telescope
; simutil.irtf2loc(x, y, z, cx, cy, cz)
: convert ITRF earth-centered xyz coordinates to offsets in the local tangent plane offsets from the center of the array cx,cy,cx
; simutil.locxyz2itrf(latitude, longitude, locx=0.0, locy=0.0, locz=0.0)
: Returns the nominal ITRF (X, Y, Z) coordinates (m) for a point at "local" (x, y, z) (m) measured at geodetic latitude lat and longitude longitude (degrees).  The ITRF frame used is not the official ITRF, just a right handed Cartesian system with X going through 0 latitude and 0 longitude, and Z going through the north pole.  The "local" (x, y, z) are measured relative to the closest point to (lat, longitude) on the WGS84 reference ellipsoid, with z normal to the ellipsoid and y pointing north.
; simutil.long2xyz(long, lat, elevation, datum)
: convert geodetic longitude latitude, and elevation (relative to the geoid of specified datum) to earth-centered x,y,z
; simutil.xyz2long(x, y, z, datum) : convert earth-centered x,y,z to geodetic latitude and longitude
; simutil.utm2xyz(easting, northing, elevation, zone, datum, nors) : convert UTM coordinates to x,y,z earth-centered
; simutil.utm2long(east, north, zone, datum, nors)
: convert universal transverse meractor coordinates to geodetic longitude/latitude (see <tt>help simutil.utm2long</tt> for more details
; simutil.readantenna(antab=None) : read an antenna configuration file (and perform necessary geodetic conversions)
; simutil.noisetemp(telescope=None, freq=None, diam=None, epsilon=None)
: look up receiver temperature, antenna efficiencies, etc for known telescopes
; simutil.plotants(x, y, z, d, name)
: a prettier plotants than CASA native, including antenna diameter and pad name (e.g. for compact arrays, the antennas will be plotted with actual sizes to scale)
; simutil.statim(image, plot=True, incell=None)
: plot image and return and overplot statistics
 
 
For more detailed examples, find the python script for the <tt>simdata</tt> task, which is a file called <tt>task_simdata.py</tt> in your distribution.

Latest revision as of 15:53, 7 November 2012

Simulating Observations in CASA

The python utility is called simutil.py, and is located in a scripts directory of your CASA installation.

CASA <> execfile(".../simutil.py")
CASA <> util=simutil()
CASA <> util<TAB>

Methods:

simutil.average_direction(directions)
Returns the average of directions as a string, and relative offsets
simutil.calc_pointings(spacing, imsize, cell, direction=None, relmargin=0.5)
If direction is a list, simply returns direction and the number of pointings in it. Otherwise, returns a hexagonally packed list of pointings separated by spacing and fitting inside an image specified by direction, imsize and cell, and the number of pointings. The hexagonal packing starts with a horizontal row centered on direction, and the other rows alternate being horizontally offset by a half spacing. All of the pointings will be within a rectangle relmargin * spacing smaller than the image on all sides.
simutil.ephemeris(date, direction=None, telescope=None)
calculate the elevation of a source on a date, in a direction, seen from a telescope
simutil.irtf2loc(x, y, z, cx, cy, cz)
convert ITRF earth-centered xyz coordinates to offsets in the local tangent plane offsets from the center of the array cx,cy,cx
simutil.locxyz2itrf(latitude, longitude, locx=0.0, locy=0.0, locz=0.0)
Returns the nominal ITRF (X, Y, Z) coordinates (m) for a point at "local" (x, y, z) (m) measured at geodetic latitude lat and longitude longitude (degrees). The ITRF frame used is not the official ITRF, just a right handed Cartesian system with X going through 0 latitude and 0 longitude, and Z going through the north pole. The "local" (x, y, z) are measured relative to the closest point to (lat, longitude) on the WGS84 reference ellipsoid, with z normal to the ellipsoid and y pointing north.
simutil.long2xyz(long, lat, elevation, datum)
convert geodetic longitude latitude, and elevation (relative to the geoid of specified datum) to earth-centered x,y,z
simutil.xyz2long(x, y, z, datum)
convert earth-centered x,y,z to geodetic latitude and longitude
simutil.utm2xyz(easting, northing, elevation, zone, datum, nors)
convert UTM coordinates to x,y,z earth-centered
simutil.utm2long(east, north, zone, datum, nors)
convert universal transverse meractor coordinates to geodetic longitude/latitude (see help simutil.utm2long for more details
simutil.readantenna(antab=None)
read an antenna configuration file (and perform necessary geodetic conversions)
simutil.noisetemp(telescope=None, freq=None, diam=None, epsilon=None)
look up receiver temperature, antenna efficiencies, etc for known telescopes
simutil.plotants(x, y, z, d, name)
a prettier plotants than CASA native, including antenna diameter and pad name (e.g. for compact arrays, the antennas will be plotted with actual sizes to scale)
simutil.statim(image, plot=True, incell=None)
plot image and return and overplot statistics


For more detailed examples, find the python script for the simdata task, which is a file called task_simdata.py in your distribution.