[yt-svn] commit/yt-doc: 11 new changesets

Bitbucket commits-noreply at bitbucket.org
Mon Jul 23 12:00:30 PDT 2012


11 new commits in yt-doc:


https://bitbucket.org/yt_analysis/yt-doc/changeset/ddfce85c4061/
changeset:   ddfce85c4061
user:        ngoldbaum
date:        2012-07-16 08:45:42
summary:     Fixing sphinx compilation errors.  Starting PlotWindow narrative docs.
affected #:  7 files

diff -r f2bbe043376d6588f97dc1662e411155d09180fe -r ddfce85c4061e0b575cec8a427b6556f79c5f7c4 source/_templates/autosummary/class.rst
--- a/source/_templates/autosummary/class.rst
+++ b/source/_templates/autosummary/class.rst
@@ -2,20 +2,24 @@
 
 {% block methods %}
 {% if methods %}
-   .. autosummary::
-      :toctree:
+.. autosummary::
+
+   :toctree:
    {% for item in methods %}
-      ~{{ name }}.{{ item }}
+       ~{{ name }}.{{ item }}
    {%- endfor %}
+
 {% endif %}
 {% endblock %}
 
 {% block attributes %}
 {% if attributes %}
-   .. autosummary::
-      :toctree:
+.. autosummary::
+
+   :toctree:
    {% for item in attributes %}
-      ~{{ name }}.{{ item }}
+       ~{{ name }}.{{ item }}
    {%- endfor %}
+
 {% endif %}
 {% endblock %}


diff -r f2bbe043376d6588f97dc1662e411155d09180fe -r ddfce85c4061e0b575cec8a427b6556f79c5f7c4 source/analysis_modules/running_halofinder.rst
--- a/source/analysis_modules/running_halofinder.rst
+++ b/source/analysis_modules/running_halofinder.rst
@@ -451,7 +451,7 @@
 
 
 Rockstar Halo Finding
-============
+=====================
 .. sectionauthor:: Matthew Turk <matthewturk at gmail.com>
 .. sectionauthor:: Christopher Erick Moody<cemoody at ucsc.edu>
 
@@ -474,6 +474,7 @@
 nodes.
 
 .. code-block:: bash
+  
   mpirun -n3 yt test_rockstar.py --parallel
 
 Designing the python script itself is straightforward:
@@ -515,7 +516,7 @@
                 configured from the number of available MPI tasks. 
 
 Output Analysis
-^^^^^^^^^^^^^^^
+---------------
 
 Rockstar dumps halo information in a series of text (halo*list and 
 out*list) and binary (halo*bin) files inside the ``outbase`` directory. 
@@ -527,6 +528,7 @@
 ``RockstarHaloList(pf,''outbase/out_0.list')``.
 
 .. code-block:: python
+    
     rh = RockstarHaloFinder(pf)
     #First method of creating the halo lists:
     halo_list = rh.halo_list()    
@@ -540,7 +542,7 @@
             most_massive_com = h.CoM
 
 Installation
-^^^^^^^^^^^^
+------------
 
 The Rockstar is slightly patched and modified to run as a library inside of 
 yt. The repository for this project is located here 


diff -r f2bbe043376d6588f97dc1662e411155d09180fe -r ddfce85c4061e0b575cec8a427b6556f79c5f7c4 source/api/api.rst
--- a/source/api/api.rst
+++ b/source/api/api.rst
@@ -235,7 +235,7 @@
    ~yt.visualization.volume_rendering.transfer_functions.ColorTransferFunction
    ~yt.visualization.volume_rendering.grid_partitioner.HomogenizedVolume
    ~yt.visualization.volume_rendering.transfer_functions.MultiVariateTransferFunction
-   ~yt.utilities.amr_utils.PartitionedGrid
+   ~yt.utilities.lib.PartitionedGrid
    ~yt.utilities.amr_kdtree.amr_kdtree.AMRKDTree
    ~yt.visualization.volume_rendering.camera.PerspectiveCamera
    ~yt.visualization.volume_rendering.transfer_functions.PlanckTransferFunction


diff -r f2bbe043376d6588f97dc1662e411155d09180fe -r ddfce85c4061e0b575cec8a427b6556f79c5f7c4 source/conf.py
--- a/source/conf.py
+++ b/source/conf.py
@@ -241,4 +241,4 @@
                        'http://matplotlib.sourceforge.net/': None,
                        }
 
-autosummary_generate = glob.glob("api.rst")
+autosummary_generate = glob.glob("api/api.rst")


diff -r f2bbe043376d6588f97dc1662e411155d09180fe -r ddfce85c4061e0b575cec8a427b6556f79c5f7c4 source/field_list.rst
--- a/source/field_list.rst
+++ b/source/field_list.rst
@@ -5005,8 +5005,8 @@
 Density
 +++++++
 
-   * Units: :math:`\rm{g}} / \rm{cm}^3`
-   * Projected Units: :math:`\rm{g}} / \rm{cm}^2`
+   * Units: :math:`\rm{g} / \rm{cm}^3`
+   * Projected Units: :math:`\rm{g} / \rm{cm}^2`
    * Particle Type: False
 
 **Field Source**


diff -r f2bbe043376d6588f97dc1662e411155d09180fe -r ddfce85c4061e0b575cec8a427b6556f79c5f7c4 source/index.rst
--- a/source/index.rst
+++ b/source/index.rst
@@ -120,132 +120,3 @@
    api/index
    faq/index
    changelog
-
-.. raw:: html
-   :hidden: 
-   <h2>Everyday yt</h2>
-   <table class="contentstable" align="center">
-   
-     <tr valign="top">
-       <td width="25%">
-         <p>
-           <a href="analyzing/index.html">Analyzing Data</a>
-         </p>
-       </td>
-       <td width="75%">
-         <p class="linkdescr">An overview of different ways to handle and process data: loading data, using and manipulating objects and fields, examining and manipulating particles, derived fields, generating processed data, time series analysis.</p>
-       </td>
-     </tr>
-   
-     <tr valign="top">
-       <td width="25%">
-         <p>
-           <a href="visualizing/index.html">Visualizing Data</a>
-         </p>
-       </td>
-       <td width="75%">
-         <p class="linkdescr">An overview of different ways to visualize data: making projections, slices, phase plots, streamlines, and volume rendering; modifying plots; the fixed resolution buffer.</p>
-       </td>
-     </tr>
-   
-     <tr valign="top">
-       <td width="25%">
-         <p>
-           <a href="interacting/index.html">Interacting with yt</a>
-         </p>
-       </td>
-       <td width="75%">
-         <p class="linkdescr">Different ways -- scripting, GUIs, prompts, explorers -- to explore your data.</p>
-       </td>
-     </tr>
-   
-     <tr valign="top">
-       <td width="25%">
-         <p>
-           <a href="analysis_modules/index.html">Analysis Modules</a>
-         </p>
-       </td>
-       <td width="75%">
-         <p class="linkdescr">Discussions of some provided procedures for astrophysical analysis like halo finding and synthetic spectra.  Halo finding, analyzing cosmology simulations, halo mass functions, halo profiling, light cone generator, making absorption spectrums, star particle analysis, two-point functions, halo merger trees, clump finding, radial column density, exporting to sunrise.</p>
-       </td>
-     </tr>
-   
-   </table>
-   
-   <h2>Advanced Usage</h2>
-   <table class="contentstable" align="center">
-   
-     <tr valign="top">
-       <td width="25%">
-         <p>
-           <a href="advanced/index.html">Advanced yt usage</a>
-         </p>
-       </td>
-       <td width="75%">
-         <p class="linkdescr">Advanced topics: parallelism, debugging, ways to drive yt, developing</p>
-       </td>
-     </tr>
-   
-     <tr valign="top">
-       <td width="25%">
-         <p>
-           <a href="getting_involved/index.html">Getting Involved</a>
-         </p>
-       </td>
-       <td width="75%">
-         <p class="linkdescr">How to participate in the community, contribute code and share scripts</p>
-       </td>
-     </tr>
-   
-   </table>
-   
-   <h2>Reference Materials</h2>
-   <table class="contentstable" align="center">
-   
-  
-     <tr valign="top">
-       <td width="25%">
-         <p>
-           <a href="reference/index.html">Reference Materials</a>
-         </p>
-       </td>
-       <td width="75%">
-         <p class="linkdescr">A list of all bundled fields, API documentation, the Change Log...</p>
-       </td>
-     </tr>
-   
-    <tr valign="top">
-       <td width="25%">
-         <p>
-           <a href="api.html">Function and Class List</a>
-         </p>
-       </td>
-       <td width="75%">
-         <p class="linkdescr">Documentation and description of the functions and objects available in yt.</p>
-       </td>
-     </tr>
-   
-     <tr valign="top">
-       <td width="25%">
-         <p>
-           <a href="changelog.html">Changelog</a>
-         </p>
-       </td>
-       <td width="75%">
-         <p class="linkdescr">Changes in yt by version.</p>
-       </td>
-     </tr>
-   
-     <tr valign="top">
-       <td width="25%">
-         <p>
-           <a href="configuration.html">Configuration</a>
-         </p>
-       </td>
-       <td width="75%">
-         <p class="linkdescr">Configuration Options in yt</p>
-       </td>
-     </tr>
-   
-   </table>
-   


diff -r f2bbe043376d6588f97dc1662e411155d09180fe -r ddfce85c4061e0b575cec8a427b6556f79c5f7c4 source/visualizing/plots.rst
--- a/source/visualizing/plots.rst
+++ b/source/visualizing/plots.rst
@@ -3,29 +3,67 @@
 How to Make Plots
 =================
 
-Through the plotting interface, you can have ``yt`` automatically generate many
-of the analysis objects available to you.  For more information about this
-procedure, please see the ``yt`` `method paper
-<http://adsabs.harvard.edu/abs/2011ApJS..192....9T>`_.  There are also many
-example scripts in :ref:`cookbook`.
+Through the plotting interface, ``yt`` can create visualizations of
+the data produced by yt analysis objects as well the original
+simulation data files.  For more information about this procedure,
+please see the ``yt`` `method paper
+<http://adsabs.harvard.edu/abs/2011ApJS..192....9T>`_.  There are also
+many example scripts in :ref:`cookbook`.
 
-The primary plotting interface is through a
-:class:`~yt.visualization.plot_collection.PlotCollection`
-instantiated with a given parameter file and (optionally) a center.  You can
-instantiated one either without specifying a center, in which case the most
-dense point in the simulation will be used as a center, or by specifying one by
-hand.  For instance:
+There are currently two plotting interfaces available in ``yt``. The
+:class:`~yt.visualization.plot_window.PlotWindow` interface is useful
+for taking a quick look at simulation outputs.  The ``PlotCollection``
+interface is best for in-depth analysis of a simulation, allowing a
+collection of plots to be set up, rendered, and saved simultaenously.
+Below we will summarize how to use both plotting interfaces.
+
+Simple Data Inspection
+----------------------
+
+If you need to take a quick look at a single simulation output, ``yt``
+provides the ``PlotWindow`` interface for quickly generating annotated
+2D visualizations of simulation data.  You can create a ``PlotWindow``
+plot by supplying a parameter file, a list of fields to plot, and a
+plot center to create a :class:`~yt.mods.SlicePlot`,
+:class:`~yt.mods.ProjectionPlot`, or
+:class:`~yt.mods.OffAxisSlicePlot`.
+
+``PlotWindow`` plots use ``yt`` data objects to extract the maximum
+resolution data available to render a 2D image of a field.  This is
+accomplished behind the scenes using
+:class:`yt.mods.FixedResolutionBuffer` and matplotlib.  ``PlotWindow``
+plots expose the underlying matplotlib ``figure`` and ``axes``
+objects, making it easy to add new annotations.
+
+SlicePlot
+~~~~~~~~~
+
+Slice plots accept a parameter file object and return an instance of
+:class:`~yt.mods.SlicePlot`, a wrapper for a matplotlib ``figure`` and
+``axes`` object.  For example:
 
 .. code-block:: python
 
-   from yt.mods import *
+   from yt.modsimport*
    pf = load("RedshiftOutput0005")
-   pc = PlotCollection(pf, [0.5, 0.5, 0.5])
+   slc = SlicePlot(pf,2,'Density','c',(20,'kpc'))
+   slc.save()
 
-will load the data, then proceed to construct a plot collection centered at
-[0.5, 0.5, 0.5].  In many Enzo simulations this is the center of the domain.
-Had we opted not to include that set of values, the most dense point would have
-been found and used.
+will slice through the data along the x-y plane at z = 0, plot the
+Density field in a square 20 kiloparsec window centered at the center
+of the simulation domain, and save it to
+``RedshiftOutput0005_Slice_x_Density.png``.
+
+A ``SlicePlot`` can be modified by calling one the
+plot modifying attributes attached to the object (see: modifications).
+
+
+
+
+
+The second plotting interface uses a
+:class:`~yt.visualization.plot_collection.PlotCollection` instantiated
+with a given parameter file and (optionally) a center.  
 
 At this point we can add various plots to our plot collection.  For starters,
 we'll take a look at creating images.  Images can be created from data in a
@@ -46,6 +84,23 @@
           appended to the list ``plots`` on the PlotCollection, where it can be
           accessed.
 
+``PlotCollection`` plots can be instantiated without supplying an
+explicit center, in which case the most dense point in the simulation
+will be used as a center.  The center of the simulation domain can
+optionally be specified as the center of the ``PlotCollection`` by
+passing the string 'c' as the center parameter.  For instance:
+
+.. code-block:: python
+
+   from yt.mods import *
+   pf = load("RedshiftOutput0005")
+   pc = PlotCollection(pf, 'c')
+
+will load the data, then proceed to construct a plot collection
+centered on the center of the simulation domain.  Had we opted not to
+include that set of values, the most dense point would have been found
+and used.
+
 .. _how-to-make-slices:
 
 Slices



