Template_AT — Cube manipulation template.

This module defines the Template_AT class.

class admit.at.Template_AT.Template_AT(**keyval)[source]

Image cube manipulation sample template.

This task demonstrates several ways of manipulating a generic position-position-frequency (or velocity) data cube. It can be used as a template by users developing their own cube analysis routines. This template demonstrates the following transformations:

  • scale the intensity at all points in the cube by a specified value
  • extract a 2-D position-position image from the (scaled) cube at a specified frequency (channel number)
  • extract a 1-D spectrum from the (scaled) cube at the specified spatial position (pixel coordinates)

Each of these operations is controlled by keywords.

Keywords

cubescale: float
The value by which to scale the cube intensity; default: 2.0.
imgslice: int
Frequency (pixel index) of the 2-D image plane to extract from the cube; default: 0 (the first spectral channel).
specpos: 2-tuple of int
The 2-D (spatial) pixel position from which to extract the 1-D cube spectrum; default: (0,0).

Input BDPs

SpwCube_BDP: count: 1
Input 3-D data cube; e.g., as output from an Ingest_AT, ContinuumSub_AT or LineCube_AT.

Output BDPs

SpwCube_BDP: count: 1
Output scaled 3-D data cube.
Image_BDP: count: 1
Output 2-D image sliced from the cube.
Table_BDP: count: 1
Output 1-D spectrum extracted from the cube.
Parameters:

keyval : dict, optional

Dictionary of keyword:value pairs.

Notes

Whenever the expected type or number of keywords or input/output BDPs changes, the __init__ method must be updated accordingly.

Attributes

_version (str) Version ID string.

Methods

addinput(item[, slot]) Add a BDP input to an AT.
addinputbdp(item[, slot, insert]) Add a BDP to the _bdp_in list.
addoutput(item[, slot]) Add a BDP output product to an AT.
addoutputbdp(item[, slot, insert]) Add a BDP to the _bdp_out list.
baseDir([path]) Get/set project base directory.
bestMatch(at1, at2) Determines the better match of two tasks to the current one.
checkfiles() Check if the files from all the BDP_out’s in an AT exist.
checktype(item) Check the type of an object to see if it is a BDP.
clearinput() Clear the input BDP list.
clearoutput([delete]) Clear the output BDP list.
copy() Creates an independent duplicate of the task.
delete() Method to delete the AT and underlying BDPs.
delinput(slot) Delete a specific BDP in the _bdp_in list.
deloutput(slot) Delete a specific BDP in the _bdp_out list.
dir([filename]) Absolute directory reference of the ADMIT project.
dryrun() Method to do a dry run of the AT, generally just checks input values for errors.
enabled([state]) Returns current task enabled setting, with optional reset.
execute([args]) Executes the task.
freeAlias(aliases[, alias]) Deletes alias reservation, if present.
get(attrib) Method to get the given attributes value
getProject() Retrieves project ID associated with the task.
getVersion() Return the version string.
getdtd(fl) Method to write out the dtd data.
geteffectivelevel() Method to get the effective logging level of the logging subsystem
getkey(key) Retrieval value for a key.
getloggername() Method to get the name of the logger for this AT instance
getlogginglevel() Method to get the current logging level of the AT
haskey(key) Query if a key exists for an AT.
html(inheader) Method to represent the current AT in HTML format.
id([strip]) Returns task ID number.
isAutoAlias([withEmpty, compat]) Whether the task alias appears to be auto-generated.
isequal(at) Method to determine if two ATs are the same.
isstale() Returns whether the AT is out of date.
len2() Returns the length of _bdp_in and _bdp_out in a tuple.
link() Increments the task link count.
markChanged() Mark an AT that it’s state was changed, so it would need to be rerun.
markUpToDate() Resets _stale to indicate that the AT does not need to be run.
merge(at[, aliases]) Merges attributes from another task.
mkdir(dirname) Make a directory in the ADMIT hierarchy.
mkext(filename, ext[, alias]) Return a new filename with a new extension with optional ADMIT alias.
newId(tid) Assigns the task a new ID number.
reset(a) Performs an in-place shallow copy.
run() Task run method.
running([state]) Returns current task execution flag, with optional reset.
save() Save (write) any BDPs connected to this AT.
set(item, val) Method to set protected attributes, rather than direct access
setAlias(aliases[, alias, auto]) Sets and registers the task alias, guaranteed unique among registered aliases.
setProject(pid) Adds a project ID to task ID.
set_bdp_in([bdpin]) Validate the _valid_bdp_in list and digest it into the appropriate attributes.
set_bdp_out([bout]) Validate the _valid_bdp_out list and digest it into the appropriate attributes.
seteffectivelevel(level) Method to set the effective logging level of the logging subsystem
setkey([name, value, isinit]) Set keyword value.
setloggername(name) Method to set the name of the logger for this AT instance
setlogginglevel(level) Method to set the logging level
show() Return the AT type.
statusicons() return some html icons representing the enabled/stale status of this task
summary() Summary data dictionary.
unlink() Decrements the task link count.
userdata() User data dictionary.
validateinput([describe]) Method to validate the _bdp_in’s against a dictionary of expected types.
validatekeys() Method to error check all input keys.
write(node) Method to write the AT to disk.
run()[source]

Task run method.

Outputs three sample data products from a single input data cube:

  1. A cube scaled by the value of cubescale.
  2. An image sliced from the cube at frequency imgfreq.
  3. A spectrum extracted from the cube at position specpos.
Parameters:None
Returns:None
summary()[source]

Summary data dictionary.

Template_AT adds the following to ADMIT summary:

Key type Description
spectra list Plots of cube slice and spectrum.
template table Template data product statistics.
Parameters:

None

Returns:

dict

Dictionary of SummaryEntry

userdata()[source]

User data dictionary.

Parameters:

None

Returns:

dict

The user data dictionary from the AT, for merging into the ADMIT user data object.