HOME

TheInfoList



OR:

Astropy is a collection of software packages written in the
Python programming language Python is a high-level, general-purpose programming language. Its design philosophy emphasizes code readability with the use of significant indentation. Python is dynamically-typed and garbage-collected. It supports multiple programming p ...
and designed for use in
astronomy Astronomy () is a natural science that studies astronomical object, celestial objects and phenomena. It uses mathematics, physics, and chemistry in order to explain their origin and chronology of the Universe, evolution. Objects of interest ...
. The software is a single, free, core package for astronomical utilities due to the increasingly widespread usage of Python by
astronomer An astronomer is a scientist in the field of astronomy who focuses their studies on a specific question or field outside the scope of Earth. They observe astronomical objects such as stars, planets, natural satellite, moons, comets and galaxy, g ...
s, and to foster interoperability between various extant Python astronomy packages. Astropy is included in several large Python distributions; it is part of package managers for
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which ...
and
macOS macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and lapt ...
, the Anaconda Python Distribution,
Enthought Canopy Enthought, Inc. is a software company based in Austin, Texas, United States that develops scientific and analytic computing solutions using primarily the Python programming language. It is best known for the early development and maintenance of t ...
and Ureka.


Development

Around the turn of the millennium the
Space Telescope Science Institute The Space Telescope Science Institute (STScI) is the science operations center for the Hubble Space Telescope (HST), science operations and mission operations center for the James Webb Space Telescope (JWST), and science operations center for the ...
(STScI) started development of Python-based utilities to extend or substitute existing astronomical data analysis tools on a modern,
object-oriented Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of pro ...
platform. Among the first projects were a replacement of the command language for the Image Reduction and Analysis Facility ( IRAF) with a Python frontend, and the PyFITS interface to the Flexible Image Transport System. Since the existing ''Numeric'' module for handling vectors and arrays in Python turned out to be inadequate for large astronomical datasets, a new library better tuned for large array sizes was subsequently developed at STScI. Both libraries were merged into a new array package by
Travis Oliphant Travis Oliphant is an American data scientist and businessman. He is a co-founder of NumFOCUS, 501(c)(3) nonprofit charity in the United States, and sits on its advisory board. He is also a founder of technology startup Anaconda (''previously ...
in 2005–2006, creating NumPy, now the de facto standard for numerical data handling in Python. In the following years the existing software packages maintained by STScI as part of their stsci_python suite were ported to NumPy as well. This, together with the more extensive
SciPy SciPy (pronounced "sigh pie") is a free and open-source Python library used for scientific computing and technical computing. SciPy contains modules for optimization, linear algebra, integration, interpolation, special functions, FFT, ...
computing environment, provided a platform to develop customized scripts and applications for a variety of astronomical tasks. By 2011, the use of Python in astronomy had reached significant levels. At the 2012 .Astronomy meeting, 42% of attendees preferred
Python Python may refer to: Snakes * Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia ** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia * Python (mythology), a mythical serpent Computing * Python (pro ...
according to an informal survey. Many astronomy-related Python packages have been developed over the years, albeit without cooperation or coordination, which led to duplication and difficult interoperability between packages. There was also no easy way install all the required packages needed in an astronomer’s toolkit. A number of smaller packages are sometimes no longer maintained or unavailable. The Astropy project started in 2011, motivated by these difficulties, and a desire to unite developers in astronomy to coordinate the development of a unified set of Python modules for astronomers, and reduce the confusion of available packages. The Space Telescope Science Institute, operators of the
Hubble Space Telescope The Hubble Space Telescope (often referred to as HST or Hubble) is a space telescope that was launched into low Earth orbit in 1990 and remains in operation. It was not the first space telescope, but it is one of the largest and most versa ...
, are merging the work on Astropy into stsci_python releases. PyFITS and PyWCS will be maintained solely within Astropy, with separate releases of these packages stopping, after the next release. PyFITS has been included as part of the Astropy project, and as a result, the next release of STScI_Python will depend on Astropy for the PyFITS library instead of using this standalone release.


Use

* The National Virtual Observatory Python integration includes support for the Astropy VOTable class * The Subaru Telescope Hyper Suprime-Cam, a 900-megapixel ultra-wide-field camera * A data mining toolkit for exploring large data cubes in radioastronomy from facilities like
ALMA Alma or ALMA may refer to: Arts and entertainment * ''Alma'' (film), a 2009 Spanish short animated film * ''Alma'' (Oswald de Andrade novel), 1922 * ''Alma'' (Le Clézio novel), 2017 * ''Alma'' (play), a 1996 drama by Joshua Sobol about Alma ...
or CARMA. * pcigale, the port to Python o
CIGALE
(Code Investigating Galaxy Emission) * Analyzing the optical afterglow of
gamma-ray burst In gamma-ray astronomy, gamma-ray bursts (GRBs) are immensely energetic explosions that have been observed in distant galaxies. They are the most energetic and luminous electromagnetic events since the Big Bang. Bursts can last from ten milli ...
s * The
High Energy Astrophysics Science Archive Research Center The Goddard Space Flight Center (GSFC) is a major NASA space research laboratory located approximately northeast of Washington, D.C. in Greenbelt, Maryland, United States. Established on May 1, 1959 as NASA's first space flight center, GSFC empl ...
(HEASARC) refers to Astropy as "A single core package for Astronomy in Python" * Projec
PANOPTES
"makes extensive use of the Astropy package" * Astropy has been accepted to th
Astrophysics Source Code Library – Starship Asterisk*


Video sources

There are several videos recorded in seminars and conferences. These are intended to help beginners learn how Astropy works. The .Astronomy 4 meeting (9–11 July 2012) held a session on Astropy.


Core functionality

Core data structures and operations * Generalized container classes for representing gridded and tabular data as multidimensional arrays or tables * Unit and physical quantity conversions * Physical constants specific to astronomy *
Celestial coordinate Astronomical coordinate systems are organized arrangements for specifying positions of satellites, planets, stars, galaxies, and other celestial objects relative to physical reference points available to a situated observer (e.g. the true horizon ...
and time transformations * World coordinate system (WCS) support, implementing PyWCS, the Python wrapper to WCSLIB. WCSLIB is a C library which implements the WCS standard in the Flexible Image Transport System (FITS) standard. File I/O * FITS files, implementing the former standalone PyFITS interface * Virtual Observatory (VO) tables * Common
ASCII ASCII ( ), abbreviated from American Standard Code for Information Interchange, is a character encoding standard for electronic communication. ASCII codes represent text in computers, telecommunications equipment, and other devices. Because of ...
table formats, e.g. for online catalogues or data supplements of scientific publications *
Hierarchical Data Format Hierarchical Data Format (HDF) is a set of file formats (HDF4, HDF5) designed to store and organize large amounts of data. Originally developed at the U.S. National Center for Supercomputing Applications, it is supported by The HDF Group, a non-p ...
(HDF5) files Computational utilities * Framework for
cosmological Cosmology () is a branch of physics and metaphysics dealing with the nature of the universe. The term ''cosmology'' was first used in English in 1656 in Thomas Blount's ''Glossographia'', and in 1731 taken up in Latin by German philosopher ...
transformations and conversions * Toolset for statistical analyses


Affiliated packages

A major part of the Astropy project is the concept of "affiliated packages”. An affiliated package is an astronomy-related Python package that is not part of the astropy core but has been suggested for inclusion as part of the project’s community. Such packages are intended to improve reuse, interoperability, and interface standards for Python astronomy and astrophysics packages. Current affiliated packages include: * montage-wrapper * ginga * APLpy * astroML: tools for
machine learning Machine learning (ML) is a field of inquiry devoted to understanding and building methods that 'learn', that is, methods that leverage data to improve performance on some set of tasks. It is seen as a part of artificial intelligence. Machine ...
and data mining in astronomy * Astropysics: library of IDL astronomy routines converted to Python. * astroplan: observation planning for astronomers A few additional affiliated packages are currently in development, including: * photutils:
photometry Photometry can refer to: * Photometry (optics), the science of measurement of visible light in terms of its perceived brightness to human vision * Photometry (astronomy), the measurement of the flux or intensity of an astronomical object's electro ...
tools * astroquery: online
database In computing, a database is an organized collection of data stored and accessed electronically. Small databases can be stored on a file system, while large databases are hosted on computer clusters or cloud storage. The design of databases sp ...
querying * specutils:
spectroscopic Spectroscopy is the field of study that measures and interprets the electromagnetic spectra that result from the interaction between electromagnetic radiation and matter as a function of the wavelength or frequency of the radiation. Matter wa ...
analysis utilities * kcorrect: Python bindings to kcorrect code of Blanton et al. 2007 * gammapy: A high level
gamma-ray astronomy Gamma-ray astronomy is the astronomical observation of gamma rays,Astronomical literature generally hyphenates "gamma-ray" when used as an adjective, but uses "gamma ray" without a hyphen for the noun. the most energetic form of electromagneti ...
data analysis package


See also

*
List of numerical analysis software Listed here are notable end-user computer applications intended for use with numerical or data analysis: Numerical-software packages General-purpose computer algebra systems Interface-oriented Language-oriented Historically signific ...
*
Planetarium software Planetarium software is application software that allows a user to simulate the celestial sphere at any time of day, especially at night, on a computer. Such applications can be as rudimentary as displaying a star chart or sky map for a specific t ...
* List of observatory software


References


External links

*
GitHub repository

Scipy2013 presentation video

ADASS Poster abstract





Publications

Books and scientific publications citing Astropy * * * {{DEFAULTSORT:Astropy Free astronomy software Free software programmed in Python Numerical analysis software for Linux Numerical analysis software for macOS Numerical analysis software for Windows Python (programming language) scientific libraries Software using the BSD license