https://bitbucket.org/yt_analysis/yt-doc/changeset/0b738d234d33/
changeset:   0b738d234d33
user:        ngoldbaum
date:        2012-07-16 19:58:50
summary:     Make clean now removes autogenerated docs.
Updating the field list.
affected #:  2 files

diff -r ddfce85c4061e0b575cec8a427b6556f79c5f7c4 -r 0b738d234d33e5cf2adb6fe9d27804e549887837 Makefile
--- a/Makefile
+++ b/Makefile
@@ -35,6 +35,7 @@
 
 clean:
 	-rm -rf $(BUILDDIR)/*
+	-rm -rf source/api/generated
 
 html:
 	$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html


diff -r ddfce85c4061e0b575cec8a427b6556f79c5f7c4 -r 0b738d234d33e5cf2adb6fe9d27804e549887837 source/field_list.rst
--- a/source/field_list.rst
+++ b/source/field_list.rst
@@ -1,3 +1,4 @@
+
 .. _field-list:
 
 Field List
@@ -20,6 +21,24 @@
 Universal Field List
 --------------------
 
+AbsDivB
++++++++
+
+   * Units: :math:`Gauss\/cm^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _AbsDivB(field,data):
+      return na.abs(data['divb'])
+  
+
+**Convert Function Source**
+
+No source available.
+
 AbsDivV
 +++++++
 
@@ -38,42 +57,6 @@
 
 No source available.
 
-AngularMomentum
-+++++++++++++++
-
-   * Units: :math:`\rm{g}\/\rm{cm}^2/\rm{s}`
-   * Particle Type: False
-
-**Field Source**
-
-.. code-block:: python
-
-  def _AngularMomentum(field, data):
-      return data["CellMass"] * data["SpecificAngularMomentum"]
-  
-
-**Convert Function Source**
-
-No source available.
-
-AngularMomentumMSUNKMSMPC
-+++++++++++++++++++++++++
-
-   * Units: :math:`M_{\odot}\rm{km}\rm{Mpc}/\rm{s}`
-   * Particle Type: False
-
-**Field Source**
-
-.. code-block:: python
-
-  def _AngularMomentum(field, data):
-      return data["CellMass"] * data["SpecificAngularMomentum"]
-  
-
-**Convert Function Source**
-
-No source available.
-
 AngularMomentumX
 ++++++++++++++++
 
@@ -156,6 +139,104 @@
 
 No source available.
 
+BMagnitude
+++++++++++
+
+   * Units: :math:`Gauss`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _BMagnitude(field,data):
+      return na.sqrt((data['magx']**2+data['magy']**2+data['magz']**2))
+  
+
+**Convert Function Source**
+
+No source available.
+
+BaroclinicVorticityMagnitude
+++++++++++++++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _BaroclinicVorticityMagnitude(field, data):
+      return na.sqrt(data["BaroclinicVorticityX"]**2 +
+                     data["BaroclinicVorticityY"]**2 +
+                     data["BaroclinicVorticityZ"]**2)
+  
+
+**Convert Function Source**
+
+No source available.
+
+BaroclinicVorticityX
+++++++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _BaroclinicVorticityX(field, data):
+      rho2 = data["Density"].astype('float64')**2
+      return (data["gradPressureY"] * data["gradDensityZ"] -
+              data["gradPressureZ"] * data["gradDensityY"]) / rho2
+  
+
+**Convert Function Source**
+
+No source available.
+
+BaroclinicVorticityY
+++++++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _BaroclinicVorticityY(field, data):
+      rho2 = data["Density"].astype('float64')**2
+      return (data["gradPressureZ"] * data["gradDensityX"] -
+              data["gradPressureX"] * data["gradDensityZ"]) / rho2
+  
+
+**Convert Function Source**
+
+No source available.
+
+BaroclinicVorticityZ
+++++++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _BaroclinicVorticityZ(field, data):
+      rho2 = data["Density"].astype('float64')**2
+      return (data["gradPressureX"] * data["gradDensityY"] -
+              data["gradPressureY"] * data["gradDensityX"]) / rho2
+  
+
+**Convert Function Source**
+
+No source available.
+
 Baryon_Overdensity
 ++++++++++++++++++
 
@@ -366,7 +447,7 @@
 .. code-block:: python
 
   def _Contours(field, data):
-      return na.ones(data["Density"].shape)*-1
+      return -na.ones_like(data["Ones"])
   
 
 **Convert Function Source**
@@ -713,6 +794,28 @@
 
 No source available.
 
+JeansNumber
++++++++++++
+
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _JeansNumber(field,data):
+      lj = na.sqrt(data['SoundSpeed']**2*3.141593/(6.673e-8*data['Density']))
+      return lj / data['dx']
+  
+
+**Convert Function Source**
+
+.. code-block:: python
+
+  def _ConvertCGS(data):
+      return data.convert("cm")**-1.0
+  
+
 MachNumber
 ++++++++++
 
@@ -787,6 +890,23 @@
 
 No source available.
 
+NormAbsDivB
++++++++++++
+
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _NormAbsDivB(field,data):
+      return na.abs(data['divb'])*data['dx']/data['BMagnitude']
+  
+
+**Convert Function Source**
+
+No source available.
+
 Ones
 ++++
 
@@ -1240,6 +1360,36 @@
       return data.convert("cm")
   
 
+ParticleSpecificAngularMomentumXKMSMPC
+++++++++++++++++++++++++++++++++++++++
+
+   * Units: :math:`\rm{cm}^2/\rm{s}`
+   * Particle Type: True
+
+**Field Source**
+
+.. code-block:: python
+
+  def _ParticleSpecificAngularMomentumX(field, data):
+      if data.has_field_parameter("bulk_velocity"):
+          bv = data.get_field_parameter("bulk_velocity")
+      else: bv = na.zeros(3, dtype='float64')
+      center = data.get_field_parameter('center')
+      y = data["particle_position_y"] - center[1]
+      z = data["particle_position_z"] - center[2]
+      yv = data["particle_velocity_y"] - bv[1]
+      zv = data["particle_velocity_z"] - bv[2]
+      return yv*z - zv*y
+  
+
+**Convert Function Source**
+
+.. code-block:: python
+
+  def _convertSpecificAngularMomentumKMSMPC(data):
+      return data.convert("mpc")/1e5
+  
+
 ParticleSpecificAngularMomentumY
 ++++++++++++++++++++++++++++++++
 
@@ -1270,6 +1420,36 @@
       return data.convert("cm")
   
 
+ParticleSpecificAngularMomentumYKMSMPC
+++++++++++++++++++++++++++++++++++++++
+
+   * Units: :math:`\rm{cm}^2/\rm{s}`
+   * Particle Type: True
+
+**Field Source**
+
+.. code-block:: python
+
+  def _ParticleSpecificAngularMomentumY(field, data):
+      if data.has_field_parameter("bulk_velocity"):
+          bv = data.get_field_parameter("bulk_velocity")
+      else: bv = na.zeros(3, dtype='float64')
+      center = data.get_field_parameter('center')
+      x = data["particle_position_x"] - center[0]
+      z = data["particle_position_z"] - center[2]
+      xv = data["particle_velocity_x"] - bv[0]
+      zv = data["particle_velocity_z"] - bv[2]
+      return -(xv*z - zv*x)
+  
+
+**Convert Function Source**
+
+.. code-block:: python
+
+  def _convertSpecificAngularMomentumKMSMPC(data):
+      return data.convert("mpc")/1e5
+  
+
 ParticleSpecificAngularMomentumZ
 ++++++++++++++++++++++++++++++++
 
@@ -1300,6 +1480,36 @@
       return data.convert("cm")
   
 
+ParticleSpecificAngularMomentumZKMSMPC
+++++++++++++++++++++++++++++++++++++++
+
+   * Units: :math:`\rm{cm}^2/\rm{s}`
+   * Particle Type: True
+
+**Field Source**
+
+.. code-block:: python
+
+  def _ParticleSpecificAngularMomentumZ(field, data):
+      if data.has_field_parameter("bulk_velocity"):
+          bv = data.get_field_parameter("bulk_velocity")
+      else: bv = na.zeros(3, dtype='float64')
+      center = data.get_field_parameter('center')
+      x = data["particle_position_x"] - center[0]
+      y = data["particle_position_y"] - center[1]
+      xv = data["particle_velocity_x"] - bv[0]
+      yv = data["particle_velocity_y"] - bv[1]
+      return xv*y - yv*x
+  
+
+**Convert Function Source**
+
+.. code-block:: python
+
+  def _convertSpecificAngularMomentumKMSMPC(data):
+      return data.convert("mpc")/1e5
+  
+
 ParticleVelocityMagnitude
 +++++++++++++++++++++++++
 
@@ -1700,62 +1910,6 @@
 
 No source available.
 
-SpecificAngularMomentum
-+++++++++++++++++++++++
-
-   * Units: :math:`\rm{cm}^2/\rm{s}`
-   * Particle Type: False
-
-**Field Source**
-
-.. code-block:: python
-
-  def _SpecificAngularMomentum(field, data):
-      """
-      Calculate the angular velocity.  Returns a vector for each cell.
-      """
-      r_vec = obtain_rvec(data)
-      xv, yv, zv = obtain_velocities(data)
-      v_vec = na.array([xv,yv,zv], dtype='float64')
-      return na.cross(r_vec, v_vec, axis=0)
-  
-
-**Convert Function Source**
-
-.. code-block:: python
-
-  def _convertSpecificAngularMomentum(data):
-      return data.convert("cm")
-  
-
-SpecificAngularMomentumKMSMPC
-+++++++++++++++++++++++++++++
-
-   * Units: :math:`\rm{km}\rm{Mpc}/\rm{s}`
-   * Particle Type: False
-
-**Field Source**
-
-.. code-block:: python
-
-  def _SpecificAngularMomentum(field, data):
-      """
-      Calculate the angular velocity.  Returns a vector for each cell.
-      """
-      r_vec = obtain_rvec(data)
-      xv, yv, zv = obtain_velocities(data)
-      v_vec = na.array([xv,yv,zv], dtype='float64')
-      return na.cross(r_vec, v_vec, axis=0)
-  
-
-**Convert Function Source**
-
-.. code-block:: python
-
-  def _convertSpecificAngularMomentumKMSMPC(data):
-      return data.convert("mpc")/1e5
-  
-
 SpecificAngularMomentumX
 ++++++++++++++++++++++++
 
@@ -1950,6 +2104,361 @@
 
 No source available.
 
+VorticityGrowthMagnitude
+++++++++++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityGrowthMagnitude(field, data):
+      result = na.sqrt(data["VorticityGrowthX"]**2 +
+                       data["VorticityGrowthY"]**2 +
+                       data["VorticityGrowthZ"]**2)
+      dot = na.zeros(result.shape)
+      for ax in "XYZ":
+          dot += data["Vorticity%s" % ax] * data["VorticityGrowth%s" % ax]
+      result = na.sign(dot) * result
+      return result
+  
+
+**Convert Function Source**
+
+No source available.
+
+VorticityGrowthMagnitudeABS
++++++++++++++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityGrowthMagnitudeABS(field, data):
+      return na.sqrt(data["VorticityGrowthX"]**2 +
+                     data["VorticityGrowthY"]**2 +
+                     data["VorticityGrowthZ"]**2)
+  
+
+**Convert Function Source**
+
+No source available.
+
+VorticityGrowthTimescale
+++++++++++++++++++++++++
+
+   * Units: :math:`\rm{s}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityGrowthTimescale(field, data):
+      domegax_dt = data["VorticityX"] / data["VorticityGrowthX"]
+      domegay_dt = data["VorticityY"] / data["VorticityGrowthY"]
+      domegaz_dt = data["VorticityZ"] / data["VorticityGrowthZ"]
+      return na.sqrt(domegax_dt**2 + domegay_dt**2 + domegaz_dt)
+  
+
+**Convert Function Source**
+
+No source available.
+
+VorticityGrowthX
+++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-2}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityGrowthX(field, data):
+      return -data["VorticityStretchingX"] - data["BaroclinicVorticityX"]
+  
+
+**Convert Function Source**
+
+No source available.
+
+VorticityGrowthY
+++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-2}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityGrowthY(field, data):
+      return -data["VorticityStretchingY"] - data["BaroclinicVorticityY"]
+  
+
+**Convert Function Source**
+
+No source available.
+
+VorticityGrowthZ
+++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-2}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityGrowthZ(field, data):
+      return -data["VorticityStretchingZ"] - data["BaroclinicVorticityZ"]
+  
+
+**Convert Function Source**
+
+No source available.
+
+VorticityMagnitude
+++++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityMagnitude(field, data):
+      return na.sqrt(data["VorticityX"]**2 +
+                     data["VorticityY"]**2 +
+                     data["VorticityZ"]**2)
+  
+
+**Convert Function Source**
+
+No source available.
+
+VorticityRPGrowthMagnitude
+++++++++++++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityGrowthMagnitude(field, data):
+      result = na.sqrt(data["VorticityGrowthX"]**2 +
+                       data["VorticityGrowthY"]**2 +
+                       data["VorticityGrowthZ"]**2)
+      dot = na.zeros(result.shape)
+      for ax in "XYZ":
+          dot += data["Vorticity%s" % ax] * data["VorticityGrowth%s" % ax]
+      result = na.sign(dot) * result
+      return result
+  
+
+**Convert Function Source**
+
+No source available.
+
+VorticityRPGrowthMagnitudeABS
++++++++++++++++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityRPGrowthMagnitudeABS(field, data):
+      return na.sqrt(data["VorticityRPGrowthX"]**2 +
+                     data["VorticityRPGrowthY"]**2 +
+                     data["VorticityRPGrowthZ"]**2)
+  
+
+**Convert Function Source**
+
+No source available.
+
+VorticityRPGrowthTimescale
+++++++++++++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityRPGrowthTimescale(field, data):
+      domegax_dt = data["VorticityX"] / data["VorticityRPGrowthX"]
+      domegay_dt = data["VorticityY"] / data["VorticityRPGrowthY"]
+      domegaz_dt = data["VorticityZ"] / data["VorticityRPGrowthZ"]
+      return na.sqrt(domegax_dt**2 + domegay_dt**2 + domegaz_dt**2)
+  
+
+**Convert Function Source**
+
+No source available.
+
+VorticityRPGrowthX
+++++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityRPGrowthX(field, data):
+      return -data["VorticityStretchingX"] - data["BaroclinicVorticityX"] \
+             -data["VorticityRadPressureX"]
+  
+
+**Convert Function Source**
+
+No source available.
+
+VorticityRPGrowthY
+++++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityRPGrowthY(field, data):
+      return -data["VorticityStretchingY"] - data["BaroclinicVorticityY"] \
+             -data["VorticityRadPressureY"]
+  
+
+**Convert Function Source**
+
+No source available.
+
+VorticityRPGrowthZ
+++++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityRPGrowthZ(field, data):
+      return -data["VorticityStretchingZ"] - data["BaroclinicVorticityZ"] \
+             -data["VorticityRadPressureZ"]
+  
+
+**Convert Function Source**
+
+No source available.
+
+VorticityRadPressureMagnitude
++++++++++++++++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityRadPressureMagnitude(field, data):
+      return na.sqrt(data["VorticityRadPressureX"]**2 +
+                     data["VorticityRadPressureY"]**2 +
+                     data["VorticityRadPressureZ"]**2)
+  
+
+**Convert Function Source**
+
+No source available.
+
+VorticityRadPressureX
++++++++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityRadPressureX(field, data):
+      rho = data["Density"].astype('float64')
+      return (data["RadAccel2"] * data["gradDensityZ"] -
+              data["RadAccel3"] * data["gradDensityY"]) / rho
+  
+
+**Convert Function Source**
+
+.. code-block:: python
+
+  def _convertRadAccel(data):
+      return data.convert("x-velocity")/data.convert("Time")
+  
+
+VorticityRadPressureY
++++++++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityRadPressureY(field, data):
+      rho = data["Density"].astype('float64')
+      return (data["RadAccel3"] * data["gradDensityX"] -
+              data["RadAccel1"] * data["gradDensityZ"]) / rho
+  
+
+**Convert Function Source**
+
+.. code-block:: python
+
+  def _convertRadAccel(data):
+      return data.convert("x-velocity")/data.convert("Time")
+  
+
+VorticityRadPressureZ
++++++++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityRadPressureZ(field, data):
+      rho = data["Density"].astype('float64')
+      return (data["RadAccel1"] * data["gradDensityY"] -
+              data["RadAccel2"] * data["gradDensityX"]) / rho
+  
+
+**Convert Function Source**
+
+.. code-block:: python
+
+  def _convertRadAccel(data):
+      return data.convert("x-velocity")/data.convert("Time")
+  
+
 VorticitySquared
 ++++++++++++++++
 
@@ -2008,6 +2517,191 @@
       return data.convert("cm")**-2.0
   
 
+VorticityStretchingMagnitude
+++++++++++++++++++++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityStretchingMagnitude(field, data):
+      return na.sqrt(data["VorticityStretchingX"]**2 +
+                     data["VorticityStretchingY"]**2 +
+                     data["VorticityStretchingZ"]**2)
+  
+
+**Convert Function Source**
+
+No source available.
+
+VorticityStretchingX
+++++++++++++++++++++
+
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityStretchingX(field, data):
+      return data["DivV"] * data["VorticityX"]
+  
+
+**Convert Function Source**
+
+No source available.
+
+VorticityStretchingY
+++++++++++++++++++++
+
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityStretchingY(field, data):
+      return data["DivV"] * data["VorticityY"]
+  
+
+**Convert Function Source**
+
+No source available.
+
+VorticityStretchingZ
+++++++++++++++++++++
+
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityStretchingZ(field, data):
+      return data["DivV"] * data["VorticityZ"]
+  
+
+**Convert Function Source**
+
+No source available.
+
+VorticityX
+++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityX(field, data):
+      # We need to set up stencils
+      if data.pf["HydroMethod"] == 2:
+          sl_left = slice(None,-2,None)
+          sl_right = slice(1,-1,None)
+          div_fac = 1.0
+      else:
+          sl_left = slice(None,-2,None)
+          sl_right = slice(2,None,None)
+          div_fac = 2.0
+      new_field = na.zeros(data["z-velocity"].shape, dtype='float64')
+      new_field[1:-1,1:-1,1:-1] = (data["z-velocity"][1:-1,sl_right,1:-1] -
+                                   data["z-velocity"][1:-1,sl_left,1:-1]) \
+                                   / (div_fac*data["dy"].flat[0])
+      new_field[1:-1,1:-1,1:-1] -= (data["y-velocity"][1:-1,1:-1,sl_right] -
+                                    data["y-velocity"][1:-1,1:-1,sl_left]) \
+                                    / (div_fac*data["dz"].flat[0])
+      return new_field
+  
+
+**Convert Function Source**
+
+.. code-block:: python
+
+  def _convertVorticity(data):
+      return 1.0/data.convert("cm")
+  
+
+VorticityY
+++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityY(field, data):
+      # We need to set up stencils
+      if data.pf["HydroMethod"] == 2:
+          sl_left = slice(None,-2,None)
+          sl_right = slice(1,-1,None)
+          div_fac = 1.0
+      else:
+          sl_left = slice(None,-2,None)
+          sl_right = slice(2,None,None)
+          div_fac = 2.0
+      new_field = na.zeros(data["z-velocity"].shape, dtype='float64')
+      new_field[1:-1,1:-1,1:-1] = (data["x-velocity"][1:-1,1:-1,sl_right] -
+                                   data["x-velocity"][1:-1,1:-1,sl_left]) \
+                                   / (div_fac*data["dz"].flat[0])
+      new_field[1:-1,1:-1,1:-1] -= (data["z-velocity"][sl_right,1:-1,1:-1] -
+                                    data["z-velocity"][sl_left,1:-1,1:-1]) \
+                                    / (div_fac*data["dx"].flat[0])
+      return new_field
+  
+
+**Convert Function Source**
+
+.. code-block:: python
+
+  def _convertVorticity(data):
+      return 1.0/data.convert("cm")
+  
+
+VorticityZ
+++++++++++
+
+   * Units: :math:`\rm{s}^{-1}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _VorticityZ(field, data):
+      # We need to set up stencils
+      if data.pf["HydroMethod"] == 2:
+          sl_left = slice(None,-2,None)
+          sl_right = slice(1,-1,None)
+          div_fac = 1.0
+      else:
+          sl_left = slice(None,-2,None)
+          sl_right = slice(2,None,None)
+          div_fac = 2.0
+      new_field = na.zeros(data["x-velocity"].shape, dtype='float64')
+      new_field[1:-1,1:-1,1:-1] = (data["y-velocity"][sl_right,1:-1,1:-1] -
+                                   data["y-velocity"][sl_left,1:-1,1:-1]) \
+                                   / (div_fac*data["dx"].flat[0])
+      new_field[1:-1,1:-1,1:-1] -= (data["x-velocity"][1:-1,sl_right,1:-1] -
+                                    data["x-velocity"][1:-1,sl_left,1:-1]) \
+                                    / (div_fac*data["dy"].flat[0])
+      return new_field
+  
+
+**Convert Function Source**
+
+.. code-block:: python
+
+  def _convertVorticity(data):
+      return 1.0/data.convert("cm")
+  
+
 WeakLensingConvergence
 ++++++++++++++++++++++
 
@@ -2123,6 +2817,256 @@
 
 No source available.
 
+gradDensityMagnitude
+++++++++++++++++++++
+
+   * Units: :math:`\rm{g}/\rm{cm}^{4}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _gradDensityMagnitude(field, data):
+      return na.sqrt(data["gradDensityX"]**2 +
+                     data["gradDensityY"]**2 +
+                     data["gradDensityZ"]**2)
+  
+
+**Convert Function Source**
+
+No source available.
+
+gradDensityX
+++++++++++++
+
+   * Units: :math:`\rm{g}/\rm{cm}^{4}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _gradDensityX(field, data):
+      # We need to set up stencils
+      if data.pf["HydroMethod"] == 2:
+          sl_left = slice(None,-2,None)
+          sl_right = slice(1,-1,None)
+          div_fac = 1.0
+      else:
+          sl_left = slice(None,-2,None)
+          sl_right = slice(2,None,None)
+          div_fac = 2.0
+      new_field = na.zeros(data["Density"].shape, dtype='float64')
+      ds = div_fac * data['dx'].flat[0]
+      new_field[1:-1,1:-1,1:-1]  = data["Density"][sl_right,1:-1,1:-1]/ds
+      new_field[1:-1,1:-1,1:-1] -= data["Density"][sl_left ,1:-1,1:-1]/ds
+      return new_field
+  
+
+**Convert Function Source**
+
+.. code-block:: python
+
+  def _convertgradDensity(data):
+      return 1.0/data.convert("cm")
+  
+
+gradDensityY
+++++++++++++
+
+   * Units: :math:`\rm{g}/\rm{cm}^{4}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _gradDensityY(field, data):
+      # We need to set up stencils
+      if data.pf["HydroMethod"] == 2:
+          sl_left = slice(None,-2,None)
+          sl_right = slice(1,-1,None)
+          div_fac = 1.0
+      else:
+          sl_left = slice(None,-2,None)
+          sl_right = slice(2,None,None)
+          div_fac = 2.0
+      new_field = na.zeros(data["Density"].shape, dtype='float64')
+      ds = div_fac * data['dy'].flat[0]
+      new_field[1:-1,1:-1,1:-1]  = data["Density"][1:-1,sl_right,1:-1]/ds
+      new_field[1:-1,1:-1,1:-1] -= data["Density"][1:-1,sl_left ,1:-1]/ds
+      return new_field
+  
+
+**Convert Function Source**
+
+.. code-block:: python
+
+  def _convertgradDensity(data):
+      return 1.0/data.convert("cm")
+  
+
+gradDensityZ
+++++++++++++
+
+   * Units: :math:`\rm{g}/\rm{cm}^{4}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _gradDensityZ(field, data):
+      # We need to set up stencils
+      if data.pf["HydroMethod"] == 2:
+          sl_left = slice(None,-2,None)
+          sl_right = slice(1,-1,None)
+          div_fac = 1.0
+      else:
+          sl_left = slice(None,-2,None)
+          sl_right = slice(2,None,None)
+          div_fac = 2.0
+      new_field = na.zeros(data["Density"].shape, dtype='float64')
+      ds = div_fac * data['dz'].flat[0]
+      new_field[1:-1,1:-1,1:-1]  = data["Density"][1:-1,1:-1,sl_right]/ds
+      new_field[1:-1,1:-1,1:-1] -= data["Density"][1:-1,1:-1,sl_left ]/ds
+      return new_field
+  
+
+**Convert Function Source**
+
+.. code-block:: python
+
+  def _convertgradDensity(data):
+      return 1.0/data.convert("cm")
+  
+
+gradPressureMagnitude
++++++++++++++++++++++
+
+   * Units: :math:`\rm{dyne}/\rm{cm}^{3}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _gradPressureMagnitude(field, data):
+      return na.sqrt(data["gradPressureX"]**2 +
+                     data["gradPressureY"]**2 +
+                     data["gradPressureZ"]**2)
+  
+
+**Convert Function Source**
+
+No source available.
+
+gradPressureX
++++++++++++++
+
+   * Units: :math:`\rm{dyne}/\rm{cm}^{3}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _gradPressureX(field, data):
+      # We need to set up stencils
+      if data.pf["HydroMethod"] == 2:
+          sl_left = slice(None,-2,None)
+          sl_right = slice(1,-1,None)
+          div_fac = 1.0
+      else:
+          sl_left = slice(None,-2,None)
+          sl_right = slice(2,None,None)
+          div_fac = 2.0
+      new_field = na.zeros(data["Pressure"].shape, dtype='float64')
+      ds = div_fac * data['dx'].flat[0]
+      new_field[1:-1,1:-1,1:-1]  = data["Pressure"][sl_right,1:-1,1:-1]/ds
+      new_field[1:-1,1:-1,1:-1] -= data["Pressure"][sl_left ,1:-1,1:-1]/ds
+      return new_field
+  
+
+**Convert Function Source**
+
+.. code-block:: python
+
+  def _convertgradPressure(data):
+      return 1.0/data.convert("cm")
+  
+
+gradPressureY
++++++++++++++
+
+   * Units: :math:`\rm{dyne}/\rm{cm}^{3}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _gradPressureY(field, data):
+      # We need to set up stencils
+      if data.pf["HydroMethod"] == 2:
+          sl_left = slice(None,-2,None)
+          sl_right = slice(1,-1,None)
+          div_fac = 1.0
+      else:
+          sl_left = slice(None,-2,None)
+          sl_right = slice(2,None,None)
+          div_fac = 2.0
+      new_field = na.zeros(data["Pressure"].shape, dtype='float64')
+      ds = div_fac * data['dy'].flat[0]
+      new_field[1:-1,1:-1,1:-1]  = data["Pressure"][1:-1,sl_right,1:-1]/ds
+      new_field[1:-1,1:-1,1:-1] -= data["Pressure"][1:-1,sl_left ,1:-1]/ds
+      return new_field
+  
+
+**Convert Function Source**
+
+.. code-block:: python
+
+  def _convertgradPressure(data):
+      return 1.0/data.convert("cm")
+  
+
+gradPressureZ
++++++++++++++
+
+   * Units: :math:`\rm{dyne}/\rm{cm}^{3}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _gradPressureZ(field, data):
+      # We need to set up stencils
+      if data.pf["HydroMethod"] == 2:
+          sl_left = slice(None,-2,None)
+          sl_right = slice(1,-1,None)
+          div_fac = 1.0
+      else:
+          sl_left = slice(None,-2,None)
+          sl_right = slice(2,None,None)
+          div_fac = 2.0
+      new_field = na.zeros(data["Pressure"].shape, dtype='float64')
+      ds = div_fac * data['dz'].flat[0]
+      new_field[1:-1,1:-1,1:-1]  = data["Pressure"][1:-1,1:-1,sl_right]/ds
+      new_field[1:-1,1:-1,1:-1] -= data["Pressure"][1:-1,1:-1,sl_left ]/ds
+      return new_field
+  
+
+**Convert Function Source**
+
+.. code-block:: python
+
+  def _convertgradPressure(data):
+      return 1.0/data.convert("cm")
+  
+
 particle_density
 ++++++++++++++++
 
@@ -2164,7 +3108,7 @@
 .. code-block:: python
 
   def _Contours(field, data):
-      return na.ones(data["Density"].shape)*-1
+      return -na.ones_like(data["Ones"])
   
 
 **Convert Function Source**
@@ -2482,8 +3426,8 @@
 
 No source available.
 
-Comoving_Metal_Density
-++++++++++++++++++++++
+Comoving_MetalSNIa_Density
+++++++++++++++++++++++++++
 
    * Particle Type: False
 
@@ -2501,8 +3445,8 @@
 
 No source available.
 
-Comoving_PreShock_Density
-+++++++++++++++++++++++++
+Comoving_Metal_Density
+++++++++++++++++++++++
 
    * Particle Type: False
 
@@ -2520,6 +3464,25 @@
 
 No source available.
 
+Comoving_PreShock_Density
++++++++++++++++++++++++++
+
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _SpeciesComovingDensity(field, data):
+      sp = field.name.split("_")[0] + "_Density"
+      ef = (1.0 + data.pf.current_redshift)**3.0
+      return data[sp] / ef
+  
+
+**Convert Function Source**
+
+No source available.
+
 DII_Fraction
 ++++++++++++
 
@@ -3110,6 +4073,43 @@
 
 No source available.
 
+MetalSNIa_Fraction
+++++++++++++++++++
+
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _SpeciesFraction(field, data):
+      sp = field.name.split("_")[0] + "_Density"
+      return data[sp] / data["Density"]
+  
+
+**Convert Function Source**
+
+No source available.
+
+MetalSNIa_Mass
+++++++++++++++
+
+   * Units: :math:`\rm{g}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _SpeciesMass(field, data):
+      sp = field.name.split("_")[0] + "_Density"
+      return data[sp] * data["CellVolume"]
+  
+
+**Convert Function Source**
+
+No source available.
+
 Metal_Fraction
 ++++++++++++++
 
@@ -3346,6 +4346,25 @@
 
 No source available.
 
+RadiationAcceleration
++++++++++++++++++++++
+
+   * Units: :math:`\rm{cm} \rm{s}^{-2}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _RadiationAccelerationMagnitude(field, data):
+      return ( data["RadAccel1"]**2 + data["RadAccel2"]**2 +
+               data["RadAccel3"]**2 )**(1.0/2.0)
+  
+
+**Convert Function Source**
+
+No source available.
+
 StarAgeYears
 ++++++++++++
 
@@ -3870,27 +4889,15 @@
 Density
 +++++++
 
-   * Particle Type: False
-
-**Field Source**
-
-No source available.
-
-Pressure
-++++++++
-
-   * Units: :math:`\rm{dyne}/\rm{cm}^{2}`
-   * Particle Type: False
-
-**Field Source**
-
-.. code-block:: python
-
-  def _Pressure(field,data):
-      """M{(Gamma-1.0)*e, where e is thermal energy density
-         NB: this will need to be modified for radiation
-      """
-      return (data.pf["Gamma"] - 1.0)*data["ThermalEnergy"]
+   * Units: :math:`\rm{g}/\rm{cm}^3`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
   
 
 **Convert Function Source**
@@ -3900,43 +4907,14 @@
 Temperature
 +++++++++++
 
-   * Units: :math:`\rm{Kelvin}`
-   * Particle Type: False
-
-**Field Source**
-
-.. code-block:: python
-
-  def _Temperature(field,data):
-      return (data.pf["Gamma"]-1.0)*data.pf["mu"]*mh*data["ThermalEnergy"]/(kboltz*data["Density"])
-  
-
-**Convert Function Source**
-
-No source available.
-
-ThermalEnergy
-+++++++++++++
-
-   * Units: :math:`\rm{ergs}/\rm{cm^3}`
-   * Particle Type: False
-
-**Field Source**
-
-.. code-block:: python
-
-  def _ThermalEnergy(field, data):
-      """generate thermal (gas energy). Dual Energy Formalism was
-          implemented by Stella, but this isn't how it's called, so I'll
-          leave that commented out for now.
-      """
-      #if data.pf["DualEnergyFormalism"]:
-      #    return data["GasEnergy"]
-      #else:
-      return data["TotalEnergy"] - 0.5 * data["density"] * (
-          data["x-velocity"]**2.0
-          + data["y-velocity"]**2.0
-          + data["z-velocity"]**2.0 )
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
   
 
 **Convert Function Source**
@@ -3946,31 +4924,19 @@
 TotalEnergy
 +++++++++++
 
-   * Particle Type: False
-
-**Field Source**
-
-No source available.
-
-density
-+++++++
-
-   * Units: :math:`\rm{g}/\rm{cm}^3`
-   * Projected Units: :math:`\rm{g}/\rm{cm}^2`
-   * Particle Type: False
-
-**Field Source**
-
-No source available.
-
-eden
-++++
-
    * Units: :math:`\rm{erg}/\rm{cm}^3`
    * Particle Type: False
 
 **Field Source**
 
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
+  
+
+**Convert Function Source**
+
 No source available.
 
 particle_angmomen_x
@@ -4309,162 +5275,108 @@
 
 No source available.
 
-temperature
-+++++++++++
-
-   * Particle Type: False
-
-**Field Source**
-
-No source available.
-
 x-momentum
 ++++++++++
 
-   * Particle Type: False
-
-**Field Source**
+   * Units: :math:`\rm{g}/\rm{cm^2\ s}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
+  
+
+**Convert Function Source**
 
 No source available.
 
 x-velocity
 ++++++++++
 
-   * Units: :math:`\rm{cm}/\rm{s}`
-   * Particle Type: False
-
-**Field Source**
-
-.. code-block:: python
-
-  def _xVelocity(field, data):
-      """generate x-velocity from x-momentum and density
-  
-      """
-      return data["xmom"]/data["density"]
-  
-
-**Convert Function Source**
-
-No source available.
-
-xmom
-++++
-
-   * Units: :math:`\rm{g}/\rm{cm^2\ s}`
-   * Particle Type: False
-
-**Field Source**
-
-No source available.
-
-xvel
-++++
-
-   * Particle Type: False
-
-**Field Source**
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
+  
+
+**Convert Function Source**
 
 No source available.
 
 y-momentum
 ++++++++++
 
-   * Particle Type: False
-
-**Field Source**
+   * Units: :math:`\rm{gm}/\rm{cm^2\ s}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
+  
+
+**Convert Function Source**
 
 No source available.
 
 y-velocity
 ++++++++++
 
-   * Units: :math:`\rm{cm}/\rm{s}`
-   * Particle Type: False
-
-**Field Source**
-
-.. code-block:: python
-
-  def _yVelocity(field,data):
-      """generate y-velocity from y-momentum and density
-  
-      """
-      #try:
-      #    return data["xvel"]
-      #except KeyError:
-      return data["ymom"]/data["density"]
-  
-
-**Convert Function Source**
-
-No source available.
-
-ymom
-++++
-
-   * Units: :math:`\rm{gm}/\rm{cm^2\ s}`
-   * Particle Type: False
-
-**Field Source**
-
-No source available.
-
-yvel
-++++
-
-   * Particle Type: False
-
-**Field Source**
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
+  
+
+**Convert Function Source**
 
 No source available.
 
 z-momentum
 ++++++++++
 
-   * Particle Type: False
-
-**Field Source**
+   * Units: :math:`\rm{g}/\rm{cm^2\ s}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
+  
+
+**Convert Function Source**
 
 No source available.
 
 z-velocity
 ++++++++++
 
-   * Units: :math:`\rm{cm}/\rm{s}`
-   * Particle Type: False
-
-**Field Source**
-
-.. code-block:: python
-
-  def _zVelocity(field,data):
-      """generate z-velocity from z-momentum and density
-  
-      """
-      return data["zmom"]/data["density"]
-  
-
-**Convert Function Source**
-
-No source available.
-
-zmom
-++++
-
-   * Units: :math:`\rm{g}/\rm{cm^2\ s}`
-   * Particle Type: False
-
-**Field Source**
-
-No source available.
-
-zvel
-++++
-
-   * Particle Type: False
-
-**Field Source**
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
+  
+
+**Convert Function Source**
 
 No source available.
 
@@ -4488,6 +5400,23 @@
 
 No source available.
 
+DII_Fraction
+++++++++++++
+
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
+  
+
+**Convert Function Source**
+
+No source available.
+
 DI_Density
 ++++++++++
 
@@ -4505,6 +5434,23 @@
 
 No source available.
 
+DI_Fraction
++++++++++++
+
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
+  
+
+**Convert Function Source**
+
+No source available.
+
 Density
 +++++++
 
@@ -4540,6 +5486,23 @@
 
 No source available.
 
+Electron_Fraction
++++++++++++++++++
+
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
+  
+
+**Convert Function Source**
+
+No source available.
+
 Flame_Density
 +++++++++++++
 
@@ -4577,7 +5540,41 @@
 GasEnergy
 +++++++++
 
-   * Units: :math:`\rm{erg}/\rm{g}`
+   * Units: :math:`\rm{ergs}/\rm{g}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _GasEnergy(fields, data) :
+      return data["ThermalEnergy"]
+  
+
+**Convert Function Source**
+
+No source available.
+
+H2II_Density
+++++++++++++
+
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _dens(field, data):
+          return data[fname] * data['Density']
+  
+
+**Convert Function Source**
+
+No source available.
+
+H2II_Fraction
++++++++++++++
+
    * Particle Type: False
 
 **Field Source**
@@ -4592,8 +5589,8 @@
 
 No source available.
 
-H2II_Density
-++++++++++++
+H2I_Density
++++++++++++
 
    * Particle Type: False
 
@@ -4609,8 +5606,25 @@
 
 No source available.
 
-H2I_Density
-+++++++++++
+H2I_Fraction
+++++++++++++
+
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
+  
+
+**Convert Function Source**
+
+No source available.
+
+HD_Density
+++++++++++
 
    * Particle Type: False
 
@@ -4626,8 +5640,25 @@
 
 No source available.
 
-HD_Density
-++++++++++
+HD_Fraction
++++++++++++
+
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
+  
+
+**Convert Function Source**
+
+No source available.
+
+HII_Density
++++++++++++
 
    * Particle Type: False
 
@@ -4643,8 +5674,25 @@
 
 No source available.
 
-HII_Density
-+++++++++++
+HII_Fraction
+++++++++++++
+
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
+  
+
+**Convert Function Source**
+
+No source available.
+
+HI_Density
+++++++++++
 
    * Particle Type: False
 
@@ -4660,7 +5708,24 @@
 
 No source available.
 
-HI_Density
+HI_Fraction
++++++++++++
+
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
+  
+
+**Convert Function Source**
+
+No source available.
+
+HM_Density
 ++++++++++
 
    * Particle Type: False
@@ -4677,8 +5742,25 @@
 
 No source available.
 
-HM_Density
-++++++++++
+HM_Fraction
++++++++++++
+
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
+  
+
+**Convert Function Source**
+
+No source available.
+
+HeIII_Density
++++++++++++++
 
    * Particle Type: False
 
@@ -4694,8 +5776,25 @@
 
 No source available.
 
-HeIII_Density
-+++++++++++++
+HeIII_Fraction
+++++++++++++++
+
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
+  
+
+**Convert Function Source**
+
+No source available.
+
+HeII_Density
+++++++++++++
 
    * Particle Type: False
 
@@ -4711,8 +5810,25 @@
 
 No source available.
 
-HeII_Density
-++++++++++++
+HeII_Fraction
++++++++++++++
+
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
+  
+
+**Convert Function Source**
+
+No source available.
+
+HeI_Density
++++++++++++
 
    * Particle Type: False
 
@@ -4728,17 +5844,17 @@
 
 No source available.
 
-HeI_Density
-+++++++++++
-
-   * Particle Type: False
-
-**Field Source**
-
-.. code-block:: python
-
-      def _dens(field, data):
-          return data[fname] * data['Density']
+HeI_Fraction
+++++++++++++
+
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
   
 
 **Convert Function Source**
@@ -4784,6 +5900,24 @@
       return 1.0/1.989e33
   
 
+Pressure
+++++++++
+
+   * Units: :math:`\rm{erg}\//\/\rm{cm}^{3}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+      def _TranslationFunc(field, data):
+          return data[field_name]
+  
+
+**Convert Function Source**
+
+No source available.
+
 Temperature
 +++++++++++
 
@@ -4802,11 +5936,69 @@
 
 No source available.
 
+ThermalEnergy
++++++++++++++
+
+   * Units: :math:`\rm{ergs}/\rm{g}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _ThermalEnergy(fields, data) :
+      try:
+          return data["eint"]
+      except:
+          pass
+      try:
+          return data["Pressure"] / (data.pf["Gamma"] - 1.0) / data["Density"]
+      except:
+          pass
+      if data.has_field_parameter("mu") :
+          mu = data.get_field_parameter("mu")
+      else:
+          mu = 0.6
+      return kboltz*data["Density"]*data["Temperature"]/(mu*mh) / (data.pf["Gamma"] - 1.0)
+  
+
+**Convert Function Source**
+
+No source available.
+
 TotalEnergy
 +++++++++++
 
-   * Units: :math:`\rm{erg}/\rm{g}`
-   * Particle Type: False
+   * Units: :math:`\rm{ergs}/\rm{g}`
+   * Particle Type: False
+
+**Field Source**
+
+.. code-block:: python
+
+  def _TotalEnergy(fields, data) :
+      try:
+          etot = data["ener"]
+      except:
+          etot = data["ThermalEnergy"] + 0.5 * (
+              data["x-velocity"]**2.0 +
+              data["y-velocity"]**2.0 +
+              data["z-velocity"]**2.0)
+      try:
+          etot += data['magp']/data["Density"]
+      except:
+          pass
+      return etot
+  
+
+**Convert Function Source**
+
+No source available.
+
+particle_index
+++++++++++++++
+
+   * Particle Type: True
 
 **Field Source**
 
@@ -4820,10 +6012,11 @@
 
 No source available.
 
-particle_index
-++++++++++++++
-
-   * Particle Type: False
+particle_position_x
++++++++++++++++++++
+
+   * Units: :math:`\rm{cm}`
+   * Particle Type: True
 
 **Field Source**
 
@@ -4837,11 +6030,11 @@
 
 No source available.
 
-particle_position_x
+particle_position_y
 +++++++++++++++++++
 
    * Units: :math:`\rm{cm}`
-   * Particle Type: False
+   * Particle Type: True
 
 **Field Source**
 
@@ -4855,11 +6048,11 @@
 
 No source available.
 
-particle_position_y
+particle_position_z
 +++++++++++++++++++
 
    * Units: :math:`\rm{cm}`
-   * Particle Type: False
+   * Particle Type: True
 
 **Field Source**
 
@@ -4873,11 +6066,11 @@
 
 No source available.
 
-particle_position_z
+particle_velocity_x
 +++++++++++++++++++
 
-   * Units: :math:`\rm{cm}`
-   * Particle Type: False
+   * Units: :math:`\rm{cm}/\rm{s}`
+   * Particle Type: True
 
 **Field Source**
 
@@ -4891,11 +6084,11 @@
 
 No source available.
 
-particle_velocity_x
+particle_velocity_y
 +++++++++++++++++++
 
    * Units: :math:`\rm{cm}/\rm{s}`
-   * Particle Type: False
+   * Particle Type: True
 
 **Field Source**
 
@@ -4909,11 +6102,11 @@
 
 No source available.
 
-particle_velocity_y
+particle_velocity_z
 +++++++++++++++++++
 
    * Units: :math:`\rm{cm}/\rm{s}`
-   * Particle Type: False
+   * Particle Type: True
 
 **Field Source**
 
@@ -4927,8 +6120,8 @@
 
 No source available.
 
-particle_velocity_z
-+++++++++++++++++++
+x-velocity
+++++++++++
 
    * Units: :math:`\rm{cm}/\rm{s}`
    * Particle Type: False
@@ -4945,7 +6138,7 @@
 
 No source available.
 
-x-velocity
+y-velocity
 ++++++++++
 
    * Units: :math:`\rm{cm}/\rm{s}`
@@ -4963,7 +6156,7 @@
 
 No source available.
 
-y-velocity
+z-velocity
 ++++++++++
 
    * Units: :math:`\rm{cm}/\rm{s}`
@@ -4981,32 +6174,14 @@
 
 No source available.
 
-z-velocity
-++++++++++
-
-   * Units: :math:`\rm{cm}/\rm{s}`
-   * Particle Type: False
-
-**Field Source**
-
-.. code-block:: python
-
-      def _TranslationFunc(field, data):
-          return data[field_name]
-  
-
-**Convert Function Source**
-
-No source available.
-
 Nyx-Specific Field List
 --------------------------
 
 Density
 +++++++
 
-   * Units: :math:`\rm{g} / \rm{cm}^3`
-   * Projected Units: :math:`\rm{g} / \rm{cm}^2`
+   * Units: :math:`\rm{g}} / \rm{cm}^3`
+   * Projected Units: :math:`\rm{g}} / \rm{cm}^2`
    * Particle Type: False
 
 **Field Source**



https://bitbucket.org/yt_analysis/yt-doc/changeset/f048b52f0904/
changeset:   f048b52f0904
user:        ngoldbaum
date:        2012-07-16 22:07:51
summary:     Fixing more sphinx warnings and errors.  Updating the field list.
affected #:  5 files

diff -r 0b738d234d33e5cf2adb6fe9d27804e549887837 -r f048b52f0904faa4593f6c12b83438873a391407 source/analyzing/objects.rst
--- a/source/analyzing/objects.rst
+++ b/source/analyzing/objects.rst
@@ -59,8 +59,8 @@
 .. code-block:: python
 
    add_field("Density", function=TranslationFunc("density"), take_log=True,
-             units=r"\rm{g}} / \rm{cm}^3",
-             projected_units =r"\rm{g}} / \rm{cm}^2")
+             units=r"\rm{g} / \rm{cm}^3",
+             projected_units =r"\rm{g} / \rm{cm}^2")
 
 .. _accessing-fields:
 


diff -r 0b738d234d33e5cf2adb6fe9d27804e549887837 -r f048b52f0904faa4593f6c12b83438873a391407 source/changelog.rst
--- a/source/changelog.rst
+++ b/source/changelog.rst
@@ -8,7 +8,7 @@
 Version 2.3 
 -----------
 
-`(Docs) <http://yt-project.org/docs/2.3>`_
+`(Docs2.3) <http://yt-project.org/docs/2.3>`_
  * Multi-level parallelism
  * Real, extensive answer tests
  * Boolean data regions (see :ref:`boolean_data_objects`)
@@ -31,7 +31,7 @@
 Version 2.2
 -----------
 
-`(Docs) <http://yt-project.org/docs/2.2>`_
+`(Docs2.2) <http://yt-project.org/docs/2.2>`_
  * Command-line submission to the yt Hub (http://hub.yt-project.org/)
  * Initial release of the web-based GUI Reason, designed for efficient remote
    usage over SSH tunnels (see :ref:`reason`)
@@ -50,7 +50,7 @@
 Version 2.1
 -----------
 
-`(Docs) <http://yt-project.org/docs/2.1>`_
+`(Docs2.1) <http://yt-project.org/docs/2.1>`_
  * HEALpix-based volume rendering for 4pi, allsky volume rendering
  * libconfig is now included
  * SQLite3 and Forthon now included by default in the install script


diff -r 0b738d234d33e5cf2adb6fe9d27804e549887837 -r f048b52f0904faa4593f6c12b83438873a391407 source/faq/index.rst
--- a/source/faq/index.rst
+++ b/source/faq/index.rst
@@ -46,7 +46,7 @@
 be presented in linear space. Note that you have to instantiate pf.h before you
 can access pf.field info.
 
-.. _faq-handling-log-vs-linear-space
+.. _faq-handling-log-vs-linear-space:
 
 I added a new field to my simulation data, can ``yt`` see it?
 -------------------------------------------------------------


diff -r 0b738d234d33e5cf2adb6fe9d27804e549887837 -r f048b52f0904faa4593f6c12b83438873a391407 source/field_list.rst
--- a/source/field_list.rst
+++ b/source/field_list.rst
@@ -6180,8 +6180,8 @@
 Density
 +++++++
 
-   * Units: :math:`\rm{g}} / \rm{cm}^3`
-   * Projected Units: :math:`\rm{g}} / \rm{cm}^2`
+   * Units: :math:`\rm{g} / \rm{cm}^3`
+   * Projected Units: :math:`\rm{g} / \rm{cm}^2`
    * Particle Type: False
 
 **Field Source**


diff -r 0b738d234d33e5cf2adb6fe9d27804e549887837 -r f048b52f0904faa4593f6c12b83438873a391407 source/workshop.rst
--- a/source/workshop.rst
+++ b/source/workshop.rst
@@ -16,9 +16,9 @@
 
 .. youtube:: TsirUjX7fWs
 
-Slides are `available <https://bitbucket.org/MatthewTurk/yt.workshop2012.introduction/src/tip/workshop_intro.pdf>`_
+Slides are `available <https://bitbucket.org/MatthewTurk/yt.workshop2012.introduction/src/tip/workshop_intro.pdf>`__
 
-Repository is `available <https://bitbucket.org/MatthewTurk/yt.workshop2012.introduction/>`_
+Repository is `available <https://bitbucket.org/MatthewTurk/yt.workshop2012.introduction/>`__
 
 Objects in yt
 -------------
@@ -27,9 +27,9 @@
 
 .. youtube:: GMHeimeHdo4
 
-Slides are `available <https://bitbucket.org/brittonsmith/yt.workshop2012.objects/src/tip/output/yt_objects.pdf>`_
+Slides are `available <https://bitbucket.org/brittonsmith/yt.workshop2012.objects/src/tip/output/yt_objects.pdf>`__
 
-Repository is `available <https://bitbucket.org/brittonsmith/yt.workshop2012.objects>`_
+Repository is `available <https://bitbucket.org/brittonsmith/yt.workshop2012.objects>`__
 
 Visualization with yt
 ---------------------
@@ -38,9 +38,9 @@
 
 .. youtube:: jNWd4YUbcLY
 
-Slides are `available <https://bitbucket.org/sskory/yt.workshop2012.simpleviz/src/tip/SimpleViz.pdf>`_
+Slides are `available <https://bitbucket.org/sskory/yt.workshop2012.simpleviz/src/tip/SimpleViz.pdf>`__
 
-Repository is `available <https://bitbucket.org/sskory/yt.workshop2012.simpleviz/>`_
+Repository is `available <https://bitbucket.org/sskory/yt.workshop2012.simpleviz/>`__
 
 General Analysis in yt
 ----------------------
@@ -49,9 +49,9 @@
 
 .. youtube:: zUqSYpWPYDw
 
-Slides are `available <https://bitbucket.org/samskillman/yt.workshop2012.general_analysis/src/tip/output/yt_general_analysis.pdf>`_
+Slides are `available <https://bitbucket.org/samskillman/yt.workshop2012.general_analysis/src/tip/output/yt_general_analysis.pdf>`__
 
-Repository is `available <https://bitbucket.org/samskillman/yt.workshop2012.general_analysis/>`_
+Repository is `available <https://bitbucket.org/samskillman/yt.workshop2012.general_analysis/>`__
 
 Finding Your Way
 ----------------
@@ -60,9 +60,9 @@
 
 .. youtube:: hat3QAO4s-I
 
-Slides are `available <https://bitbucket.org/chummels/yt.workshop2012.findingyourway/src/tip/yt.workshop2012.findingyourway.pdf>`_
+Slides are `available <https://bitbucket.org/chummels/yt.workshop2012.findingyourway/src/tip/yt.workshop2012.findingyourway.pdf>`__
 
-Repository is `available <https://bitbucket.org/chummels/yt.workshop2012.findingyourway/>`_
+Repository is `available <https://bitbucket.org/chummels/yt.workshop2012.findingyourway/>`__
 
 Fields and Derived Quantities
 -----------------------------
@@ -71,9 +71,9 @@
 
 .. youtube:: NSwy8Lw1Uvk
 
-Slides are `available <https://bitbucket.org/MatthewTurk/yt.workshop2012.fields/src/tip/output/yt_fields.pdf>`_
+Slides are `available <https://bitbucket.org/MatthewTurk/yt.workshop2012.fields/src/tip/output/yt_fields.pdf>`__
 
-Repository is `available <https://bitbucket.org/MatthewTurk/yt.workshop2012.fields/>`_
+Repository is `available <https://bitbucket.org/MatthewTurk/yt.workshop2012.fields/>`__
 
 Parallelism in yt
 -----------------
@@ -82,9 +82,9 @@
 
 .. youtube:: QKWZ-jmqQCQ
 
-Slides are `available <https://bitbucket.org/samskillman/yt.workshop2012.parallelism/src/tip/yt_parallelism.pdf>`_
+Slides are `available <https://bitbucket.org/samskillman/yt.workshop2012.parallelism/src/tip/yt_parallelism.pdf>`__
 
-Repository is `available <https://bitbucket.org/samskillman/yt.workshop2012.parallelism>`_
+Repository is `available <https://bitbucket.org/samskillman/yt.workshop2012.parallelism>`__
 
 Advanced Viz hands-on
 ---------------------
@@ -93,9 +93,9 @@
 
 .. youtube:: MQEKXsTmrAs
 
-Slides are `available <https://bitbucket.org/jsoishi/yt.workshop2012.advanced_visualization/src/tip/output/advanced_visualization.pdf>`_
+Slides are `available <https://bitbucket.org/jsoishi/yt.workshop2012.advanced_visualization/src/tip/output/advanced_visualization.pdf>`__
 
-Repository is `available <https://bitbucket.org/jsoishi/yt.workshop2012.advanced_visualization>`_
+Repository is `available <https://bitbucket.org/jsoishi/yt.workshop2012.advanced_visualization>`__
 
 EPS Writer
 ----------
@@ -104,7 +104,7 @@
 
 .. youtube:: Xs_FzJ0ZRiU
 
-Slides are `available <https://bitbucket.org/jsoishi/yt.workshop2012.advanced_visualization/src/tip/output/eps-writer.pdf>`_
+Slides are `available <https://bitbucket.org/jsoishi/yt.workshop2012.advanced_visualization/src/tip/output/eps-writer.pdf>`__
 
 Repository not available.
 
@@ -115,9 +115,9 @@
 
 .. youtube:: Sg_G2QOcxz0
 
-Slides are `available <https://bitbucket.org/brittonsmith/yt.workshop2012.time-series/src/tip/output/time_series.pdf>`_
+Slides are `available <https://bitbucket.org/brittonsmith/yt.workshop2012.time-series/src/tip/output/time_series.pdf>`__
 
-Repository is `available <https://bitbucket.org/brittonsmith/yt.workshop2012.time-series/>`_
+Repository is `available <https://bitbucket.org/brittonsmith/yt.workshop2012.time-series/>`__
 
 Beginning Volume Rendering
 --------------------------
@@ -126,9 +126,9 @@
 
 .. youtube:: euV4KVm4nMw
 
-Slides are `available <https://bitbucket.org/chummels/yt.workshop2012.beginningvr/src/tip/yt.workshop2012.beginning_VR.pdf>`_
+Slides are `available <https://bitbucket.org/chummels/yt.workshop2012.beginningvr/src/tip/yt.workshop2012.beginning_VR.pdf>`__
 
-Repository is `available <https://bitbucket.org/chummels/yt.workshop2012.beginningvr/>`_
+Repository is `available <https://bitbucket.org/chummels/yt.workshop2012.beginningvr/>`__
 
 Advanced Volume Rendering
 -------------------------
@@ -137,9 +137,9 @@
 
 .. youtube:: zra79xb7BP4
 
-Slides are `available <https://bitbucket.org/samskillman/yt.workshop2012.advanced_rendering/src/tip/output/yt_advanced_rendering.pdf>`_
+Slides are `available <https://bitbucket.org/samskillman/yt.workshop2012.advanced_rendering/src/tip/output/yt_advanced_rendering.pdf>`__
 
-Repository is `available <https://bitbucket.org/samskillman/yt.workshop2012.advanced_rendering>`_
+Repository is `available <https://bitbucket.org/samskillman/yt.workshop2012.advanced_rendering>`__
 
 Using external tools with yt
 ----------------------------
@@ -148,9 +148,9 @@
 
 .. youtube:: q3_whMA1BQU
 
-Slides are `available <https://bitbucket.org/jzuhone/yt.external_analysis_examples/src/tip/yt_workshop_external_tools.pdf>`_
+Slides are `available <https://bitbucket.org/jzuhone/yt.external_analysis_examples/src/tip/yt_workshop_external_tools.pdf>`__
 
-Repository is `available <https://bitbucket.org/jzuhone/yt.external_analysis_examples/>`_
+Repository is `available <https://bitbucket.org/jzuhone/yt.external_analysis_examples/>`__
 
 Hands-On: Advanced Data Objects
 -------------------------------
@@ -159,9 +159,9 @@
 
 .. youtube:: _JlFsrqoEBI
 
-Slides are `available <https://bitbucket.org/sskory/yt.workshop2012.datacontainers/src/tip/DataContainers.pdf>`_
+Slides are `available <https://bitbucket.org/sskory/yt.workshop2012.datacontainers/src/tip/DataContainers.pdf>`__
 
-Repository is `available <https://bitbucket.org/sskory/yt.workshop2012.datacontainers>`_
+Repository is `available <https://bitbucket.org/sskory/yt.workshop2012.datacontainers>`__
 
 Clump Finding
 -------------
@@ -170,9 +170,9 @@
 
 .. youtube:: 19PCVyVj6oo
 
-Slides are `available <https://bitbucket.org/brittonsmith/yt.workshop2012.clump-finding/src/tip/clump_finding_full.pdf>`_
+Slides are `available <https://bitbucket.org/brittonsmith/yt.workshop2012.clump-finding/src/tip/clump_finding_full.pdf>`__
 
-Repository is `available <https://bitbucket.org/brittonsmith/yt.workshop2012.clump-finding/>`_
+Repository is `available <https://bitbucket.org/brittonsmith/yt.workshop2012.clump-finding/>`__
 
 DVCS with hg
 ------------
@@ -181,9 +181,9 @@
 
 .. youtube:: BjfUfcqSCYQ
 
-Slides are `available <https://bitbucket.org/MatthewTurk/yt.workshop2012.dvcs/src/tip/output/dvcs.pdf>`_
+Slides are `available <https://bitbucket.org/MatthewTurk/yt.workshop2012.dvcs/src/tip/output/dvcs.pdf>`__
 
-Repository is `available <https://bitbucket.org/MatthewTurk/yt.workshop2012.dvcs>`_
+Repository is `available <https://bitbucket.org/MatthewTurk/yt.workshop2012.dvcs>`__
 
 What We Aren't Showing You
 --------------------------
@@ -192,9 +192,9 @@
 
 .. youtube:: qcVlf5p_1ZI
 
-Slides are `available <https://bitbucket.org/chummels/yt.workshop2012.misc/src/tip/yt.workshop2012.what_we_dont_show.pdf>`_
+Slides are `available <https://bitbucket.org/chummels/yt.workshop2012.misc/src/tip/yt.workshop2012.what_we_dont_show.pdf>`__
 
-Repository is `available <https://bitbucket.org/chummels/yt.workshop2012.misc/>`_
+Repository is `available <https://bitbucket.org/chummels/yt.workshop2012.misc/>`__
 
 Development Overview
 --------------------
@@ -203,9 +203,9 @@
 
 .. youtube:: DG8MJIzeKyA
 
-Slides are `available <https://bitbucket.org/samskillman/yt.workshop2012.development_overview/src/tip/yt_development_overview.pdf>`_
+Slides are `available <https://bitbucket.org/samskillman/yt.workshop2012.development_overview/src/tip/yt_development_overview.pdf>`__
 
-Repository is `available <https://bitbucket.org/samskillman/yt.workshop2012.development_overview/>`_
+Repository is `available <https://bitbucket.org/samskillman/yt.workshop2012.development_overview/>`__
 
 Testing and Documentation
 -------------------------
@@ -214,9 +214,9 @@
 
 .. youtube:: OMeqR38KNN4
 
-Slides are `available <https://bitbucket.org/sskory/yt.workshop2012.documentation/src/tip/Documentation.pdf>`_
+Slides are `available <https://bitbucket.org/sskory/yt.workshop2012.documentation/src/tip/Documentation.pdf>`__
 
-Repository is `available <https://bitbucket.org/sskory/yt.workshop2012.documentation>`_
+Repository is `available <https://bitbucket.org/sskory/yt.workshop2012.documentation>`__
 
 Adding a new code frontend
 --------------------------
@@ -225,7 +225,7 @@
 
 Video not available.
 
-Slides are `available <https://bitbucket.org/MatthewTurk/yt.workshop2012.frontends/src/tip/output/frontends.pdf>`_
+Slides are `available <https://bitbucket.org/MatthewTurk/yt.workshop2012.frontends/src/tip/output/frontends.pdf>`__
 
-Repository is `available <https://bitbucket.org/MatthewTurk/yt.workshop2012.frontends/>`_
+Repository is `available <https://bitbucket.org/MatthewTurk/yt.workshop2012.frontends/>`__
 



https://bitbucket.org/yt_analysis/yt-doc/changeset/1e879e40fdac/
changeset:   1e879e40fdac
user:        ngoldbaum
date:        2012-07-16 23:40:55
summary:     Eliminating more warnings (went from 1600 -> 46 warnings).
affected #:  4 files

diff -r f048b52f0904faa4593f6c12b83438873a391407 -r 1e879e40fdacd14f24a2580810e19b8e6ff96fde extensions/numpydocmod/docscrape_sphinx.py
--- a/extensions/numpydocmod/docscrape_sphinx.py
+++ b/extensions/numpydocmod/docscrape_sphinx.py
@@ -80,6 +80,7 @@
             if 0:#autosum:
                 out += ['.. autosummary::', '   :toctree:', '']
                 out += autosum
+                pdb.set_trace()
 
             if others:
                 maxlen_0 = max([len(x[0]) for x in others])


diff -r f048b52f0904faa4593f6c12b83438873a391407 -r 1e879e40fdacd14f24a2580810e19b8e6ff96fde source/_templates/autosummary/class.rst
--- a/source/_templates/autosummary/class.rst
+++ b/source/_templates/autosummary/class.rst
@@ -3,7 +3,6 @@
 {% block methods %}
 {% if methods %}
 .. autosummary::
-
    :toctree:
    {% for item in methods %}
        ~{{ name }}.{{ item }}
@@ -15,7 +14,6 @@
 {% block attributes %}
 {% if attributes %}
 .. autosummary::
-
    :toctree:
    {% for item in attributes %}
        ~{{ name }}.{{ item }}


diff -r f048b52f0904faa4593f6c12b83438873a391407 -r 1e879e40fdacd14f24a2580810e19b8e6ff96fde source/api/api.rst
--- a/source/api/api.rst
+++ b/source/api/api.rst
@@ -169,8 +169,8 @@
 .. autosummary::
    :toctree: generated/
 
-   ~yt.analysis_modules.api.TwoPointFunctions
-   ~yt.analysis_modules.api.FcnSet
+   ~yt.analysis_modules.two_point_functions.two_point_functions.TwoPointFunctions
+   ~yt.analysis_modules.two_point_functions.two_point_functions.FcnSet
 
 Field Types
 ===========


diff -r f048b52f0904faa4593f6c12b83438873a391407 -r 1e879e40fdacd14f24a2580810e19b8e6ff96fde source/conf.py
--- a/source/conf.py
+++ b/source/conf.py
@@ -27,8 +27,7 @@
 # coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
 extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx',
               'sphinx.ext.pngmath', 'sphinx.ext.viewcode',
-              'sphinx.ext.autosummary', 'numpydocmod', 'youtube',
-]
+              'sphinx.ext.autosummary', 'numpydocmod', 'youtube']
 
 # Add any paths that contain templates here, relative to this directory.
 templates_path = ['_templates']



https://bitbucket.org/yt_analysis/yt-doc/changeset/6b37fafb0b5b/
changeset:   6b37fafb0b5b
user:        ngoldbaum
date:        2012-07-17 03:10:26
summary:     Rearranging the api reference pages.  Getting rid of the index page so now the
front page is only one click away from the api rereference page.
affected #:  3 files

diff -r 1e879e40fdacd14f24a2580810e19b8e6ff96fde -r 6b37fafb0b5bb94c35e79e51094418712fecf2a7 source/api/api.rst
--- a/source/api/api.rst
+++ b/source/api/api.rst
@@ -1,5 +1,8 @@
+API Reference
+=============
+
 Plots and the Plotting Interface
-================================
+--------------------------------
 
 .. autosummary::
    :toctree: generated/
@@ -16,12 +19,12 @@
    ~yt.visualization.plot_collection.get_multi_plot
 
 Data Sources
-============
+------------
 
 .. _physical-object-api:
 
 Physical Objects
-----------------
+^^^^^^^^^^^^^^^^
 
 These are the objects that act as physical selections of data, describing a
 region in space.  These are not typically addressed directly; see
@@ -48,7 +51,7 @@
    ~yt.data_objects.data_containers.AMRSphereBase
 
 Time Series Objects
--------------------
+^^^^^^^^^^^^^^^^^^^
 
 These are objects that either contain and represent or operate on series of
 datasets.
@@ -72,7 +75,7 @@
    ~yt.data_objects.static_output.StaticOutput
 
 Enzo
-++++
+^^^^
 
 
 .. autosummary::
@@ -83,7 +86,7 @@
    ~yt.frontends.enzo.data_structures.EnzoStaticOutput
 
 Orion
-+++++
+^^^^^
 
 
 .. autosummary::
@@ -94,7 +97,7 @@
    ~yt.frontends.orion.data_structures.OrionStaticOutput
 
 FLASH
-+++++
+^^^^^
 
 
 .. autosummary::
@@ -105,7 +108,7 @@
    ~yt.frontends.flash.data_structures.FLASHStaticOutput
 
 Chombo
-++++++
+^^^^^^
 
 
 .. autosummary::
@@ -116,7 +119,7 @@
    ~yt.frontends.chombo.data_structures.ChomboStaticOutput
 
 RAMSES
-++++++
+^^^^^^
 
 
 .. autosummary::
@@ -127,10 +130,10 @@
    ~yt.frontends.ramses.data_structures.RAMSESStaticOutput
 
 Derived Datatypes
-=================
+-----------------
 
 Profiles and Histograms
------------------------
+^^^^^^^^^^^^^^^^^^^^^^^
 
 These types are used to sum data up and either return that sum or return an
 average.  Typically they are more easily used through the
@@ -145,7 +148,7 @@
    ~yt.data_objects.profiles.BinnedProfile3D
 
 Halo Finding and Particle Functions
------------------------------------
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 Halo finding can be executed using these types.
 
@@ -159,7 +162,7 @@
    ~yt.analysis_modules.halo_finding.halo_objects.HaloList
 
 Two Point Functions
--------------------
+^^^^^^^^^^^^^^^^^^^
 
 These functions are designed to create correlations or other results of
 operations acting on two spatially-distinct points in a data source.  See also
@@ -173,7 +176,7 @@
    ~yt.analysis_modules.two_point_functions.two_point_functions.FcnSet
 
 Field Types
-===========
+-----------
 
 
 .. autosummary::
@@ -188,10 +191,10 @@
    ~yt.data_objects.field_info_container.ValidateSpatial
 
 Extension Types
-===============
+---------------
 
 Coordinate Transformations
---------------------------
+^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 
 .. autosummary::
@@ -201,7 +204,7 @@
    ~yt.analysis_modules.coordinate_transformation.transforms.spherical_regrid
 
 Cosmology and Star Particle Analysis
-------------------------------------
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 For the generation of stellar SEDs.  (See also :ref:`star_analysis`.)
 
@@ -222,7 +225,7 @@
    ~yt.analysis_modules.light_cone.light_cone.LightCone
 
 Volume Rendering
-----------------
+^^^^^^^^^^^^^^^^
 
 See also :ref:`volume_rendering`.
 
@@ -246,7 +249,7 @@
 .. _image_writer:
 
 Streamlining
-------------
+^^^^^^^^^^^^
 
 See also :ref:`streamlines`.
 
@@ -257,7 +260,7 @@
    ~yt.visualization.streamlines.Streamlines
 
 Image Writing
--------------
+^^^^^^^^^^^^^
 
 These functions are all used for fast writing of images directly to disk,
 without calling matplotlib.  This can be very useful for high-cadence outputs
@@ -290,7 +293,7 @@
 .. _image-panner-api:
 
 Image Panning and Scanning
---------------------------
+^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 See also :ref:`image-panner`.
 
@@ -304,7 +307,7 @@
    ~yt.visualization.image_panner.vm_panner.ImageSaver
 
 Derived Quantities
-==================
+------------------
 
 See :ref:`derived-quantities`.
 
@@ -327,7 +330,7 @@
 .. _callback-api:
 
 Callback List
-=============
+-------------
 
 
 See also :ref:`callbacks`.
@@ -357,7 +360,7 @@
    ~yt.visualization.plot_modifications.VobozCircleCallback
 
 Function List
-=============
+-------------
 
 
 .. autosummary::
@@ -385,7 +388,7 @@
    ~yt.utilities.parallel_tools.parallel_analysis_interface.parallel_splitter
 
 Miscellaneous Types
-===================
+-------------------
 
 
 .. autosummary::


diff -r 1e879e40fdacd14f24a2580810e19b8e6ff96fde -r 6b37fafb0b5bb94c35e79e51094418712fecf2a7 source/api/index.rst
--- a/source/api/index.rst
+++ /dev/null
@@ -1,7 +0,0 @@
-API Documentation
-=================
-
-.. toctree::
-   :maxdepth: 2
-
-   api


diff -r 1e879e40fdacd14f24a2580810e19b8e6ff96fde -r 6b37fafb0b5bb94c35e79e51094418712fecf2a7 source/index.rst
--- a/source/index.rst
+++ b/source/index.rst
@@ -116,7 +116,9 @@
    analysis_modules/index
    advanced/index
    getting_involved/index
+   api/api   
    field_list
-   api/index
    faq/index
    changelog
+
+



https://bitbucket.org/yt_analysis/yt-doc/changeset/6a737246a75f/
changeset:   6a737246a75f
user:        ngoldbaum
date:        2012-07-17 10:47:19
summary:     Updating the plot window docs, adding some new plotwindow api entries,
and updating the makefile so that make clean retains its old
functionality and make fullclean removes the autogenerated docs
affected #:  4 files

diff -r 6b37fafb0b5bb94c35e79e51094418712fecf2a7 -r 6a737246a75f5dc984f71435254d7b7eaf8bb3b6 Makefile
--- a/Makefile
+++ b/Makefile
@@ -32,9 +32,14 @@
 	@echo "  changes    to make an overview of all changed/added/deprecated items"
 	@echo "  linkcheck  to check all external links for integrity"
 	@echo "  doctest    to run all doctests embedded in the documentation (if enabled)"
+	@echo "  clean 	    to remove the build directory"
+	@echo "  fullclean  to remove the build directory and autogenerated api docs"
 
 clean:
 	-rm -rf $(BUILDDIR)/*
+
+fullclean:
+	-rm -rf $(BUILDDIR)/*
 	-rm -rf source/api/generated
 
 html:


diff -r 6b37fafb0b5bb94c35e79e51094418712fecf2a7 -r 6a737246a75f5dc984f71435254d7b7eaf8bb3b6 source/api/api.rst
--- a/source/api/api.rst
+++ b/source/api/api.rst
@@ -4,13 +4,30 @@
 Plots and the Plotting Interface
 --------------------------------
 
+SlicePlot and ProjectionPlot
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+.. autosummary::
+   :toctree: generated/
+
+   ~yt.visualization.plot_window.SlicePlot
+   ~yt.visualization.plot_window.OffAxisSlicePlot
+   ~yt.visualization.plot_window.ProjectionPlot
+   ~yt.visualization.plot_window.PlotWindow
+   ~yt.visualization.plot_window.PWViewer
+   ~yt.visualization.plot_window.PWViewerMPL
+   ~yt.visualization.plot_window.PWViewerExtJS
+
+PlotCollection
+^^^^^^^^^^^^^^
+
 .. autosummary::
    :toctree: generated/
 
    ~yt.visualization.plot_collection.PlotCollection
    ~yt.visualization.plot_collection.PlotCollectionInteractive
-   ~yt.visualization.plot_types.SlicePlot
-   ~yt.visualization.plot_types.ProjectionPlot
+   ~yt.visualization.plot_types.PCSlicePlot
+   ~yt.visualization.plot_types.PCProjectionPlot
    ~yt.visualization.plot_types.PhasePlot
    ~yt.visualization.plot_types.Profile1DPlot
    ~yt.visualization.fixed_resolution.FixedResolutionBuffer


diff -r 6b37fafb0b5bb94c35e79e51094418712fecf2a7 -r 6a737246a75f5dc984f71435254d7b7eaf8bb3b6 source/visualizing/callbacks.rst
--- a/source/visualizing/callbacks.rst
+++ b/source/visualizing/callbacks.rst
@@ -9,11 +9,25 @@
 By adding a callback, you are telling the plot that whatever it does it itself,
 your callback gets the last word.
 
-These can all be accessed through a registry attached to every plot object.
-When you add a plot to a
-:class:`yt.visualization.plot_collection.PlotCollection`, you get back that
-affiliated plot object.  By accessing ``modify`` on that plot object, you have
-access to the available callbacks.  For instance,
+Callbacks can be applied to plots created with
+:class:`yt.visualization.plot_window.SlicePlot`,
+:class:`yt.visualization.plot_window.ProjectionPlot`, or
+:class:`yt.visualization.plot_window.OffAxesSlicePlot`,  by calling
+one of the ``annotate_`` methods that hang off of the plot object.
+The ``annotate_`` methods are dynamically generated based on the list
+of available callbacks below.  For example:
+
+.. clode-block:: python
+
+   slc = SlicePlot(pf,0,'Denisty')
+   slc.annotate_title('This is a Density plot')
+
+For :class:`yt.visualization.plot_collection.PlotCollection` plots,
+the callbacks can be accessed through a registry attached to every
+plot object.  When you add a plot to a
+:class:`yt.visualization.plot_collection.PlotCollection`, you get back
+that affiliated plot object.  By accessing ``modify`` on that plot
+object, you have access to the available callbacks.  For instance,
 
 .. code-block:: python
 


diff -r 6b37fafb0b5bb94c35e79e51094418712fecf2a7 -r 6a737246a75f5dc984f71435254d7b7eaf8bb3b6 source/visualizing/plots.rst
--- a/source/visualizing/plots.rst
+++ b/source/visualizing/plots.rst
@@ -3,10 +3,11 @@
 How to Make Plots
 =================
 
-Through the plotting interface, ``yt`` can create visualizations of
-the data produced by yt analysis objects as well the original
-simulation data files.  For more information about this procedure,
-please see the ``yt`` `method paper
+In this section we explain how to use ``yt`` to create visualizations
+of simulation data, derived fields, and the data produced by ``yt``
+analysis objects.  For details about the data extraction and
+algorithms used to produce the image and analysis data, please see the
+``yt`` `method paper
 <http://adsabs.harvard.edu/abs/2011ApJS..192....9T>`_.  There are also
 many example scripts in :ref:`cookbook`.
 
@@ -24,46 +25,147 @@
 provides the ``PlotWindow`` interface for quickly generating annotated
 2D visualizations of simulation data.  You can create a ``PlotWindow``
 plot by supplying a parameter file, a list of fields to plot, and a
-plot center to create a :class:`~yt.mods.SlicePlot`,
-:class:`~yt.mods.ProjectionPlot`, or
-:class:`~yt.mods.OffAxisSlicePlot`.
+plot center to create a :class:`~yt.visualization.plot_window.SlicePlot`,
+:class:`~yt.visualization.plot_window.ProjectionPlot`, or
+:class:`~yt.visualization.plot_window.OffAxisSlicePlot`.
 
-``PlotWindow`` plots use ``yt`` data objects to extract the maximum
-resolution data available to render a 2D image of a field.  This is
-accomplished behind the scenes using
-:class:`yt.mods.FixedResolutionBuffer` and matplotlib.  ``PlotWindow``
-plots expose the underlying matplotlib ``figure`` and ``axes``
-objects, making it easy to add new annotations.
+Plot objects use ``yt`` data objects to extract the maximum resolution
+data available to render a 2D image of a field. Whenever a
+two-dimensional image is created, the plotting object first obtains
+the necessary data at the *highest resolution*.  Every time an image
+is requested of it -- for instance, when the width or field is changed
+-- this high-resolution data is then pixelized and placed in a buffer
+of fixed size. This is accomplished behind the scenes using
+:class:`yt.visualization.fixed_resolution.FixedResolutionBuffer`.
+``PlotWindow`` plots expose the underlying matplotlib ``figure`` and
+``axes`` objects, making it easy to add new annotations.
 
-SlicePlot
-~~~~~~~~~
+.. _slice-plots:
 
-Slice plots accept a parameter file object and return an instance of
-:class:`~yt.mods.SlicePlot`, a wrapper for a matplotlib ``figure`` and
-``axes`` object.  For example:
+Slice Plots
+~~~~~~~~~~~
+
+Slice plots can be created by supplying a parameter file, an axis to
+slice along, a field to plot, and, optionally, a coordinate to center
+the plot and the width of the plot window.  For example:
 
 .. code-block:: python
 
-   from yt.modsimport*
+   from yt.mods import *
    pf = load("RedshiftOutput0005")
    slc = SlicePlot(pf,2,'Density','c',(20,'kpc'))
    slc.save()
 
-will slice through the data along the x-y plane at z = 0, plot the
-Density field in a square 20 kiloparsec window centered at the center
-of the simulation domain, and save it to
-``RedshiftOutput0005_Slice_x_Density.png``.
+The above example will display an annotated plot of a slice of the
+Density field in a 20 kpc square window centerd on the center of the
+simulation domain.  The axis to slice along is keyed to the number 2,
+corresponding to the z-axis.  Finally, the image is saved to a png
+file, by default ``yt`` sill save image to a png file.
 
-A ``SlicePlot`` can be modified by calling one the
-plot modifying attributes attached to the object (see: modifications).
+Conceptually, you can think of the SlicePlot as an adjustable window
+into the data. For example:
 
+.. code-block:: python
 
+   from yt.mods import *
+   pf = load("RedshiftOutput0005")
+   slc = SlicePlot(pf,2,'Pressure')
+   slc.save()
+   slc.zoom(10)
+   slc.save('zoom')
 
+will save a rendering of the pressure field in a slice along the z
+axis across the entire simulation domain followed by another plot that
+is zoomed in by a factor of 10 with respect to the original
+image. With these sorts of manipulations, one can easily pan and zoom
+onto an interesting region in the simulation and adjust the
+boundaries of the region you to visualize on the fly.
 
+A slice object can also add annotations like a title, an overlying
+quiver plot, the location of grid boundaries, halo-finder annotations,
+and many other annotations, including custom user-customizable
+annotations.  For example:
 
-The second plotting interface uses a
-:class:`~yt.visualization.plot_collection.PlotCollection` instantiated
-with a given parameter file and (optionally) a center.  
+.. code-block:: python
+
+   from yt.mods import *
+   pf = load("RedshiftOutput0005")
+   slc = SlicePlot(pf,0,'VorticitySquared',width=(10,'au'))
+   slc.annotate_grids()
+   slc.save()
+
+will plot the VorticitySquared in a 10 au slice through the z-axis
+centered on the highest density point in the simulation domain.
+Before saving the plot, the script annotates it with the grid
+boundaries, which are drawn as thick black lines by default.
+
+Annotations are described in :ref:`callbacks`.  See
+:class:`~yt.visualization.plot_window.SlicePlot` for the full class
+description.
+
+Projection Plots
+~~~~~~~~~~~~~~~~
+
+Using a fast adaptive projection, ``yt`` is able to quickly project
+simulation data along the coordinate axes.  Off-axis projections are
+also available, although only as a raw image file (see
+:ref:`cookbook-offaxis_projection`).
+
+Projection plots are created by instantiating a
+:class:`~yt.visualization.plot_window.ProjectionPlot` object then
+saving the plot.  For example:
+
+.. code-block:: python
+ 
+   from yt.mods import *
+   pf = load("RedshiftOutput0005")
+   prj = ProjectionPlot(pf,0,'Density',weight_field=None,max_level=2)
+   prj.save()
+
+will create a projection of Density field along the x axis of the
+simulation data, plot it, and then save it to a png image file.  The
+projection is only carried out to level 2 of the AMR hierarchy and no
+weighting is applied.
+
+Like :ref:`slice-plots`, annotations and modifications can be applied
+after creating the ``ProjectionPlot`` object.  Annotations are
+described in :ref:`callbacks`.  See
+:class:`~yt.visualization.plot_window.ProjectionPlot` for the full
+class description.
+
+Off Axis SLices
+~~~~~~~~~~~~~~~
+
+Off axis slice plots can be generated in much the same way as
+grid-aligned slices.  Off axis slices use
+:class:`~yt.data_objects.data_containers.AMRCuttingPlaneBase` to slice
+through simulation domains at an arbitrary oblique angle.  A
+:class:`~yt.visualization.plot_window.OffAxisSlicePlot` can be
+instantiated by specifying a parmaeter file, the normal to the cutting
+plane, and the name of the fields to plot.  For example:
+
+.. code-block:: python
+
+   from yt.mods import *
+   pf = load("RedshiftOutput0005")
+   L = [1,1,0] # vector normal to cutting plane
+   north_vector = [1,-1,0]
+   cut = OffAxisSlicePlot(pf,L,'Density',north_vector=noth_vector)
+
+creates an off-axis slice perpendicular to ``L``, oriented such that
+``north_vector`` is the up direction.  Like ``SlicePlot``
+
+In-Depth Data Visualization
+---------------------------
+
+The second plotting interface, based on the
+:class:`~yt.visualization.plot_collection.PlotCollection` class, is
+useful for in-depth data analysis, particularly in an analysis script
+that creates many plots for a set of simulation outputs.  A
+``PlotCollection`` holds a collection of plots that get created,
+rendered and saved to disk all at once.
+:class:`~yt.visualization.plot_collection.PlotCollection` is
+instantiated qith a given parameter file and (optionally) a center.
 
 At this point we can add various plots to our plot collection.  For starters,
 we'll take a look at creating images.  Images can be created from data in a
@@ -75,11 +177,6 @@
 processed.  This leads to much more rapid iteration of image properties than
 would normally be possible.
 
-Whenever a two-dimensional image is created, the plotting object first obtains
-the necessary data at the *highest resolution*.  Every time an image is
-requested of it -- for instance, when the width or field is changed -- this
-high-resolution data is then pixelized and placed in a buffer of fixed size.
-
 .. note:: Whenever a plot is added to a plot collection, that plot object is
           appended to the list ``plots`` on the PlotCollection, where it can be
           accessed.



https://bitbucket.org/yt_analysis/yt-doc/changeset/6249eb20b52f/
changeset:   6249eb20b52f
user:        ngoldbaum
date:        2012-07-17 10:54:22
summary:     Finishing up.
affected #:  1 file

diff -r 6a737246a75f5dc984f71435254d7b7eaf8bb3b6 -r 6249eb20b52fc2f720eb7ca470a3c741f442797c source/visualizing/plots.rst
--- a/source/visualizing/plots.rst
+++ b/source/visualizing/plots.rst
@@ -151,9 +151,15 @@
    L = [1,1,0] # vector normal to cutting plane
    north_vector = [1,-1,0]
    cut = OffAxisSlicePlot(pf,L,'Density',north_vector=noth_vector)
+   cut.save()
 
 creates an off-axis slice perpendicular to ``L``, oriented such that
-``north_vector`` is the up direction.  Like ``SlicePlot``
+``north_vector`` is the up direction.  Like :ref:`slice-plots`,
+annotations and modifications can be applied after creating the
+``ProjectionPlot`` object.  Annotations are described in
+:ref:`callbacks`.  See
+:class:`~yt.visualization.plot_window.OffAxisSlicePlot` for the full
+class description.
 
 In-Depth Data Visualization
 ---------------------------
@@ -201,7 +207,7 @@
 .. _how-to-make-slices:
 
 Slices
-------
+~~~~~~
 
 Slices are axially-aligned images of data selected at a fixed point on an axis;
 these are the fastest type of two-dimensional image, as only the correct
@@ -227,7 +233,7 @@
 .. _how-to-make-projections:
 
 Projections
------------
+~~~~~~~~~~~
 
 Projections are closer in style to profiles than slices.  They can exist either
 as a summation of the data along every possible ray through the simulation, or
@@ -262,7 +268,7 @@
 .. _how-to-make-oblique-slices:
 
 Oblique Slices
---------------
+~~~~~~~~~~~~~~
 
 Oblique slices, also called "cutting planes", are slices that are not axially
 aligned, but instead aligned with a given normal vector.  These can be used for
@@ -285,7 +291,7 @@
 .. _how-to-control-image-plots:
 
 Controlling Image Plots
------------------------
+~~~~~~~~~~~~~~~~~~~~~~~
 
 Slices, projections and oblique slices can all be modified in a number of ways.
 The most important of these is setting the viewport.  This can be done using
@@ -324,7 +330,7 @@
 .. _how-to-make-1d-profiles:
 
 1D Profiles
------------
+~~~~~~~~~~~
 
 1D profiles are used to calculated the average or the sum of a given quantity
 with respect to a second quantity.  This means the "average density as a
@@ -392,7 +398,7 @@
 .. _how-to-make-2d-profiles:
 
 2D Phase Plots
---------------
+~~~~~~~~~~~~~~
 
 2D phase plots function in much the same was as 1D phase plots.  You can either
 create and supply an object yourself, or allow the plot collection to create a
@@ -427,7 +433,7 @@
 .. _interactive-plotting:
 
 Interactive Plotting
---------------------
+~~~~~~~~~~~~~~~~~~~~
 
 Thanks to the pylab interface in Matplotlib, we have an interactive plot
 collection available for usage within ``IPython``.  Instead of



https://bitbucket.org/yt_analysis/yt-doc/changeset/591151deb148/
changeset:   591151deb148
user:        ngoldbaum
date:        2012-07-17 10:56:37
summary:     Removing this pdb call.
affected #:  1 file

diff -r 6249eb20b52fc2f720eb7ca470a3c741f442797c -r 591151deb148eeb71c8be17e0fee4292c7898f58 extensions/numpydocmod/docscrape_sphinx.py
--- a/extensions/numpydocmod/docscrape_sphinx.py
+++ b/extensions/numpydocmod/docscrape_sphinx.py
@@ -80,8 +80,7 @@
             if 0:#autosum:
                 out += ['.. autosummary::', '   :toctree:', '']
                 out += autosum
-                pdb.set_trace()
-
+                
             if others:
                 maxlen_0 = max([len(x[0]) for x in others])
                 maxlen_1 = max([len(x[1]) for x in others])



https://bitbucket.org/yt_analysis/yt-doc/changeset/e6e934718c69/
changeset:   e6e934718c69
user:        ngoldbaum
date:        2012-07-17 11:57:42
summary:     Giving this a better name.
affected #:  1 file

diff -r 591151deb148eeb71c8be17e0fee4292c7898f58 -r e6e934718c695dda074460af0a9fc0a7512af18a source/changelog.rst
--- a/source/changelog.rst
+++ b/source/changelog.rst
@@ -8,7 +8,7 @@
 Version 2.3 
 -----------
 
-`(Docs2.3) <http://yt-project.org/docs/2.3>`_
+`(yt 2.3 docs) <http://yt-project.org/docs/2.3>`_
  * Multi-level parallelism
  * Real, extensive answer tests
  * Boolean data regions (see :ref:`boolean_data_objects`)
@@ -31,7 +31,7 @@
 Version 2.2
 -----------
 
-`(Docs2.2) <http://yt-project.org/docs/2.2>`_
+`(yt 2.2 docs) <http://yt-project.org/docs/2.2>`_
  * Command-line submission to the yt Hub (http://hub.yt-project.org/)
  * Initial release of the web-based GUI Reason, designed for efficient remote
    usage over SSH tunnels (see :ref:`reason`)
@@ -50,7 +50,7 @@
 Version 2.1
 -----------
 
-`(Docs2.1) <http://yt-project.org/docs/2.1>`_
+`(yt 2.1 docs) <http://yt-project.org/docs/2.1>`_
  * HEALpix-based volume rendering for 4pi, allsky volume rendering
  * libconfig is now included
  * SQLite3 and Forthon now included by default in the install script



https://bitbucket.org/yt_analysis/yt-doc/changeset/a9354f0c1f4b/
changeset:   a9354f0c1f4b
user:        ngoldbaum
date:        2012-07-18 01:46:38
summary:     Updating and fixing up the plot window callback docs.
affected #:  1 file

diff -r e6e934718c695dda074460af0a9fc0a7512af18a -r a9354f0c1f4b6b9993be939b41756b10bc071cfe source/visualizing/callbacks.rst
--- a/source/visualizing/callbacks.rst
+++ b/source/visualizing/callbacks.rst
@@ -3,6 +3,12 @@
 Plot Modification Mechanisms
 ============================
 
+Adding callbacks to plots
+-------------------------
+
+Plot window Plots
+~~~~~~~~~~~~~~~~~
+
 Because the plots in ``yt`` are considered to be "volatile" -- existing
 independent of the canvas on which they are plotted -- before they are saved,
 you can have a set of "callbacks" run that modify them before saving to disk.
@@ -10,22 +16,30 @@
 your callback gets the last word.
 
 Callbacks can be applied to plots created with
-:class:`yt.visualization.plot_window.SlicePlot`,
-:class:`yt.visualization.plot_window.ProjectionPlot`, or
-:class:`yt.visualization.plot_window.OffAxesSlicePlot`,  by calling
+:class:`~yt.visualization.plot_window.SlicePlot`,
+:class:`~yt.visualization.plot_window.ProjectionPlot`, or
+:class:`~yt.visualization.plot_window.OffAxisSlicePlot`,  by calling
 one of the ``annotate_`` methods that hang off of the plot object.
 The ``annotate_`` methods are dynamically generated based on the list
-of available callbacks below.  For example:
+of available callbacks.  For example:
 
-.. clode-block:: python
+.. code-block:: python
 
-   slc = SlicePlot(pf,0,'Denisty')
+   slc = SlicePlot(pf,0,'Density')
    slc.annotate_title('This is a Density plot')
 
-For :class:`yt.visualization.plot_collection.PlotCollection` plots,
+would add the :func:`title` callback to the plot object.  All of the
+callbacks listed below are available via similar ``annotate_``
+functions.
+
+
+PlotCollection Plots
+~~~~~~~~~~~~~~~~~~~~
+
+For :class:`~yt.visualization.plot_collection.PlotCollection` plots,
 the callbacks can be accessed through a registry attached to every
 plot object.  When you add a plot to a
-:class:`yt.visualization.plot_collection.PlotCollection`, you get back
+:class:`~yt.visualization.plot_collection.PlotCollection`, you get back
 that affiliated plot object.  By accessing ``modify`` on that plot
 object, you have access to the available callbacks.  For instance,
 



https://bitbucket.org/yt_analysis/yt-doc/changeset/3eaca37968de/
changeset:   3eaca37968de
user:        ngoldbaum
date:        2012-07-23 20:51:26
summary:     Updating the plot window docs to reflect changes in the plot window.
Fixing some typos and style issues.
affected #:  1 file

diff -r a9354f0c1f4b6b9993be939b41756b10bc071cfe -r 3eaca37968de2b33efd75ed4867172260a29c843 source/visualizing/plots.rst
--- a/source/visualizing/plots.rst
+++ b/source/visualizing/plots.rst
@@ -47,20 +47,20 @@
 
 Slice plots can be created by supplying a parameter file, an axis to
 slice along, a field to plot, and, optionally, a coordinate to center
-the plot and the width of the plot window.  For example:
+the plot on and the width of the plot window.  For example:
 
 .. code-block:: python
 
    from yt.mods import *
    pf = load("RedshiftOutput0005")
-   slc = SlicePlot(pf,2,'Density','c',(20,'kpc'))
+   slc = SlicePlot(pf,2,'Density',[0.2,0.3,0.8],(20,'kpc'))
    slc.save()
 
 The above example will display an annotated plot of a slice of the
-Density field in a 20 kpc square window centerd on the center of the
-simulation domain.  The axis to slice along is keyed to the number 2,
-corresponding to the z-axis.  Finally, the image is saved to a png
-file, by default ``yt`` sill save image to a png file.
+Density field in a 20 kpc square window centered on the coordinate
+(0.2,0.3) in the x-y plane.  The axis to slice along is keyed to the
+number 2, corresponding to the z-axis.  Finally, the image is saved to
+a png file.
 
 Conceptually, you can think of the SlicePlot as an adjustable window
 into the data. For example:
@@ -79,18 +79,18 @@
 is zoomed in by a factor of 10 with respect to the original
 image. With these sorts of manipulations, one can easily pan and zoom
 onto an interesting region in the simulation and adjust the
-boundaries of the region you to visualize on the fly.
+boundaries of the region to visualize on the fly.
 
 A slice object can also add annotations like a title, an overlying
 quiver plot, the location of grid boundaries, halo-finder annotations,
-and many other annotations, including custom user-customizable
-annotations.  For example:
+and many other annotations, including user-customizable annotations.
+For example:
 
 .. code-block:: python
 
    from yt.mods import *
    pf = load("RedshiftOutput0005")
-   slc = SlicePlot(pf,0,'VorticitySquared',width=(10,'au'))
+   slc = SlicePlot(pf,0,'VorticitySquared',width=(10,'au'),center='max')
    slc.annotate_grids()
    slc.save()
 
@@ -112,8 +112,8 @@
 :ref:`cookbook-offaxis_projection`).
 
 Projection plots are created by instantiating a
-:class:`~yt.visualization.plot_window.ProjectionPlot` object then
-saving the plot.  For example:
+:class:`~yt.visualization.plot_window.ProjectionPlot` object.  For
+example:
 
 .. code-block:: python
  
@@ -122,10 +122,9 @@
    prj = ProjectionPlot(pf,0,'Density',weight_field=None,max_level=2)
    prj.save()
 
-will create a projection of Density field along the x axis of the
-simulation data, plot it, and then save it to a png image file.  The
-projection is only carried out to level 2 of the AMR hierarchy and no
-weighting is applied.
+will create a projection of Density field along the x axis, plot it,
+and then save it to a png image file.  The projection is only carried
+out to level 2 of the AMR hierarchy and no weighting is applied.
 
 Like :ref:`slice-plots`, annotations and modifications can be applied
 after creating the ``ProjectionPlot`` object.  Annotations are
@@ -153,11 +152,13 @@
    cut = OffAxisSlicePlot(pf,L,'Density',north_vector=noth_vector)
    cut.save()
 
-creates an off-axis slice perpendicular to ``L``, oriented such that
-``north_vector`` is the up direction.  Like :ref:`slice-plots`,
-annotations and modifications can be applied after creating the
-``ProjectionPlot`` object.  Annotations are described in
-:ref:`callbacks`.  See
+creates an off-axis slice in the plane perpendicular to ``L``,
+oriented such that ``north_vector`` is the up direction.  If ``L`` and
+``north_vector`` are not perpendicular, the component of
+``north_vector`` perpendicular to ``L`` is used. Like
+:ref:`slice-plots`, annotations and modifications can be applied after
+creating the ``OffAxisSlicePlot`` object.  Annotations are described
+in :ref:`callbacks`.  See
 :class:`~yt.visualization.plot_window.OffAxisSlicePlot` for the full
 class description.

Repository URL: https://bitbucket.org/yt_analysis/yt-doc/

--

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