[yt-svn] commit/yt: 4 new changesets
commits-noreply at bitbucket.org
commits-noreply at bitbucket.org
Tue Jan 31 10:09:37 PST 2017
4 new commits in yt:
https://bitbucket.org/yt_analysis/yt/commits/44462aca88cd/
Changeset: 44462aca88cd
Branch: yt
User: ngoldbaum
Date: 2017-01-27 17:27:43+00:00
Summary: Fixing doc formatting errors
Affected #: 5 files
diff -r a5a82c6c5bc71020c97f55722cee22115bf452af -r 44462aca88cd3ee9a5ea1766d473f9708b33793a doc/source/analyzing/analysis_modules/synthetic_observation.rst
--- a/doc/source/analyzing/analysis_modules/synthetic_observation.rst
+++ b/doc/source/analyzing/analysis_modules/synthetic_observation.rst
@@ -14,7 +14,6 @@
planning_cosmology_simulations
absorption_spectrum
star_analysis
- xray_emission_fields
sunyaev_zeldovich
photon_simulator
ppv_cubes
diff -r a5a82c6c5bc71020c97f55722cee22115bf452af -r 44462aca88cd3ee9a5ea1766d473f9708b33793a doc/source/analyzing/index.rst
--- a/doc/source/analyzing/index.rst
+++ b/doc/source/analyzing/index.rst
@@ -23,3 +23,4 @@
saving_data
time_series_analysis
parallel_computation
+ xray_emission_fields
diff -r a5a82c6c5bc71020c97f55722cee22115bf452af -r 44462aca88cd3ee9a5ea1766d473f9708b33793a doc/source/examining/loading_data.rst
--- a/doc/source/examining/loading_data.rst
+++ b/doc/source/examining/loading_data.rst
@@ -1603,7 +1603,7 @@
.. _loading-openpmd-data:
openPMD Data
----------
+------------
`openPMD <http://www.openpmd.org>`_ is an open source meta-standard and naming
scheme for mesh based data and particle data. It does not actually define a file
diff -r a5a82c6c5bc71020c97f55722cee22115bf452af -r 44462aca88cd3ee9a5ea1766d473f9708b33793a yt/frontends/open_pmd/fields.py
--- a/yt/frontends/open_pmd/fields.py
+++ b/yt/frontends/open_pmd/fields.py
@@ -98,36 +98,39 @@
class OpenPMDFieldInfo(FieldInfoContainer):
"""Specifies which fields from the dataset yt should know about.
- ``self.known_other_fields`` and ``self.known_particle_fields`` must be populated.
- Entries for both of these lists must be tuples of the form
- ("name", ("units", ["fields", "to", "alias"], "display_name"))
- These fields will be represented and handled in yt in the way you define them here.
- The fields defined in both ``self.known_other_fields`` and ``self.known_particle_fields`` will only be added
- to a dataset (with units, aliases, etc), if they match any entry in the ``OpenPMDHierarchy``'s ``self.field_list``.
+ ``self.known_other_fields`` and ``self.known_particle_fields`` must be
+ populated. Entries for both of these lists must be tuples of the form
+ ``("name", ("units", ["fields", "to", "alias"], "display_name"))``. These
+ fields will be represented and handled in yt in the way you define them
+ here. The fields defined in both ``self.known_other_fields`` and
+ ``self.known_particle_fields`` will only be added to a dataset (with units,
+ aliases, etc), if they match any entry in the ``OpenPMDHierarchy``'s
+ ``self.field_list``.
Notes
-----
- Contrary to many other frontends, we dynamically obtain the known fields from the simulation output.
- The openPMD markup is extremely flexible - names, dimensions and the number of individual datasets
- can (and very likely will) vary.
+ Contrary to many other frontends, we dynamically obtain the known fields
+ from the simulation output. The openPMD markup is extremely flexible -
+ names, dimensions and the number of individual datasets can (and very likely
+ will) vary.
- openPMD states that names of records and their components are only allowed to contain the
- characters a-Z,
- the numbers 0-9
- and the underscore _
- (equivalently, the regex \w).
- Since yt widely uses the underscore in field names, openPMD's underscores (_) are replaced by hyphen (-).
+ openPMD states that names of records and their components are only allowed
+ to contain the characters ``a-Z``, the numbers ``0-9`` and the underscore
+ ``_`` (equivalently, the regex ``\w``). Since yt widely uses the underscore
+ in field names, openPMD's underscores (``_``) are replaced by hyphen
+ (``-``).
- Derived fields will automatically be set up, if names and units of your known on-disk (or manually derived)
- fields match the ones in [1].
+ Derived fields will automatically be set up, if names and units of your
+ known on-disk (or manually derived) fields match the ones in the list of
+ yt "universal" fields.
References
----------
- .. http://yt-project.org/docs/dev/analyzing/fields.html
- .. http://yt-project.org/docs/dev/developing/creating_frontend.html#data-meaning-structures
- .. https://github.com/openPMD/openPMD-standard/blob/latest/STANDARD.md
- .. [1] http://yt-project.org/docs/dev/reference/field_list.html#universal-fields
+ * http://yt-project.org/docs/dev/analyzing/fields.html
+ * http://yt-project.org/docs/dev/developing/creating_frontend.html#data-meaning-structures
+ * https://github.com/openPMD/openPMD-standard/blob/latest/STANDARD.md
+
"""
_mag_fields = []
diff -r a5a82c6c5bc71020c97f55722cee22115bf452af -r 44462aca88cd3ee9a5ea1766d473f9708b33793a yt/visualization/plot_window.py
--- a/yt/visualization/plot_window.py
+++ b/yt/visualization/plot_window.py
@@ -156,9 +156,9 @@
Parameters
----------
- or :class:`yt.data_objects.selection_data_containers.YTSlice`
- This is the source to be pixelized, which can be a projection or a
- slice or a cutting plane.
+ data_source : subclass of :class:`yt.data_objects.selection_data_containers.YTSelectionContainer2D`
+ This is the source to be pixelized, which can be a projection,
+ slice, or a cutting plane.
bounds : sequence of floats
Bounds are the min and max in the image plane that we want our
image to cover. It's in the order of (xmin, xmax, ymin, ymax),
@@ -444,7 +444,7 @@
('{yloc}', '{xloc}', '{space}') ('lower', 'right', 'window')
((yloc, '{unit}'), (xloc, '{unit}'), '{space}') ((0.5, 'm'), (0.4, 'm'), 'window')
(xloc, yloc, '{space}') (0.23, 0.5, 'domain')
- ================================== ============================
+ ================================== ===========================
"""
self.origin = origin
@@ -1268,7 +1268,7 @@
('{yloc}', '{xloc}', '{space}') ('lower', 'right', 'window')
((yloc, '{unit}'), (xloc, '{unit}'), '{space}') ((0.5, 'm'), (0.4, 'm'), 'window')
(xloc, yloc, '{space}') (0.23, 0.5, 'domain')
- ================================== ============================
+ ================================== ===========================
axes_unit : A string
The name of the unit for the tick labels on the x and y axes.
Defaults to None, which automatically picks an appropriate unit.
@@ -1423,7 +1423,7 @@
('{yloc}', '{xloc}', '{space}') ('lower', 'right', 'window')
((yloc, '{unit}'), (xloc, '{unit}'), '{space}') ((0.5, 'm'), (0.4, 'm'), 'window')
(xloc, yloc, '{space}') (0.23, 0.5, 'domain')
- ================================== ============================
+ ================================== ===========================
right_handed : boolean
Whether the implicit east vector for the image generated is set to make a right
@@ -1943,7 +1943,7 @@
('{yloc}', '{xloc}', '{space}') ('lower', 'right', 'window')
((yloc, '{unit}'), (xloc, '{unit}'), '{space}') ((0.5, 'm'), (0.4, 'm'), 'window')
(xloc, yloc, '{space}') (0.23, 0.5, 'domain')
- ================================== ============================
+ ================================== ===========================
north_vector : a sequence of floats
A vector defining the 'up' direction in the `OffAxisSlicePlot`; not
used in `AxisAlignedSlicePlot`. This option sets the orientation of the
https://bitbucket.org/yt_analysis/yt/commits/b18b7fcbbaf0/
Changeset: b18b7fcbbaf0
Branch: yt
User: ngoldbaum
Date: 2017-01-27 18:20:27+00:00
Summary: fix intersphinx link for matplotlib
Affected #: 1 file
diff -r 44462aca88cd3ee9a5ea1766d473f9708b33793a -r b18b7fcbbaf03295aca41c9a33ea405c4a3b26e5 doc/source/conf.py
--- a/doc/source/conf.py
+++ b/doc/source/conf.py
@@ -256,7 +256,7 @@
intersphinx_mapping = {'http://docs.python.org/': None,
'http://ipython.org/ipython-doc/stable/': None,
'http://docs.scipy.org/doc/numpy/': None,
- 'http://matplotlib.sourceforge.net/': None,
+ 'http://matplotlib.org/': None,
}
if not on_rtd:
https://bitbucket.org/yt_analysis/yt/commits/d5cc37fe5d06/
Changeset: d5cc37fe5d06
Branch: yt
User: ngoldbaum
Date: 2017-01-27 23:07:11+00:00
Summary: move xray_emission_fields back to analysis modules for now
Affected #: 6 files
diff -r b18b7fcbbaf03295aca41c9a33ea405c4a3b26e5 -r d5cc37fe5d06c79e35f3d40396aaac33c17f155a doc/source/analyzing/XrayEmissionFields.ipynb
--- a/doc/source/analyzing/XrayEmissionFields.ipynb
+++ /dev/null
@@ -1,220 +0,0 @@
-{
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "> Note: If you came here trying to figure out how to create simulated X-ray photons and observations,\n",
- " you should go [here](analysis_modules/photon_simulator.html) instead."
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "This functionality provides the ability to create metallicity-dependent X-ray luminosity, emissivity, and photon emissivity fields for a given photon energy range. This works by interpolating from emission tables created from the photoionization code [Cloudy](http://nublado.org/) or the collisional ionization database [AtomDB](http://www.atomdb.org). These can be downloaded from http://yt-project.org/data from the command line like so:\n",
- "\n",
- "`# Put the data in a directory you specify` \n",
- "`yt download cloudy_emissivity_v2.h5 /path/to/data`\n",
- "\n",
- "`# Put the data in the location set by \"supp_data_dir\"` \n",
- "`yt download apec_emissivity_v2.h5 supp_data_dir`\n",
- "\n",
- "The data path can be a directory on disk, or it can be \"supp_data_dir\", which will download the data to the directory specified by the `\"supp_data_dir\"` yt configuration entry. It is easiest to put these files in the directory from which you will be running yt or `\"supp_data_dir\"`, but see the note below about putting them in alternate locations."
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "Emission fields can be made for any energy interval between 0.1 keV and 100 keV, and will always be created for luminosity $(\\rm{erg~s^{-1}})$, emissivity $\\rm{(erg~s^{-1}~cm^{-3})}$, and photon emissivity $\\rm{(photons~s^{-1}~cm^{-3})}$. The only required arguments are the\n",
- "dataset object, and the minimum and maximum energies of the energy band. However, typically one needs to decide what will be used for the metallicity. This can either be a floating-point value representing a spatially constant metallicity, or a prescription for a metallicity field, e.g. `(\"gas\", \"metallicity\")`. For this first example, where the dataset has no metallicity field, we'll just assume $Z = 0.3~Z_\\odot$ everywhere:"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {
- "collapsed": false,
- "scrolled": false
- },
- "outputs": [],
- "source": [
- "import yt\n",
- "\n",
- "ds = yt.load(\"GasSloshing/sloshing_nomag2_hdf5_plt_cnt_0150\")\n",
- "\n",
- "xray_fields = yt.add_xray_emissivity_field(ds, 0.5, 7.0, table_type='apec', metallicity=0.3)"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "> Note: If you place the HDF5 emissivity tables in a location other than the current working directory or the location \n",
- " specified by the \"supp_data_dir\" configuration value, you will need to specify it in the call to \n",
- " `add_xray_emissivity_field`: \n",
- " `xray_fields = yt.add_xray_emissivity_field(ds, 0.5, 7.0, data_dir=\"/path/to/data\", table_type='apec', metallicity=0.3)`"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "Having made the fields, one can see which fields were made:"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {
- "collapsed": false
- },
- "outputs": [],
- "source": [
- "print (xray_fields)"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "The luminosity field is useful for summing up in regions like this:"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {
- "collapsed": false
- },
- "outputs": [],
- "source": [
- "sp = ds.sphere(\"c\", (2.0, \"Mpc\"))\n",
- "print (sp.quantities.total_quantity(\"xray_luminosity_0.5_7.0_keV\"))"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "Whereas the emissivity fields may be useful in derived fields or for plotting:"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {
- "collapsed": false,
- "scrolled": false
- },
- "outputs": [],
- "source": [
- "slc = yt.SlicePlot(ds, 'z', ['xray_emissivity_0.5_7.0_keV','xray_photon_emissivity_0.5_7.0_keV'],\n",
- " width=(0.75, \"Mpc\"))\n",
- "slc.show()"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "The emissivity and the luminosity fields take the values one would see in the frame of the source. However, if one wishes to make projections of the X-ray emission from a cosmologically distant object, the energy band will be redshifted. For this case, one can supply a `redshift` parameter and a `Cosmology` object (either from the dataset or one made on your own) to compute X-ray intensity fields along with the emissivity and luminosity fields.\n",
- "\n",
- "This example shows how to do that, Where we also use a spatially dependent metallicity field and the Cloudy tables instead of the APEC tables we used previously:"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {
- "collapsed": false,
- "scrolled": false
- },
- "outputs": [],
- "source": [
- "ds2 = yt.load(\"D9p_500/10MpcBox_HartGal_csf_a0.500.d\")\n",
- "\n",
- "# In this case, use the redshift and cosmology from the dataset, \n",
- "# but in theory you could put in something different\n",
- "xray_fields2 = yt.add_xray_emissivity_field(ds2, 0.5, 2.0, redshift=ds2.current_redshift, cosmology=ds2.cosmology,\n",
- " metallicity=(\"gas\", \"metallicity\"), table_type='cloudy')"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "Now, one can see that two new fields have been added, corresponding to X-ray intensity / surface brightness when projected:"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {
- "collapsed": false
- },
- "outputs": [],
- "source": [
- "print (xray_fields2)"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "Note also that the energy range now corresponds to the *observer* frame, whereas in the source frame the energy range is between `emin*(1+redshift)` and `emax*(1+redshift)`. Let's zoom in on a galaxy and make a projection of the intensity fields:"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {
- "collapsed": false,
- "scrolled": false
- },
- "outputs": [],
- "source": [
- "prj = yt.ProjectionPlot(ds2, \"x\", [\"xray_intensity_0.5_2.0_keV\", \"xray_photon_intensity_0.5_2.0_keV\"],\n",
- " center=\"max\", width=(40, \"kpc\"))\n",
- "prj.set_zlim(\"xray_intensity_0.5_2.0_keV\", 1.0e-32, 5.0e-24)\n",
- "prj.set_zlim(\"xray_photon_intensity_0.5_2.0_keV\", 1.0e-24, 5.0e-16)\n",
- "prj.show()"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "> Warning: The X-ray fields depend on the number density of hydrogen atoms, given by the yt field\n",
- " `H_nuclei_density`. In the case of the APEC model, this assumes that all of the hydrogen in your\n",
- " dataset is ionized, whereas in the Cloudy model the ionization level is taken into account. If \n",
- " this field is not defined (either in the dataset or by the user), it will be constructed using\n",
- " abundance information from your dataset. Finally, if your dataset contains no abundance information,\n",
- " a primordial hydrogen mass fraction (X = 0.76) will be assumed."
- ]
- }
- ],
- "metadata": {
- "anaconda-cloud": {},
- "kernelspec": {
- "display_name": "Python [default]",
- "language": "python",
- "name": "python3"
- },
- "language_info": {
- "codemirror_mode": {
- "name": "ipython",
- "version": 3
- },
- "file_extension": ".py",
- "mimetype": "text/x-python",
- "name": "python",
- "nbconvert_exporter": "python",
- "pygments_lexer": "ipython3",
- "version": "3.5.2"
- }
- },
- "nbformat": 4,
- "nbformat_minor": 2
-}
diff -r b18b7fcbbaf03295aca41c9a33ea405c4a3b26e5 -r d5cc37fe5d06c79e35f3d40396aaac33c17f155a doc/source/analyzing/analysis_modules/XrayEmissionFields.ipynb
--- /dev/null
+++ b/doc/source/analyzing/analysis_modules/XrayEmissionFields.ipynb
@@ -0,0 +1,220 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "> Note: If you came here trying to figure out how to create simulated X-ray photons and observations,\n",
+ " you should go [here](analysis_modules/photon_simulator.html) instead."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "This functionality provides the ability to create metallicity-dependent X-ray luminosity, emissivity, and photon emissivity fields for a given photon energy range. This works by interpolating from emission tables created from the photoionization code [Cloudy](http://nublado.org/) or the collisional ionization database [AtomDB](http://www.atomdb.org). These can be downloaded from http://yt-project.org/data from the command line like so:\n",
+ "\n",
+ "`# Put the data in a directory you specify` \n",
+ "`yt download cloudy_emissivity_v2.h5 /path/to/data`\n",
+ "\n",
+ "`# Put the data in the location set by \"supp_data_dir\"` \n",
+ "`yt download apec_emissivity_v2.h5 supp_data_dir`\n",
+ "\n",
+ "The data path can be a directory on disk, or it can be \"supp_data_dir\", which will download the data to the directory specified by the `\"supp_data_dir\"` yt configuration entry. It is easiest to put these files in the directory from which you will be running yt or `\"supp_data_dir\"`, but see the note below about putting them in alternate locations."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Emission fields can be made for any energy interval between 0.1 keV and 100 keV, and will always be created for luminosity $(\\rm{erg~s^{-1}})$, emissivity $\\rm{(erg~s^{-1}~cm^{-3})}$, and photon emissivity $\\rm{(photons~s^{-1}~cm^{-3})}$. The only required arguments are the\n",
+ "dataset object, and the minimum and maximum energies of the energy band. However, typically one needs to decide what will be used for the metallicity. This can either be a floating-point value representing a spatially constant metallicity, or a prescription for a metallicity field, e.g. `(\"gas\", \"metallicity\")`. For this first example, where the dataset has no metallicity field, we'll just assume $Z = 0.3~Z_\\odot$ everywhere:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": false,
+ "scrolled": false
+ },
+ "outputs": [],
+ "source": [
+ "import yt\n",
+ "\n",
+ "ds = yt.load(\"GasSloshing/sloshing_nomag2_hdf5_plt_cnt_0150\")\n",
+ "\n",
+ "xray_fields = yt.add_xray_emissivity_field(ds, 0.5, 7.0, table_type='apec', metallicity=0.3)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "> Note: If you place the HDF5 emissivity tables in a location other than the current working directory or the location \n",
+ " specified by the \"supp_data_dir\" configuration value, you will need to specify it in the call to \n",
+ " `add_xray_emissivity_field`: \n",
+ " `xray_fields = yt.add_xray_emissivity_field(ds, 0.5, 7.0, data_dir=\"/path/to/data\", table_type='apec', metallicity=0.3)`"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Having made the fields, one can see which fields were made:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [],
+ "source": [
+ "print (xray_fields)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "The luminosity field is useful for summing up in regions like this:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [],
+ "source": [
+ "sp = ds.sphere(\"c\", (2.0, \"Mpc\"))\n",
+ "print (sp.quantities.total_quantity(\"xray_luminosity_0.5_7.0_keV\"))"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Whereas the emissivity fields may be useful in derived fields or for plotting:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": false,
+ "scrolled": false
+ },
+ "outputs": [],
+ "source": [
+ "slc = yt.SlicePlot(ds, 'z', ['xray_emissivity_0.5_7.0_keV','xray_photon_emissivity_0.5_7.0_keV'],\n",
+ " width=(0.75, \"Mpc\"))\n",
+ "slc.show()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "The emissivity and the luminosity fields take the values one would see in the frame of the source. However, if one wishes to make projections of the X-ray emission from a cosmologically distant object, the energy band will be redshifted. For this case, one can supply a `redshift` parameter and a `Cosmology` object (either from the dataset or one made on your own) to compute X-ray intensity fields along with the emissivity and luminosity fields.\n",
+ "\n",
+ "This example shows how to do that, Where we also use a spatially dependent metallicity field and the Cloudy tables instead of the APEC tables we used previously:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": false,
+ "scrolled": false
+ },
+ "outputs": [],
+ "source": [
+ "ds2 = yt.load(\"D9p_500/10MpcBox_HartGal_csf_a0.500.d\")\n",
+ "\n",
+ "# In this case, use the redshift and cosmology from the dataset, \n",
+ "# but in theory you could put in something different\n",
+ "xray_fields2 = yt.add_xray_emissivity_field(ds2, 0.5, 2.0, redshift=ds2.current_redshift, cosmology=ds2.cosmology,\n",
+ " metallicity=(\"gas\", \"metallicity\"), table_type='cloudy')"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Now, one can see that two new fields have been added, corresponding to X-ray intensity / surface brightness when projected:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [],
+ "source": [
+ "print (xray_fields2)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Note also that the energy range now corresponds to the *observer* frame, whereas in the source frame the energy range is between `emin*(1+redshift)` and `emax*(1+redshift)`. Let's zoom in on a galaxy and make a projection of the intensity fields:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": false,
+ "scrolled": false
+ },
+ "outputs": [],
+ "source": [
+ "prj = yt.ProjectionPlot(ds2, \"x\", [\"xray_intensity_0.5_2.0_keV\", \"xray_photon_intensity_0.5_2.0_keV\"],\n",
+ " center=\"max\", width=(40, \"kpc\"))\n",
+ "prj.set_zlim(\"xray_intensity_0.5_2.0_keV\", 1.0e-32, 5.0e-24)\n",
+ "prj.set_zlim(\"xray_photon_intensity_0.5_2.0_keV\", 1.0e-24, 5.0e-16)\n",
+ "prj.show()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "> Warning: The X-ray fields depend on the number density of hydrogen atoms, given by the yt field\n",
+ " `H_nuclei_density`. In the case of the APEC model, this assumes that all of the hydrogen in your\n",
+ " dataset is ionized, whereas in the Cloudy model the ionization level is taken into account. If \n",
+ " this field is not defined (either in the dataset or by the user), it will be constructed using\n",
+ " abundance information from your dataset. Finally, if your dataset contains no abundance information,\n",
+ " a primordial hydrogen mass fraction (X = 0.76) will be assumed."
+ ]
+ }
+ ],
+ "metadata": {
+ "anaconda-cloud": {},
+ "kernelspec": {
+ "display_name": "Python [default]",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.5.2"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}
diff -r b18b7fcbbaf03295aca41c9a33ea405c4a3b26e5 -r d5cc37fe5d06c79e35f3d40396aaac33c17f155a doc/source/analyzing/analysis_modules/synthetic_observation.rst
--- a/doc/source/analyzing/analysis_modules/synthetic_observation.rst
+++ b/doc/source/analyzing/analysis_modules/synthetic_observation.rst
@@ -14,6 +14,7 @@
planning_cosmology_simulations
absorption_spectrum
star_analysis
+ xray_emission_fields
sunyaev_zeldovich
photon_simulator
ppv_cubes
diff -r b18b7fcbbaf03295aca41c9a33ea405c4a3b26e5 -r d5cc37fe5d06c79e35f3d40396aaac33c17f155a doc/source/analyzing/analysis_modules/xray_emission_fields.rst
--- /dev/null
+++ b/doc/source/analyzing/analysis_modules/xray_emission_fields.rst
@@ -0,0 +1,3 @@
+.. _xray_emission_fields:
+
+.. notebook:: XrayEmissionFields.ipynb
diff -r b18b7fcbbaf03295aca41c9a33ea405c4a3b26e5 -r d5cc37fe5d06c79e35f3d40396aaac33c17f155a doc/source/analyzing/index.rst
--- a/doc/source/analyzing/index.rst
+++ b/doc/source/analyzing/index.rst
@@ -23,4 +23,3 @@
saving_data
time_series_analysis
parallel_computation
- xray_emission_fields
diff -r b18b7fcbbaf03295aca41c9a33ea405c4a3b26e5 -r d5cc37fe5d06c79e35f3d40396aaac33c17f155a doc/source/analyzing/xray_emission_fields.rst
--- a/doc/source/analyzing/xray_emission_fields.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-.. _xray_emission_fields:
-
-.. notebook:: XrayEmissionFields.ipynb
https://bitbucket.org/yt_analysis/yt/commits/9011f189f5aa/
Changeset: 9011f189f5aa
Branch: yt
User: atmyers
Date: 2017-01-31 18:09:28+00:00
Summary: Merged in ngoldbaum/yt (pull request #2506)
Fixing doc formatting errors
Affected #: 10 files
diff -r 23d0e83400c92b26416052a26d89444bdd1de9ed -r 9011f189f5aa3a1a0221f2e2f28cbe9de17b485f doc/source/analyzing/XrayEmissionFields.ipynb
--- a/doc/source/analyzing/XrayEmissionFields.ipynb
+++ /dev/null
@@ -1,220 +0,0 @@
-{
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "> Note: If you came here trying to figure out how to create simulated X-ray photons and observations,\n",
- " you should go [here](analysis_modules/photon_simulator.html) instead."
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "This functionality provides the ability to create metallicity-dependent X-ray luminosity, emissivity, and photon emissivity fields for a given photon energy range. This works by interpolating from emission tables created from the photoionization code [Cloudy](http://nublado.org/) or the collisional ionization database [AtomDB](http://www.atomdb.org). These can be downloaded from http://yt-project.org/data from the command line like so:\n",
- "\n",
- "`# Put the data in a directory you specify` \n",
- "`yt download cloudy_emissivity_v2.h5 /path/to/data`\n",
- "\n",
- "`# Put the data in the location set by \"supp_data_dir\"` \n",
- "`yt download apec_emissivity_v2.h5 supp_data_dir`\n",
- "\n",
- "The data path can be a directory on disk, or it can be \"supp_data_dir\", which will download the data to the directory specified by the `\"supp_data_dir\"` yt configuration entry. It is easiest to put these files in the directory from which you will be running yt or `\"supp_data_dir\"`, but see the note below about putting them in alternate locations."
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "Emission fields can be made for any energy interval between 0.1 keV and 100 keV, and will always be created for luminosity $(\\rm{erg~s^{-1}})$, emissivity $\\rm{(erg~s^{-1}~cm^{-3})}$, and photon emissivity $\\rm{(photons~s^{-1}~cm^{-3})}$. The only required arguments are the\n",
- "dataset object, and the minimum and maximum energies of the energy band. However, typically one needs to decide what will be used for the metallicity. This can either be a floating-point value representing a spatially constant metallicity, or a prescription for a metallicity field, e.g. `(\"gas\", \"metallicity\")`. For this first example, where the dataset has no metallicity field, we'll just assume $Z = 0.3~Z_\\odot$ everywhere:"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {
- "collapsed": false,
- "scrolled": false
- },
- "outputs": [],
- "source": [
- "import yt\n",
- "\n",
- "ds = yt.load(\"GasSloshing/sloshing_nomag2_hdf5_plt_cnt_0150\")\n",
- "\n",
- "xray_fields = yt.add_xray_emissivity_field(ds, 0.5, 7.0, table_type='apec', metallicity=0.3)"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "> Note: If you place the HDF5 emissivity tables in a location other than the current working directory or the location \n",
- " specified by the \"supp_data_dir\" configuration value, you will need to specify it in the call to \n",
- " `add_xray_emissivity_field`: \n",
- " `xray_fields = yt.add_xray_emissivity_field(ds, 0.5, 7.0, data_dir=\"/path/to/data\", table_type='apec', metallicity=0.3)`"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "Having made the fields, one can see which fields were made:"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {
- "collapsed": false
- },
- "outputs": [],
- "source": [
- "print (xray_fields)"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "The luminosity field is useful for summing up in regions like this:"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {
- "collapsed": false
- },
- "outputs": [],
- "source": [
- "sp = ds.sphere(\"c\", (2.0, \"Mpc\"))\n",
- "print (sp.quantities.total_quantity(\"xray_luminosity_0.5_7.0_keV\"))"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "Whereas the emissivity fields may be useful in derived fields or for plotting:"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {
- "collapsed": false,
- "scrolled": false
- },
- "outputs": [],
- "source": [
- "slc = yt.SlicePlot(ds, 'z', ['xray_emissivity_0.5_7.0_keV','xray_photon_emissivity_0.5_7.0_keV'],\n",
- " width=(0.75, \"Mpc\"))\n",
- "slc.show()"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "The emissivity and the luminosity fields take the values one would see in the frame of the source. However, if one wishes to make projections of the X-ray emission from a cosmologically distant object, the energy band will be redshifted. For this case, one can supply a `redshift` parameter and a `Cosmology` object (either from the dataset or one made on your own) to compute X-ray intensity fields along with the emissivity and luminosity fields.\n",
- "\n",
- "This example shows how to do that, Where we also use a spatially dependent metallicity field and the Cloudy tables instead of the APEC tables we used previously:"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {
- "collapsed": false,
- "scrolled": false
- },
- "outputs": [],
- "source": [
- "ds2 = yt.load(\"D9p_500/10MpcBox_HartGal_csf_a0.500.d\")\n",
- "\n",
- "# In this case, use the redshift and cosmology from the dataset, \n",
- "# but in theory you could put in something different\n",
- "xray_fields2 = yt.add_xray_emissivity_field(ds2, 0.5, 2.0, redshift=ds2.current_redshift, cosmology=ds2.cosmology,\n",
- " metallicity=(\"gas\", \"metallicity\"), table_type='cloudy')"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "Now, one can see that two new fields have been added, corresponding to X-ray intensity / surface brightness when projected:"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {
- "collapsed": false
- },
- "outputs": [],
- "source": [
- "print (xray_fields2)"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "Note also that the energy range now corresponds to the *observer* frame, whereas in the source frame the energy range is between `emin*(1+redshift)` and `emax*(1+redshift)`. Let's zoom in on a galaxy and make a projection of the intensity fields:"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {
- "collapsed": false,
- "scrolled": false
- },
- "outputs": [],
- "source": [
- "prj = yt.ProjectionPlot(ds2, \"x\", [\"xray_intensity_0.5_2.0_keV\", \"xray_photon_intensity_0.5_2.0_keV\"],\n",
- " center=\"max\", width=(40, \"kpc\"))\n",
- "prj.set_zlim(\"xray_intensity_0.5_2.0_keV\", 1.0e-32, 5.0e-24)\n",
- "prj.set_zlim(\"xray_photon_intensity_0.5_2.0_keV\", 1.0e-24, 5.0e-16)\n",
- "prj.show()"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "> Warning: The X-ray fields depend on the number density of hydrogen atoms, given by the yt field\n",
- " `H_nuclei_density`. In the case of the APEC model, this assumes that all of the hydrogen in your\n",
- " dataset is ionized, whereas in the Cloudy model the ionization level is taken into account. If \n",
- " this field is not defined (either in the dataset or by the user), it will be constructed using\n",
- " abundance information from your dataset. Finally, if your dataset contains no abundance information,\n",
- " a primordial hydrogen mass fraction (X = 0.76) will be assumed."
- ]
- }
- ],
- "metadata": {
- "anaconda-cloud": {},
- "kernelspec": {
- "display_name": "Python [default]",
- "language": "python",
- "name": "python3"
- },
- "language_info": {
- "codemirror_mode": {
- "name": "ipython",
- "version": 3
- },
- "file_extension": ".py",
- "mimetype": "text/x-python",
- "name": "python",
- "nbconvert_exporter": "python",
- "pygments_lexer": "ipython3",
- "version": "3.5.2"
- }
- },
- "nbformat": 4,
- "nbformat_minor": 2
-}
diff -r 23d0e83400c92b26416052a26d89444bdd1de9ed -r 9011f189f5aa3a1a0221f2e2f28cbe9de17b485f doc/source/analyzing/analysis_modules/XrayEmissionFields.ipynb
--- /dev/null
+++ b/doc/source/analyzing/analysis_modules/XrayEmissionFields.ipynb
@@ -0,0 +1,220 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "> Note: If you came here trying to figure out how to create simulated X-ray photons and observations,\n",
+ " you should go [here](analysis_modules/photon_simulator.html) instead."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "This functionality provides the ability to create metallicity-dependent X-ray luminosity, emissivity, and photon emissivity fields for a given photon energy range. This works by interpolating from emission tables created from the photoionization code [Cloudy](http://nublado.org/) or the collisional ionization database [AtomDB](http://www.atomdb.org). These can be downloaded from http://yt-project.org/data from the command line like so:\n",
+ "\n",
+ "`# Put the data in a directory you specify` \n",
+ "`yt download cloudy_emissivity_v2.h5 /path/to/data`\n",
+ "\n",
+ "`# Put the data in the location set by \"supp_data_dir\"` \n",
+ "`yt download apec_emissivity_v2.h5 supp_data_dir`\n",
+ "\n",
+ "The data path can be a directory on disk, or it can be \"supp_data_dir\", which will download the data to the directory specified by the `\"supp_data_dir\"` yt configuration entry. It is easiest to put these files in the directory from which you will be running yt or `\"supp_data_dir\"`, but see the note below about putting them in alternate locations."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Emission fields can be made for any energy interval between 0.1 keV and 100 keV, and will always be created for luminosity $(\\rm{erg~s^{-1}})$, emissivity $\\rm{(erg~s^{-1}~cm^{-3})}$, and photon emissivity $\\rm{(photons~s^{-1}~cm^{-3})}$. The only required arguments are the\n",
+ "dataset object, and the minimum and maximum energies of the energy band. However, typically one needs to decide what will be used for the metallicity. This can either be a floating-point value representing a spatially constant metallicity, or a prescription for a metallicity field, e.g. `(\"gas\", \"metallicity\")`. For this first example, where the dataset has no metallicity field, we'll just assume $Z = 0.3~Z_\\odot$ everywhere:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": false,
+ "scrolled": false
+ },
+ "outputs": [],
+ "source": [
+ "import yt\n",
+ "\n",
+ "ds = yt.load(\"GasSloshing/sloshing_nomag2_hdf5_plt_cnt_0150\")\n",
+ "\n",
+ "xray_fields = yt.add_xray_emissivity_field(ds, 0.5, 7.0, table_type='apec', metallicity=0.3)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "> Note: If you place the HDF5 emissivity tables in a location other than the current working directory or the location \n",
+ " specified by the \"supp_data_dir\" configuration value, you will need to specify it in the call to \n",
+ " `add_xray_emissivity_field`: \n",
+ " `xray_fields = yt.add_xray_emissivity_field(ds, 0.5, 7.0, data_dir=\"/path/to/data\", table_type='apec', metallicity=0.3)`"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Having made the fields, one can see which fields were made:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [],
+ "source": [
+ "print (xray_fields)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "The luminosity field is useful for summing up in regions like this:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [],
+ "source": [
+ "sp = ds.sphere(\"c\", (2.0, \"Mpc\"))\n",
+ "print (sp.quantities.total_quantity(\"xray_luminosity_0.5_7.0_keV\"))"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Whereas the emissivity fields may be useful in derived fields or for plotting:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": false,
+ "scrolled": false
+ },
+ "outputs": [],
+ "source": [
+ "slc = yt.SlicePlot(ds, 'z', ['xray_emissivity_0.5_7.0_keV','xray_photon_emissivity_0.5_7.0_keV'],\n",
+ " width=(0.75, \"Mpc\"))\n",
+ "slc.show()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "The emissivity and the luminosity fields take the values one would see in the frame of the source. However, if one wishes to make projections of the X-ray emission from a cosmologically distant object, the energy band will be redshifted. For this case, one can supply a `redshift` parameter and a `Cosmology` object (either from the dataset or one made on your own) to compute X-ray intensity fields along with the emissivity and luminosity fields.\n",
+ "\n",
+ "This example shows how to do that, Where we also use a spatially dependent metallicity field and the Cloudy tables instead of the APEC tables we used previously:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": false,
+ "scrolled": false
+ },
+ "outputs": [],
+ "source": [
+ "ds2 = yt.load(\"D9p_500/10MpcBox_HartGal_csf_a0.500.d\")\n",
+ "\n",
+ "# In this case, use the redshift and cosmology from the dataset, \n",
+ "# but in theory you could put in something different\n",
+ "xray_fields2 = yt.add_xray_emissivity_field(ds2, 0.5, 2.0, redshift=ds2.current_redshift, cosmology=ds2.cosmology,\n",
+ " metallicity=(\"gas\", \"metallicity\"), table_type='cloudy')"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Now, one can see that two new fields have been added, corresponding to X-ray intensity / surface brightness when projected:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [],
+ "source": [
+ "print (xray_fields2)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Note also that the energy range now corresponds to the *observer* frame, whereas in the source frame the energy range is between `emin*(1+redshift)` and `emax*(1+redshift)`. Let's zoom in on a galaxy and make a projection of the intensity fields:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": false,
+ "scrolled": false
+ },
+ "outputs": [],
+ "source": [
+ "prj = yt.ProjectionPlot(ds2, \"x\", [\"xray_intensity_0.5_2.0_keV\", \"xray_photon_intensity_0.5_2.0_keV\"],\n",
+ " center=\"max\", width=(40, \"kpc\"))\n",
+ "prj.set_zlim(\"xray_intensity_0.5_2.0_keV\", 1.0e-32, 5.0e-24)\n",
+ "prj.set_zlim(\"xray_photon_intensity_0.5_2.0_keV\", 1.0e-24, 5.0e-16)\n",
+ "prj.show()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "> Warning: The X-ray fields depend on the number density of hydrogen atoms, given by the yt field\n",
+ " `H_nuclei_density`. In the case of the APEC model, this assumes that all of the hydrogen in your\n",
+ " dataset is ionized, whereas in the Cloudy model the ionization level is taken into account. If \n",
+ " this field is not defined (either in the dataset or by the user), it will be constructed using\n",
+ " abundance information from your dataset. Finally, if your dataset contains no abundance information,\n",
+ " a primordial hydrogen mass fraction (X = 0.76) will be assumed."
+ ]
+ }
+ ],
+ "metadata": {
+ "anaconda-cloud": {},
+ "kernelspec": {
+ "display_name": "Python [default]",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.5.2"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}
diff -r 23d0e83400c92b26416052a26d89444bdd1de9ed -r 9011f189f5aa3a1a0221f2e2f28cbe9de17b485f doc/source/analyzing/analysis_modules/xray_emission_fields.rst
--- /dev/null
+++ b/doc/source/analyzing/analysis_modules/xray_emission_fields.rst
@@ -0,0 +1,3 @@
+.. _xray_emission_fields:
+
+.. notebook:: XrayEmissionFields.ipynb
diff -r 23d0e83400c92b26416052a26d89444bdd1de9ed -r 9011f189f5aa3a1a0221f2e2f28cbe9de17b485f doc/source/analyzing/xray_emission_fields.rst
--- a/doc/source/analyzing/xray_emission_fields.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-.. _xray_emission_fields:
-
-.. notebook:: XrayEmissionFields.ipynb
diff -r 23d0e83400c92b26416052a26d89444bdd1de9ed -r 9011f189f5aa3a1a0221f2e2f28cbe9de17b485f doc/source/conf.py
--- a/doc/source/conf.py
+++ b/doc/source/conf.py
@@ -256,7 +256,7 @@
intersphinx_mapping = {'http://docs.python.org/': None,
'http://ipython.org/ipython-doc/stable/': None,
'http://docs.scipy.org/doc/numpy/': None,
- 'http://matplotlib.sourceforge.net/': None,
+ 'http://matplotlib.org/': None,
}
if not on_rtd:
diff -r 23d0e83400c92b26416052a26d89444bdd1de9ed -r 9011f189f5aa3a1a0221f2e2f28cbe9de17b485f doc/source/examining/loading_data.rst
--- a/doc/source/examining/loading_data.rst
+++ b/doc/source/examining/loading_data.rst
@@ -1603,7 +1603,7 @@
.. _loading-openpmd-data:
openPMD Data
----------
+------------
`openPMD <http://www.openpmd.org>`_ is an open source meta-standard and naming
scheme for mesh based data and particle data. It does not actually define a file
diff -r 23d0e83400c92b26416052a26d89444bdd1de9ed -r 9011f189f5aa3a1a0221f2e2f28cbe9de17b485f yt/frontends/open_pmd/fields.py
--- a/yt/frontends/open_pmd/fields.py
+++ b/yt/frontends/open_pmd/fields.py
@@ -98,36 +98,39 @@
class OpenPMDFieldInfo(FieldInfoContainer):
"""Specifies which fields from the dataset yt should know about.
- ``self.known_other_fields`` and ``self.known_particle_fields`` must be populated.
- Entries for both of these lists must be tuples of the form
- ("name", ("units", ["fields", "to", "alias"], "display_name"))
- These fields will be represented and handled in yt in the way you define them here.
- The fields defined in both ``self.known_other_fields`` and ``self.known_particle_fields`` will only be added
- to a dataset (with units, aliases, etc), if they match any entry in the ``OpenPMDHierarchy``'s ``self.field_list``.
+ ``self.known_other_fields`` and ``self.known_particle_fields`` must be
+ populated. Entries for both of these lists must be tuples of the form
+ ``("name", ("units", ["fields", "to", "alias"], "display_name"))``. These
+ fields will be represented and handled in yt in the way you define them
+ here. The fields defined in both ``self.known_other_fields`` and
+ ``self.known_particle_fields`` will only be added to a dataset (with units,
+ aliases, etc), if they match any entry in the ``OpenPMDHierarchy``'s
+ ``self.field_list``.
Notes
-----
- Contrary to many other frontends, we dynamically obtain the known fields from the simulation output.
- The openPMD markup is extremely flexible - names, dimensions and the number of individual datasets
- can (and very likely will) vary.
+ Contrary to many other frontends, we dynamically obtain the known fields
+ from the simulation output. The openPMD markup is extremely flexible -
+ names, dimensions and the number of individual datasets can (and very likely
+ will) vary.
- openPMD states that names of records and their components are only allowed to contain the
- characters a-Z,
- the numbers 0-9
- and the underscore _
- (equivalently, the regex \w).
- Since yt widely uses the underscore in field names, openPMD's underscores (_) are replaced by hyphen (-).
+ openPMD states that names of records and their components are only allowed
+ to contain the characters ``a-Z``, the numbers ``0-9`` and the underscore
+ ``_`` (equivalently, the regex ``\w``). Since yt widely uses the underscore
+ in field names, openPMD's underscores (``_``) are replaced by hyphen
+ (``-``).
- Derived fields will automatically be set up, if names and units of your known on-disk (or manually derived)
- fields match the ones in [1].
+ Derived fields will automatically be set up, if names and units of your
+ known on-disk (or manually derived) fields match the ones in the list of
+ yt "universal" fields.
References
----------
- .. http://yt-project.org/docs/dev/analyzing/fields.html
- .. http://yt-project.org/docs/dev/developing/creating_frontend.html#data-meaning-structures
- .. https://github.com/openPMD/openPMD-standard/blob/latest/STANDARD.md
- .. [1] http://yt-project.org/docs/dev/reference/field_list.html#universal-fields
+ * http://yt-project.org/docs/dev/analyzing/fields.html
+ * http://yt-project.org/docs/dev/developing/creating_frontend.html#data-meaning-structures
+ * https://github.com/openPMD/openPMD-standard/blob/latest/STANDARD.md
+
"""
_mag_fields = []
diff -r 23d0e83400c92b26416052a26d89444bdd1de9ed -r 9011f189f5aa3a1a0221f2e2f28cbe9de17b485f yt/visualization/plot_window.py
--- a/yt/visualization/plot_window.py
+++ b/yt/visualization/plot_window.py
@@ -156,9 +156,9 @@
Parameters
----------
- or :class:`yt.data_objects.selection_data_containers.YTSlice`
- This is the source to be pixelized, which can be a projection or a
- slice or a cutting plane.
+ data_source : subclass of :class:`yt.data_objects.selection_data_containers.YTSelectionContainer2D`
+ This is the source to be pixelized, which can be a projection,
+ slice, or a cutting plane.
bounds : sequence of floats
Bounds are the min and max in the image plane that we want our
image to cover. It's in the order of (xmin, xmax, ymin, ymax),
@@ -444,7 +444,7 @@
('{yloc}', '{xloc}', '{space}') ('lower', 'right', 'window')
((yloc, '{unit}'), (xloc, '{unit}'), '{space}') ((0.5, 'm'), (0.4, 'm'), 'window')
(xloc, yloc, '{space}') (0.23, 0.5, 'domain')
- ================================== ============================
+ ================================== ===========================
"""
self.origin = origin
@@ -1268,7 +1268,7 @@
('{yloc}', '{xloc}', '{space}') ('lower', 'right', 'window')
((yloc, '{unit}'), (xloc, '{unit}'), '{space}') ((0.5, 'm'), (0.4, 'm'), 'window')
(xloc, yloc, '{space}') (0.23, 0.5, 'domain')
- ================================== ============================
+ ================================== ===========================
axes_unit : A string
The name of the unit for the tick labels on the x and y axes.
Defaults to None, which automatically picks an appropriate unit.
@@ -1423,7 +1423,7 @@
('{yloc}', '{xloc}', '{space}') ('lower', 'right', 'window')
((yloc, '{unit}'), (xloc, '{unit}'), '{space}') ((0.5, 'm'), (0.4, 'm'), 'window')
(xloc, yloc, '{space}') (0.23, 0.5, 'domain')
- ================================== ============================
+ ================================== ===========================
right_handed : boolean
Whether the implicit east vector for the image generated is set to make a right
@@ -1943,7 +1943,7 @@
('{yloc}', '{xloc}', '{space}') ('lower', 'right', 'window')
((yloc, '{unit}'), (xloc, '{unit}'), '{space}') ((0.5, 'm'), (0.4, 'm'), 'window')
(xloc, yloc, '{space}') (0.23, 0.5, 'domain')
- ================================== ============================
+ ================================== ===========================
north_vector : a sequence of floats
A vector defining the 'up' direction in the `OffAxisSlicePlot`; not
used in `AxisAlignedSlicePlot`. This option sets the orientation of the
Repository URL: https://bitbucket.org/yt_analysis/yt/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
More information about the yt-svn
mailing list