Coverage for /wheeldirectory/casa-6.7.0-12-py3.10.el8/lib/py/lib/python3.10/site-packages/casatasks/fixplanets.py: 100%
27 statements
« prev ^ index » next coverage.py v7.6.4, created at 2024-10-31 19:53 +0000
« prev ^ index » next coverage.py v7.6.4, created at 2024-10-31 19:53 +0000
1##################### generated by xml-casa (v2) from fixplanets.xml ################
2##################### 284ba2a1cc4b6c7ef2f46d6558118056 ##############################
3from __future__ import absolute_import
4import numpy
5from casatools.typecheck import CasaValidator as _val_ctor
6_pc = _val_ctor( )
7from casatools.coercetype import coerce as _coerce
8from casatools.errors import create_error_string
9from .private.task_fixplanets import fixplanets as _fixplanets_t
10from casatasks.private.task_logging import start_log as _start_log
11from casatasks.private.task_logging import end_log as _end_log
12from casatasks.private.task_logging import except_log as _except_log
14class _fixplanets:
15 """
16 fixplanets ---- Changes FIELD and SOURCE table entries based on user-provided direction or POINTING table, optionally fixes the UVW coordinates
19 This task's main purpose is to correct observations which were
20 performed with correct pointing and correlation but for which
21 incorrect direction information was entered in the FIELD and SOURCE
22 table of the MS. If you actually want to change the phase center of
23 the visibilties in an MS, you should use task fixvis.
25 --------- parameter descriptions ---------------------------------------------
27 vis Name of input visibility file
28 Default: none
30 Example: vis='ngc5921.ms'
31 field Select field using field id(s) or field name(s)
32 Default: '' (all fields)
34 Use 'go listobs' to obtain the list id's or
35 names. If field string is a non-negative integer,
36 it is assumed a field index, otherwise, it is
37 assumed a field name.
39 Examples:
40 field='0~2'; field ids 0,1,2
41 field='0,4,5~7'; field ids 0,4,5,6,7
42 field='3C286,3C295'; field named 3C286 and
43 3C295
44 field = '3,4C*'; field id 3, all names
45 starting with 4C
46 fixuvw Recalculate Fourier-plane u,v,w coordinates?
47 Default: False
48 Options: False|True
49 direction If set, do not use pointing table but set direction to
50 this value
51 Default: '' (use pointing table)
53 Example: 'J2000 19h30m00 -40d00m00'
55 The direction can either be given explicitly or
56 as the path to a JPL Horizons
57 ephemeris. Alternatively, the ephemeris table can
58 also be provided using getephemtable task. For more
59 information, see the task pages of fixplanets in
60 the CASA Docs.
61 refant Reference antenna name(s); a prioritized list may be
62 specified
63 Default: 0 (antenna ID 0)
65 Examples:
66 refant='4' (antenna with index 4)
67 refant='VA04' (VLA antenna #4)
68 refant='EA02,EA23,EA13' (EVLA antenna EA02,
69 use EA23 and EA13 as alternates if/when EA02
70 drops out)
72 Use taskname=listobs for antenna listing
73 reftime If using pointing table information, use it from this
74 timestamp
75 Default: 'first'
77 Examples:
78 * 'median' will use the median timestamp for
79 the given field using only the unflagged
80 maintable rows
81 * '2012/07/11/08:41:32' will use the given
82 timestamp (must be within the observaton
83 time)
85 --------- examples -----------------------------------------------------------
89 For more information, see the task pages of fixplanets in CASA Docs:
91 https://casa.nrao.edu/casadocs/
94 """
96 _info_group_ = """manipulation, calibration"""
97 _info_desc_ = """Changes FIELD and SOURCE table entries based on user-provided direction or POINTING table, optionally fixes the UVW coordinates"""
99 def __call__( self, vis='', field=[ ], fixuvw=False, direction='', refant=int(0), reftime='first' ):
100 schema = {'vis': {'type': 'cReqPath', 'coerce': _coerce.expand_path}, 'field': {'type': 'cVariant', 'coerce': [_coerce.to_variant]}, 'fixuvw': {'type': 'cBool'}, 'direction': {'type': 'cVariant', 'coerce': [_coerce.to_variant]}, 'refant': {'type': 'cVariant', 'coerce': [_coerce.to_variant]}, 'reftime': {'type': 'cStr', 'coerce': _coerce.to_str}}
101 doc = {'vis': vis, 'field': field, 'fixuvw': fixuvw, 'direction': direction, 'refant': refant, 'reftime': reftime}
102 assert _pc.validate(doc,schema), create_error_string(_pc.errors)
103 _logging_state_ = _start_log( 'fixplanets', [ 'vis=' + repr(_pc.document['vis']), 'field=' + repr(_pc.document['field']), 'fixuvw=' + repr(_pc.document['fixuvw']), 'direction=' + repr(_pc.document['direction']), 'refant=' + repr(_pc.document['refant']), 'reftime=' + repr(_pc.document['reftime']) ] )
104 task_result = None
105 try:
106 task_result = _fixplanets_t( _pc.document['vis'], _pc.document['field'], _pc.document['fixuvw'], _pc.document['direction'], _pc.document['refant'], _pc.document['reftime'] )
107 except Exception as exc:
108 _except_log('fixplanets', exc)
109 raise
110 finally:
111 task_result = _end_log( _logging_state_, 'fixplanets', task_result )
112 return task_result
114fixplanets = _fixplanets( )