texlive[41580] Master: mandi (30jun16)

commits+karl at tug.org commits+karl at tug.org
Thu Jun 30 23:01:17 CEST 2016


Revision: 41580
          http://tug.org/svn/texlive?view=revision&revision=41580
Author:   karl
Date:     2016-06-30 23:01:17 +0200 (Thu, 30 Jun 2016)
Log Message:
-----------
mandi (30jun16)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/mandi/README
    trunk/Master/texmf-dist/doc/latex/mandi/mandi.pdf
    trunk/Master/texmf-dist/doc/latex/mandi/vdemo.py
    trunk/Master/texmf-dist/source/latex/mandi/mandi.dtx
    trunk/Master/texmf-dist/source/latex/mandi/mandi.ins
    trunk/Master/texmf-dist/tex/latex/mandi/mandi.sty
    trunk/Master/tlpkg/bin/tlpkg-ctan-check
    trunk/Master/tlpkg/tlpsrc/oldstandardt1.tlpsrc

Modified: trunk/Master/texmf-dist/doc/latex/mandi/README
===================================================================
--- trunk/Master/texmf-dist/doc/latex/mandi/README	2016-06-30 18:16:10 UTC (rev 41579)
+++ trunk/Master/texmf-dist/doc/latex/mandi/README	2016-06-30 21:01:17 UTC (rev 41580)
@@ -4,7 +4,7 @@
 the astronomical commands were inspired by my own classroom needs. This package
 does not do computations. It only provides commands for typesetting.
 
-Run  the  file  mandi.dtx  through (pdf)LaTeX to generate mandi.ins, mandi.sty,
-vdemo.py, and mandi.pdf (user documentation). I assume a TeX Live 2011 or later
-distribution is installed.
+Run  mandi.ins through  pdfLaTeX to generate files mandi.sty  and vdemo.py. Run
+mandi.dtx through pdfLaTeX to generate mandi.pdf (documentation). I  assume   a
+TeX Live 2011 or later distribution is installed.
 

Modified: trunk/Master/texmf-dist/doc/latex/mandi/mandi.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/mandi/vdemo.py
===================================================================
--- trunk/Master/texmf-dist/doc/latex/mandi/vdemo.py	2016-06-30 18:16:10 UTC (rev 41579)
+++ trunk/Master/texmf-dist/doc/latex/mandi/vdemo.py	2016-06-30 21:01:17 UTC (rev 41580)
@@ -1,4 +1,4 @@
-from __future__ import division,print_function
+from __future__ import division, print_function
 from visual import *
 
 G = 6.7e-11

Modified: trunk/Master/texmf-dist/source/latex/mandi/mandi.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/mandi/mandi.dtx	2016-06-30 18:16:10 UTC (rev 41579)
+++ trunk/Master/texmf-dist/source/latex/mandi/mandi.dtx	2016-06-30 21:01:17 UTC (rev 41580)
@@ -15,11 +15,11 @@
 % The Current Maintainer of this work is Paul J. Heafner.
 %
 % This work consists of the files mandi.dtx
+%                                 mandi.ins
+%                                 mandi.pdf
 %                                 README
-%                                 mandi.pdf
 %
-% and includes the derived files  mandi.ins
-%                                 mandi.sty and
+% and includes the derived files  mandi.sty
 %                                 vdemo.py.
 % ---------------------------------------------------------------------------
 %
@@ -32,12 +32,12 @@
 %</internal>
 %
 %<*package>
-\ProvidesPackage{mandi}[2016/03/15 2.5.1 Macros for physics and astronomy]
+\ProvidesPackage{mandi}[2016/06/29 2.6.0 Macros for physics and astronomy]
 \NeedsTeXFormat{LaTeX2e}[1999/12/01]
 %</package>
 %
 %<*vdemo>
-from __future__ import division,print_function
+from __future__ import division, print_function
 from visual import *
 
 G = 6.7e-11
@@ -71,69 +71,6 @@
 \fi
 %</internal>
 %
-%<*install>
-\input docstrip.tex
-\keepsilent
-\askforoverwritefalse
-\usedir{tex/latex/mandi}
-\preamble
-
-Copyright (C) 2016 by Paul J. Heafner <heafnerj at gmail.com>
----------------------------------------------------------------------------
-This  work may be  distributed and/or modified  under the conditions of the 
-LaTeX Project Public  License, either  version 1.3  of this  license or (at 
-your option) any later version. The latest version of this license is in
-           http://www.latex-project.org/lppl.txt
-and  version 1.3 or  later is  part of  all distributions of  LaTeX version 
-2005/12/01 or later.
-
-This work has the LPPL maintenance status `maintained'.
-
-The Current Maintainer of this work is Paul J. Heafner.
-
-This work consists of the files mandi.dtx
-                                README
-                                mandi.pdf
-
-and includes the derived files  mandi.ins
-                                mandi.sty and
-                                vdemo.py.
----------------------------------------------------------------------------
-
-\endpreamble
-
-\generate{\file{\jobname.sty}{\from{\jobname.dtx}{package}}}
-\generate{\file{\jobname.ins}{\from{\jobname.dtx}{install}}}
-\generate{\usepreamble\empty\usepostamble\empty
-          \file{vdemo.py}{\from{\jobname.dtx}{vdemo}}}
-
-\obeyspaces
-\Msg{*************************************************************}
-\Msg{*                                                           *}
-\Msg{* To finish the installation you have to move the following *}
-\Msg{* file into a directory searched by TeX:                    *}
-\Msg{*                                                           *}
-\Msg{*     mandi.sty                                             *}
-\Msg{*                                                           *}
-\Msg{* To produce the documentation run the file mandi.dtx       *}
-\Msg{* through (pdf)LaTeX.                                       *}
-\Msg{*                                                           *}
-\Msg{*************************************************************}
-%</install>
-%<install>\endbatchfile
-%
-%<*internal>
-\usedir{tex/latex/mandi}
-\generate{\file{\jobname.ins}{\from{\jobname.dtx}{install}}}
-\generate{\usepreamble\empty\usepostamble\empty
-          \file{vdemo.py}{\from{\jobname.dtx}{vdemo}}}
-\ifx\fmtname\nameofplainTeX
-  \expandafter\endbatchfile
-\else
-  \expandafter\endgroup
-\fi
-%</internal>
-%
 %<*driver>
 \ProvidesFile{mandi.dtx}
 %</driver>
@@ -147,8 +84,14 @@
 \usepackage[left=0.75in,right=1.00in]{geometry}     % main documentation
 \usepackage{array,rotating,microtype}               % accessory packages
 \usepackage[listings,documentation]{tcolorbox}      % workhorse package
-\tcbset{index german settings,color hyperlink=blue} % set index options
-\hypersetup{colorlinks=true}
+\usepackage{changepage} %%%%%%%%%%
+\hypersetup{colorlinks, linktoc=all}
+\tcbset{index german settings}
+\tcbset{color hyperlink=blue}
+\tcbset{doc head command={interior style={fill,left color=red!15!white}}}
+\tcbset{color command=red}
+\tcbset{doc head environment={interior style={fill,left color=red!15!white}}}
+\tcbset{color environment=red}
 \newcommandx{\ntodo}[2][1,usedefault]{%
   \ifthenelse{\equal{#1}{}}
     {\todo[size=\footnotesize,fancyline,caption={#2},color=yellow!40]
@@ -182,7 +125,7 @@
 %    package is indexed. There may be commands similar to indexed commands 
 %    described in relevant parts of the documentation.}
 % 
-% \CheckSum{6069}
+% \CheckSum{6353}
 %
 % \CharacterTable
 %  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
@@ -222,10 +165,6 @@
 %   \PrintChanges
 %   \newpage
 %   \phantomsection
-%   \addcontentsline{toc}{section}{Possible Future Enhancements}
-%   \listoftodos[Possible Future Enhancements]
-%   \newpage
-%   \phantomsection
 %   \addcontentsline{toc}{section}{Program Listings}
 %   \lstlistoflistings
 %   \newpage
@@ -284,6 +223,10 @@
 % \changes{v2.5.0}{2015/09/13}{Removed autosized parentheses in math mode.}
 % \changes{v2.5.0}{2015/12/27}{Added option for radians in certain angular quantities.}
 % \changes{v2.5.1}{2016/03/13}{Fixed errors in build for uploading to CTAN.}
+% \changes{v2.6.0}{2016/05/10}{Removed deprecated commands.}
+% \changes{v2.6.0}{2016/05/18}{Option \opt{singleabsbars} renamed to 
+%   \opt{singlemagbars}.}
+% \changes{v2.6.0}{2016/05/23}{Loads the \pkgname{tensor} package for future use.}
 %
 % \begin{itemize}
 %   \item \opt{boldvectors} gives bold letters for the kernels of vector names. 
@@ -293,12 +236,13 @@
 %   \item If neither \opt{boldvectors} nor \opt{romanvectors} is specified (the
 %     default), vectors are displayed with italic letters for the kernels of vector
 %     names and an arrow appears over the kernel.
-%   \item \opt{singleabsbars} gives single bars in symbols for vector magnitudes. 
+%   \item \opt{singlemagbars} gives single bars in symbols for vector magnitudes. 
 %     Double bars may be more familiar to students from their calculus courses. 
 %     Double bars is the default.
-%   \item \opt{approxconsts} gives approximate values of constants to one or two
-%     significant figures, depending on how they appear in \mi. Otherwise, the most
-%     precise currently available values are used. Precise constants is the default.
+%   \item \opt{approxconsts} gives \hypertarget{target4}{approximate} values of 
+%     constants to one or two significant figures, depending on how they appear in 
+%     \mi. Otherwise, the most precise currently available values are used. Precise 
+%     constants is the default.
 %   \item \opt{useradians} gives radians in the units of angular momentum,
 %     angular impulse, and torque. The default is to not use radians in the units 
 %     of these quantities.
@@ -331,75 +275,404 @@
 % \pkgname{siunitx}. The two are designed for different purposes and probably also
 % for different audiences, but can be used together if desired. \mandi\ coexists with 
 % the \pkgname{commath} package. There is no longer a conflict because \mandi's 
-% |\abs| command has been renamed to |\absof|. \mandi\ no longer checks for the 
+% |\abs| command has been renamed to \refCom{absof}. \mandi\ no longer checks for the 
 % presence of the \pkgname{physymb} package. That package now incorporates \mandi\ 
-% dependencies, and the two are completely compatible.
+% dependencies, and the two are completely compatible as far as I know.
 % \changes{v2.4.0}{2014/12/19}{Removed compatibility check for the \pkgname{physymb} 
 % package.}
+% \changes{v2.6.0}{2016/05/20}{Documented \cs{mandiversion}.}
 %
-% \section{Usage}
-% So what does \mandi\ allow you to do? There are two main design goals. The first 
-% is typeset numerical values of scalar and vector physical quantities and their
-% SI units. The idea is to simply type a command corresponding to the quantity's 
-% name, specifying as an argument a single scalar value or the numerical components 
-% of a traditional Cartesian 3-vector, and let \mandi\ take care of the units. 
+%\iffalse
+%<*example>
+%\fi
+\begin{docCommand}{mandiversion}{}
+Gives the current package version number and build date.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\mandiversion
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
 %
-% In introductory physics courses, students typically have trouble remembering
-% which units go with which quantities and, more importantly, remembering to include 
-% units in numerical calculations. \mandi\ is designed to help with these problems.
-% Suppose you want to typeset a calculation of a particle's kinetic energy (assume 
-% the magnitude of the particle's velocity is much less than the magnitude of light's
-% velocity). You could use
+% \changes{v2.6.0}{2016/05/16}{Extensive revisions to documentation.}
+% \changes{v2.6.0}{2016/05/02}{Created a student guide.}
+% \newpage
+% \section{Student Quick Guide}
+% Use \refCom{vect} to put an arrow over a symbol to make it the symbol for a vector.
+% Typing |\vect{p}| gives \vect{p}.
 %
+% Use \refCom{vectsub} if the symbol needs a subscript. Typing |\vectsub{p}{ball}|
+% gives \vectsub{p}{ball}.
+%
+% Use \refCom{magvect} or \refCom{magvectsub} to get the symbol for a vector's
+% magnitude. Typing |\magvect{p}| or |\magvectsub{p}{ball}| gives \magvect{p} or
+% \magvectsub{p}{ball}.
+%
+% Use \refCom{dirvect} or \refCom{dirvectsub} to get the symbol for a vector's
+% direction. Typing |\dirvect{p}| or |\dirvectsub{p}{ball}| gives \dirvect{p} or
+% \dirvectsub{p}{ball}.
+%
+% Use \refCom{compvect} to write the symbol for one of a vector's coordinate
+% components. Typing |\compvect{v}{z}| gives \compvect{v}{z}.
+%
+% Use a physical quantity's name followed by a numerical value in curly braces 
+% to typeset that numerical value and an appropriate SI unit. 
+% Using \refCom{velocity} by typing |\velocity{2.5}| gives
+% \velocity{2.5}. Use \refCom{newphysicsquantity} to define any new quantity 
+% you need.
+%
+% Many physical constants are defined in \mandi. Read the section on 
+% \hyperlink{target1}{physical constants} to see which ones are defined and how
+% to use them.
+%
+% Use \refCom{mivector} to write the coordinate representation of a vector.
+% Typing |\mivector{3,2,-4}| gives \mivector{3,2,-4}. Typing |\mivector{a,b,c}|
+% gives \mivector{a,b,c}.
+%
+% Use \refCom{direction} to write the coordinate representation of a unit vector,
+% which some authors call a direction. Typing |\direction{1,0,0}| gives 
+% \direction{1,0,0}. Directions have no units.
+%
+% To specify a vector quantity in terms of its coordinate components, you have two
+% options. One way is to type the vector quantity's name as above, but use
+% \refCom{mivector} to specify a list of three components separated by commas in
+% curly braces as in |\velocity{\mivector{3,2,-4}}| to get 
+% \velocity{\mivector{3,2,-4}}. Another way is to prefix |\vector| to the quantity's
+% name (with no leading backslash) and specify a list of three components separated 
+% by commas in curly braces as in |\vectorvelocity{3,2,-4}| to get 
+% \vectorvelocity{3,2,-4}. The output is the same either way.
+%
+% Use \refCom{timestento} or \refCom{xtento} to get scientific notation.
+% Typing either |2.54\timestento{-4}| or |2.54\xtento{-4}| gives 2.54\timestento{-4}.
+%
+% Use \refCom{inparens} to surround quantities with nicely formatted parentheses.
+% Typing |\inparens{x^2 + 4}| gives \inparens{x^2 + 4}.
+%
+% Use \refCom{define} to create a variable that can be used in an intermediate
+% step in a solution. This is discussed later in this section.
+%
+% Encapsulate an entire problem solution in a \refEnv{problem} environment by 
+% putting it between |\begin{problem}| and |\end{problem}|.
+%
+% Show the steps in a calculation in a \refEnv{mysolution} environment by putting
+% them between |\begin{mysolution}| and |\end{mysolution}|.
+%
+% Use \cs{href} from the \pkgname{hyperref} package to link to URLs. 
+% |\href{http://glowscript.org}{GlowScript}| gives 
+% \href{http://glowscript.org}{GlowScript}. You can link to a specific 
+% \href{http://goo.gl/wPMqjp}{GlowScript program} for this course. Links are 
+% active.
+%
+% There are two main design goals behind this package. The first is to typeset 
+% numerical values of scalar and vector physical quantities and their SI units. The 
+% idea is to simply type a command corresponding to the quantity's name, specifying 
+% as an argument a single scalar value or the numerical components of a traditional 
+% Cartesian 3-vector, and let \mandi\ take care of the units. Every physical quantity 
+% you are likely to encounter in an introductory course is probably already defined, 
+% but there's a facility for defining new quantities if you need to.
+%
+% The second main design goal provides a similar approach to typesetting the most
+% frequently used symbolic expressions in introductory physics. If you want to save 
+% time in writing out the expression for the electric field of a particle, just use
+%
 %\iffalse
 %<*example>
 %\fi
-\begin{dispExample}
-\[ K \approx \frac{1}{2}(\unit{2}{\kg})(\unit{2}{\m\per\s})^2 \]
-\end{dispExample}
+\begin{dispExample*}{sidebyside}
+\Efieldofparticle
+\end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-% which is nearly incomprehensible for people new to \LaTeX\ and that (probably)
-% includes introductory physics students, but \mandi\ lets you do something more 
-% logical and more readable, like this
+% which, as you can see, takes fewer keystrokes and it's easier to remember. Correct
+% vector notation is automatically enforced, leading students to get used to seeing
+% it and, hopefully, using it in their own calculations. Yes, this is a bit of an
+% agenda on my part, but my experience has been that students don't recognize or 
+% appreciate the utility of vector notation and thus their physical reasoning may
+% suffer as a result. So by using \mandi\ they use simple commands that mirror what
+% they're thinking, or what they're supposed to be thinking (yes, another agenda),
+% and in the process see the correct typeset output.
 %
+% There is another persistent problem with introductory physics textbooks, and that 
+% is that many authors do not use consistent notation. Many authors define the
+% notation for a vector's magnitude to be either \magvect{a} or \absof{\vect{a}} in 
+% an early chapter, but then completely ignore that notation and simply use \(a\)
+% later in the book. I have never understood the (lack of) logic behind this practice
+% and find it more than annoying. Textbooks authors should know better, and should
+% set a better example for introductory students. I propose that using \mandi\
+% would eliminate all last vestiges of all excuses for not setting this one good
+% example for introductory students.
+%
+% If you are a student, using this package will very likely begin with using a 
+% pre-made document template supplied by your instructor. There will likely be a 
+% lot about the document that you won't understand at first. Look for a line that 
+% says |\begin{document}| and a corresponding line that says |\end{document}| You 
+% will add content between these two lines. Most of your content will be within the 
+% \hyperlink{target1}{|problem|} environment. Each use of the |problem| environment 
+% is intended to encapsulate one complete written solution to one physics problem. 
+% In this way, you can build a library of problem solutions for your own convenience. 
+%
+% Since students are this package's primary audience, nearly all of the commands
+% have been defined with students in mind. Writing a problem solution in \LaTeX\
+% can be tedious to the beginner and some of the commands have been designed to
+% minimize the tedium. For example, if you want to calculate something using an
+% equation, you typically must write the equation, substitute numerical quantities
+% with units if necessary, do the actual calculation, and then state the final result.
+% Sometimes it is necessary to show intermediate steps in a calculation. \mandi\
+% can help with this. 
+%
+% Here is a set of commands that typeset standard equations with placeholders where
+% numerical quantities must be eventually inserted. Note that all of these commands
+% end with the word |places| as a reminder that they generate placeholders.
+%
+% \changes{v2.6.0}{2016/05/03}{Added many new commands that format expressions
+%  with placeholders for numerical quantities.}
 %\iffalse
 %<*example>
 %\fi
-\begin{dispExample}
-\[ K \approx \onehalf (\mass{2})(\velocity{2})\squared \]
-\end{dispExample}
+\begin{docCommand}{genericinteractionplaces}
+{\marg{const}\marg{thing1}\marg{thing2}\marg{dist}\marg{direction}}
+Command for generic expression for an inverse square interaction. The required
+arguments are, from left to right, a constant of proportionality, a physical
+property of object 1, a physical property of object 2, the objects' mutual 
+separation, and a vector direction. In practice, these should all be provided
+in numerical form.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\genericinteractionplaces{}{}{}{}{}
+\end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-% which produces the same output. In the second example, note that the units 
-% are abstracted so the user need not remember them. This doesn't mean that students
-% don't need to know what the various units are, but it does mean that now there is
-% no way for units to be left out of a calculation. Note also that the commands
-% correspond to the actual names of the quantities needed for the calculation. All
-% the student needs to do is remember what quantities are needed and then construct
-% the appropriate \LaTeX\ expression in a way that is very similar to writing 
-% program code in a language like Python, with which many students will have had
-% previous experience. This may make \LaTeX\ easier for beginners to learn, and
-% the second way is more readable if you come back to the source document, perhaps 
-% having not looked at it for a while.
-% 
-% Suppose you want to use vectors quantities. That's no problem because \mandi\ 
-% handles vector quantities.
+%\iffalse
+%<*example>
+%\fi
+\begin{docCommand}{genericfieldofparticleplaces}
+{\marg{const}\marg{thing}\marg{dist}\marg{direction}}
+Command for generic expression for an inverse square field. The required
+arguments are, from left to right, a constant of proportionality, a physical
+property, relative distance to field point, and a vector direction. In practice, 
+these should all be provided in numerical form.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\genericfieldofparticleplaces{}{}{}{}{}
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
 %
 %\iffalse
 %<*example>
 %\fi
-\begin{dispExample}
-Calculate the magnitude of \momentum{\mivector{3,2,5}}.
-\end{dispExample}
+\begin{docCommand}{genericpotentialenergyplaces}
+{\marg{const}\marg{thing1}\marg{thing2}\marg{dist}}
+Command for generic expression for an inverse square energy. The required
+arguments are, from left to right, a constant of proportionality, a physical
+property of object 1, a physical property of object 2, and the objects' mutual 
+separation. In practice, these should all be provided in numerical form.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\genericpotentialenergyplaces{}{}{}{}{}
+\end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\iffalse
+%<*example>
+%\fi
+\begin{docCommand}{gravitationalinteractionplaces}
+{\marg{mass1}\marg{mass2}\marg{distance}\marg{direction}}
+Command for gravitational interaction.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\gravitationalinteractionplaces{}{}{}{}
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
+%
+%\iffalse
+%<*example>
+%\fi
+\begin{docCommand}{gfieldofparticleplaces}
+{\marg{mass}\marg{distance}\marg{direction}}
+Command for gravitational field of a particle.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\gfieldofparticleplaces{}{}{}
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
+%
+%\iffalse
+%<*example>
+%\fi
+\begin{docCommand}{gravitationalpotentialenergyplaces}
+{\marg{mass1}\marg{mass2}\marg{distance}}
+Command for gravitational potential energy.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\gravitationalpotentialenergyplaces{}{}{}
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
+%
+%\iffalse
+%<*example>
+%\fi
+\begin{docCommand}{springinteractionplaces}
+{\marg{stiffness}\marg{stretch}\marg{direction}}
+Command for a spring interaction.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\springinteractionplaces{}{}{}
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
+%
+%\iffalse
+%<*example>
+%\fi
+\begin{docCommand}{springpotentialenergyplaces}
+{\marg{stiffness}\marg{stretch}}
+Command for spring potential energy.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\springpotentialenergyplaces{}{}
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
+%
+%\iffalse
+%<*example>
+%\fi
+\begin{docCommand}{genericelectricdipoleonaxisplaces}
+{\marg{const}\marg{charge}\marg{separation}\marg{dist}\marg{direction}}
+Command for generic expression for dipole field on the dipole's axis. The required 
+arguments are, from left to right, a constant of proportionality, a charge, a dipole 
+separation, the distance to the field point, and a vector direction. In practice, 
+these should all be provided in numerical form.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\genericelectricdipoleonaxisplaces{}{}{}{}{}
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
+%
+%\iffalse
+%<*example>
+%\fi
+\begin{docCommand}{genericelectricdipoleplaces}
+{\marg{const}\marg{charge}\marg{separation}\marg{dist}\marg{direction}}
+Command for generic expression for dipole field. The required arguments are, from 
+left to right, a constant of proportionality, a charge, a dipole separation, the 
+distance to the field point, and a vector direction. In practice, these should all 
+be provided in numerical form.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\genericelectricdipoleplaces{}{}{}{}{}
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
+%
+%\iffalse
+%<*example>
+%\fi
+\begin{docCommand}{electricinteractionplaces}
+{\marg{charge1}\marg{charge2}\marg{distance}\marg{direction}}
+Command for electric interaction.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\electricinteractionplaces{}{}{}{}
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
+%
+%\iffalse
+%<*example>
+%\fi
+\begin{docCommand}{Efieldofparticleplaces}
+{\marg{charge}\marg{distance}\marg{direction}}
+Command for electric field of a particle.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\Efieldofparticleplaces{}{}{}
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
+%
+%\iffalse
+%<*example>
+%\fi
+\begin{docCommand}{Bfieldofparticleplaces}
+{\marg{charge}\marg{magvel}\marg{magr}\marg{vhat}\marg{rhat}}
+Command for magnetic field of a particle.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\Bfieldofparticleplaces{}{}{}{}{}
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
+%
+%\iffalse
+%<*example>
+%\fi
+\begin{docCommand}{electricpotentialenergyplaces}
+{\marg{charge1}\marg{charge2}\marg{distance}}
+Command for electric potential energy.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\electricpotentialenergyplaces{}{}{}
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
+%
+%\iffalse
+%<*example>
+%\fi
+\begin{docCommand}{electricdipoleonaxisplaces}
+{\marg{charge}\marg{separation}\marg{dist}\marg{direction}}
+Command for dipole electric field on the dipole's axis. The required arguments are, 
+from left to right, a charge, a dipole separation, the distance to the field point, 
+and a vector direction. In practice, these should all be provided in numerical form.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\electricdipoleonaxisplaces{}{}{}{}
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
+%
+%\iffalse
+%<*example>
+%\fi
+\begin{docCommand}{electricdipoleonbisectorplaces}
+{\marg{charge}\marg{separation}\marg{dist}\marg{direction}}
+Command for dipole electric field. The required arguments are, from left to right, 
+a charge, a dipole separation, the distance to the field point, and a vector 
+direction. In practice, these should all be provided in numerical form.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\electricdipoleonbisectorplaces{}{}{}{}
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
+%
 % The underlying strategy is to \textit{think about how you would say what you want
 % to write and then write it the way you would say it}. With a few exceptions, this
 % is how \mandi\ works. You need not worry about units because \mandi\ knows what
@@ -407,53 +680,68 @@
 % \mandi\ knows about them and in doing so, you give the new quantities the same
 % names they would normally have.
 %
-% The second main design goal provides a similar approach to typesetting the most
-% frequently used symbolic expressions in introductory physics. If you want to save 
-% time in writing out the expression for the electric field of a particle, just use
+% So now how to you go about getting numerical values (with units) into the 
+% placeholders? Use the \refCom{define} command to define a variable containing 
+% a desired quantity, and then pass that variable to the above commands and that 
+% quantity will appear in the corresponding placeholder.
 %
 %\iffalse
 %<*example>
 %\fi
+\begin{docCommand}{define}{\marg{variablename}\marg{quantity}}
+Defines a variable, actually a new command, named \cs{variablename} and sets its
+value to \cs{quantity}. \textbf{Note that digits are not permitted in command names 
+in \LaTeX.}
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\define{\massone}{\mass{25}}
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
+%
+% Suppose you want to calculate the gravitational force on one object due to
+% another. You need two masses, and their mutual distance, and a direction. You 
+% can say, for example, |\define{\massone}{\mass{5}| to create a variable |\massone|
+% containing a mass of \mass{5}. Note that you don't have to worry about units 
+% because the \refCom{mass} command handles that for you. Similarly, you can go on 
+% and say |\define{\masstwo}{\mass{12}| and |\define{\myr}{\displacement{5}| and
+% |\define{\mydir}{\mivector{0,-1,0}|. Now just call the 
+% \refCom{gravitationalinteractionplaces} command with these arguments (in the 
+% correct order of course) and \LaTeX\ will do the rest when you compile your 
+% document. The entire process would look like this:
+%
+%\iffalse
+%<*example>
+%\fi
 \begin{dispExample}
-\Efieldofparticle
+\define{\massone}{\mass{5}}
+\define{\masstwo}{\mass{12}}
+\define{\myr}{\displacement{5}}
+\define{\mydir}{\mivector{0,-1,0}}
+\gravitationalinteractionplaces{\massone}{\masstwo}{\myr}{\mydir} =
+\vectorforce{0,-1.60\xtento{-10},0}
 \end{dispExample}
 %\iffalse
 %</example>
 %\fi
 %
-% which, as you can see, takes fewer keystrokes and it's easier to remember. Correct
-% vector notation is automatically enforced, leading students to get used to seeing
-% it and, hopefully, using it in their own calculations. Yes, this is a bit of an
-% agenda on my part, but my experience has been that students don't recognize or 
-% appreciate the utility of vector notation and thus their physical reasoning may
-% suffer as a result. So by using \mandi\ they use simple commands that mirror what
-% they're thinking, or what they're supposed to be thinking (yes, another agenda),
-% and in the process see the correct typeset output.
+% Of course you must calculate the final numerical result yourself because \mandi\ 
+% doesn't (yet) do calculations. One very important restriction on variable names is 
+% that \LaTeX\ doesn't allow digits in command or variable names and thus that 
+% restriction applies here too.
 %
-% There is another persistent problem with introductory physics textbooks, and that 
-% is that many authors do not use consistent notation. Many authors define the
-% notation for a vector's magnitude to be either \magvect{a} or \absof{\vect{a}} in 
-% an early chapter, but then completely ignore that notation and simply use \(a\)
-% later in the book. I have never understood the (lack of) logic behind this practice
-% and find it more than annoying. Textbooks authors should know better, and should
-% set a better example for introductory students. I propose that using \mandi\
-% would eliminate all last vestiges of all excuses for not setting this one good
-% example for introductory students.
-%
 % This barely scratches the surface in describing \mandi\ so continue reading this
-% document to see everything it can do.
+% document to see everything it can do. You will learn new commands as you need 
+% them in your work. To start with, you should at least read the section on
+% \hyperlink{target2}{SI units} and the section on 
+% \hyperlink{target3}{physics quantities}.
 %
 % \section{Features and Commands}
-% \subsection{Autosized Parentheses Removed}
-% An experimental feature of past \mandi\ versions was autosized parentheses in math
-% mode. This feature has been removed, mostly because parentheses and some other 
-% delimiters have been replaced by commands that leave placeholders if the argument
-% is empty. Autosized parentheses may return in a future version.
-% 
 % \subsection{SI Base Units and Dimensions}
-% This is not a tutorial on SI units and the user is assumed to be familiar with SI
-% rules and usage. Begin by defining shortcuts for the units for the seven SI base 
-% quantities:
+% This is not a tutorial on \hypertarget{target2}{SI units} and the user is assumed 
+% to be familiar with SI rules and usage. Begin by defining shortcuts for the units 
+% for the seven SI base quantities:
 % \textit{spatial displacement} (what others call \textit{length}), \textit{mass}, 
 % \textit{temporal displacement} (what others call \textit{time}, but we will call 
 % it \textit{duration} in most cases), \textit{electric current}, \textit
@@ -538,7 +826,7 @@
 %</example>
 %\fi
 %
-% If \mandi\ was invoked with \opt{baseunits}, then every physical quantity will 
+% If \mandi\ was loaded with \opt{baseunits}, then every physical quantity will 
 % have a unit that is some product of powers of these seven base SI units. 
 % Exceptions are angular quantities, which will include either degrees or radians 
 % depending upon the application. Again, this is what we mean by \baseunits\ form.
@@ -653,7 +941,7 @@
 %</example>
 %\fi
 %
-% \subsection{Defining Physics Quantities}
+% \subsection{Defining Physical Quantities}
 %
 %\iffalse
 %<*example>
@@ -666,7 +954,7 @@
 %</example>
 %\fi
 %
-% Using this command causes several things to happen.
+% Using this \hypertarget{target3}{command} causes several things to happen.
 % \begin{itemize}
 %   \item A command \colDef{\cs{newname}}\marg{magnitude}, where \colDef{newname} 
 %   is the first argument of \colDef{\cs{newphysicsquantity}}, is created that 
@@ -714,24 +1002,26 @@
 % and its magnitude with one exception, and that is for velocity, the magnitude 
 % of which we sometimes call speed. Conceptually, however, velocity and speed are 
 % different entities. Therefore, \mandi\ has different commands for them. Actually, 
-% the \cs{speed} command is just an alias for \cs{velocity} and should only be used 
-% for scalars and never for vectors. This convention means that the same name is 
-% used for vector quantities and the corresponding magnitudes. 
+% the \refCom{speed} command is just an alias for \refCom{velocity} and should only 
+% be used for scalars and never for vectors. This convention means that the same 
+% name is used for vector quantities and the corresponding magnitudes. 
 %
 % \subsubsection{Defining Vector Quantities}
 %
 % All physical quantities are defined as in the momentum example above regardless
-% of whether the quantity is a scalar or a vector. To typeset a vector quantity in
-% terms of its components in some coordinate system (usually an orthonormal
-% cartesian system, specify an argument consisting of a vector with components as 
-% a comma separated list in a \cs{mivector} command. So specifying a momentum vector 
-% is as simple as
+% of whether the quantity is a scalar or a vector. To typeset a vector quantity 
+% in terms of its components in some coordinate system (usually an orthonormal
+% cartesian system, either specify an argument consisting of a vector with components 
+% as a comma separated list in a \refCom{mivector} command or prepend the quantity 
+% name with |vector|. So specifying a momentum vector is as simple as
 %
+%\changes{v2.6.0}{2016/04/30}{Added \cs{vectormomentum}.}
 %\iffalse
 %<*example>
 %\fi
 \begin{dispExample}
-\momentum{\mivector{3,2,-1}}
+\momentum{\mivector{3,2,-1}} \\
+\vectormomentum{3,2,-1}
 \end{dispExample}
 %\iffalse
 %</example>
@@ -739,25 +1029,24 @@
 %
 % where the notation corresponds to that used in \mi.
 %
-% \subsection{First Semester Physics}
-% The first semester of \mi\, and indeed most traditional introductory 
-% calculus-based physics course, focuses on mechanics, dynamics, and statistical 
-% mechanics.
+% \subsubsection{First Semester Physics}
+% The first semester of most traditional introductory calculus-based physics 
+% courses focuses on mechanics, dynamics, and statistical mechanics.
 %
-% \subsubsection{Predefined Quantities}
-%
-% The seven fundamental quantities are similarly defined and examples of their
-% usage is given in the following table.
-%
+%\changes{v2.6.0}{2016/04/30}{Added \cs{vectordisplacement}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{displacement}{\marg{magnitude}}
+\begin{docCommand}{displacement}{\marg{magnitude or vector}}
 Command for displacement.
 \end{docCommand}
+\begin{docCommand}{vectordisplacement}{\marg{commadelimitedlistofcomps}}
+Command for vector displacement.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-a displacement of \displacement{5}  \\
-a displacement of \displacement{\mivector{3,2,-1}}
+\displacement{5}                 \\
+\displacement{\mivector{3,2,-1}} \\
+\vectordisplacement{1,2,3}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -770,7 +1059,7 @@
 Command for mass.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a mass of \mass{5}
+\mass{5}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -783,7 +1072,7 @@
 Command for duration.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a duration of \duration{5}
+\duration{5}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -796,7 +1085,7 @@
 Command for current.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a current of \current{5}
+\current{5}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -809,7 +1098,7 @@
 Command for temperature.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a temperature of \temperature{5}
+\temperature{5}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -822,7 +1111,7 @@
 Command for amount.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an amount of \amount{5}
+\amount{5}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -835,7 +1124,7 @@
 Command for luminous intensity.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a luminous intensity of \luminous{5}
+\luminous{5}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -851,7 +1140,7 @@
 Command for plane angle in radians.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a plane angle of \planeangle{5}
+\planeangle{5}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -864,7 +1153,7 @@
 Command for solidangle.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a solid angle of \solidangle{5}
+\solidangle{5}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -877,7 +1166,7 @@
 Command for plane angle in degrees.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a plane angle of \indegrees{5}
+\indegrees{5}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -890,7 +1179,7 @@
 Command for plane angle in minutes of arc.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an angle of \inarcminutes{5}
+\inarcminutes{5}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -903,7 +1192,7 @@
 Command for plane angle in seconds of arc.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an angle of \inarcseconds{5}
+\inarcseconds{5}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -916,7 +1205,7 @@
 Command for temperature in degrees Farenheit.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a temperature of \inFarenheit{68}
+\inFarenheit{68}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -929,7 +1218,7 @@
 Command for temperature in degrees Celsius.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a temperature of \inCelsius{20}
+\inCelsius{20}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -942,7 +1231,7 @@
 Command for energy in electron volts.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an energy of \ineV{10.2}
+\ineV{10.2}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -955,7 +1244,7 @@
 Command for mass in \(\mathrm{eV}\per c^2\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a mass of \ineVocs{1.1}
+\ineVocs{1.1}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -968,7 +1257,7 @@
 Command for momentum in \(\mathrm{eV}\per c\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a momentum of \ineVoc{3.6}
+\ineVoc{3.6}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -981,7 +1270,7 @@
 Command for energy in millions of electron volts.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an energy of \inMeV{2.2}
+\inMeV{2.2}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -994,7 +1283,7 @@
 Command for mass in \(\mathrm{MeV}\per c^2\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a mass of \inMeVocs{0.511}
+\inMeVocs{0.511}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1007,7 +1296,7 @@
 Command for momentum in \(\mathrm{MeV}\per c\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a momentum of \inMeVoc{3.6}
+\inMeVoc{3.6}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1020,7 +1309,7 @@
 Command for energy in millions of electron volts.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an energy of \inGeV{2.2}
+\inGeV{2.2}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1033,7 +1322,7 @@
 Command for mass in \(\mathrm{GeV}\per c^2\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a mass of \inGeVocs{0.511}
+\inGeVocs{0.511}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1046,7 +1335,7 @@
 Command for momentum in \(\mathrm{GeV}\per c\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a momentum of \inGeVoc{3.6}
+\inGeVoc{3.6}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1059,7 +1348,7 @@
 Command for mass in atomic mass units.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an atomic mass of \inamu{4.002602}
+\inamu{4.002602}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1072,7 +1361,7 @@
 Command for displacement in astronomical units.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a semimajor axis of \inAU{5.2}
+\inAU{5.2}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1085,7 +1374,7 @@
 Command for displacement in light years.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a distance of \inly{4.3}
+\inly{4.3}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1098,7 +1387,7 @@
 Command for displacement in light years written differently.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a distance of \incyr{4.3}
+\incyr{4.3}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1111,7 +1400,7 @@
 Command for displacement in parsecs.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a distance of \inpc{4.3}
+\inpc{4.3}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1124,7 +1413,7 @@
 Command for luminosity in solar multiples.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a luminosity of \insolarL{4.3}
+\insolarL{4.3}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1137,7 +1426,7 @@
 Command for temperature in solar multiples.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a temperature of \insolarT{2}
+\insolarT{2}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1150,7 +1439,7 @@
 Command for radius in solar multiples.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a radius of \insolarR{4.3}
+\insolarR{4.3}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1163,7 +1452,7 @@
 Command for mass in solar multiples.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a mass of \insolarM{4.3}
+\insolarM{4.3}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1176,7 +1465,7 @@
 Command for flux in solar multiples.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a flux of \insolarF{4.3}
+\insolarF{4.3}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1189,7 +1478,7 @@
 Command for apparent flux in solar multiples.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an apparent flux of \insolarf{4.3}
+\insolarf{4.3}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1202,7 +1491,7 @@
 Command for absolute magnitude in solar multiples.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an absolute magnitude of \insolarMag{2}
+\insolarMag{2}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1215,7 +1504,7 @@
 Command for apparent magnitude in solar multiples.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an apparent magnitude of \insolarmag{2}
+\insolarmag{2}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1227,37 +1516,50 @@
 \begin{docCommand}{insolarD}{\marg{magnitude}}
 Command for distance in solar multiples.
 \end{docCommand}
+\begin{docCommand}{insolard}{\marg{magnitude}}
+Identical to \refCom{insolarD} but uses \(d\). 
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-a distance of \insolarD{2}
+\insolarD{2} \\
+\insolard{2}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+% Angles are confusing in introductory physics because sometimes we write 
+% the unit and sometimes we do not. Some concepts, such as flux, are simplified 
+% by introducing solid angle.
+%
+% Now let us continue into first semester physics, defining quantities in the 
+% approximate order in which they appear in such a course. Use \refCom{timestento}
+% or \refCom{xtento} to get scientific notation, with the mantissa immediately 
+% preceding the command and the power as the required argument. \refCom{timestento} 
+% has an optional second argument that specifies a unit, but that is not needed or 
+% used in the following examples.
+%
+%\changes{v2.6.0}{2016/05/11}{Added \cs{direction}.}
+%\changes{v2.6.0}{2016/05/11}{Added \cs{vectordirection}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{insolard}{\marg{magnitude}}
-Identical to \cs{insolarD} but uses \(d\). 
+\begin{docCommand}{direction}{\marg{commadelimitedlistofcomps}}
+Command for coordinate representation of a vector direction. Direction has no unit.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-a distance of \insolard{2}
-\end{dispExample*}
+\begin{docCommand}{vectordirection}{\marg{commadelimitedlistofcomps}}
+This is an alias for \refCom{direction}.
+\end{docCommand}
+\begin{dispExample}
+\direction{a,b,c}                                                    \\
+\direction{\frac{1}{\sqrt{3}},\frac{1}{\sqrt{3}},\frac{1}{\sqrt{3}}} \\
+\vectordirection{a,b,c}                                              \\
+\vectordirection{\frac{1}{\sqrt{3}},\frac{1}{\sqrt{3}},\frac{1}{\sqrt{3}}}
+\end{dispExample}
 %\iffalse
 %</example>
 %\fi
 %
-% Angles are confusing in introductory physics because sometimes we write 
-% the unit and sometimes we do not. Some concepts, such as flux, are simplified 
-% by introducing solid angle.
-%
-% Now let us move on into first semester physics, defining quantities in the 
-% approximate order in which they appear in \mi. Use |M\timestento{P}[U]| to get 
-% scientific notation, with the mantissa immediately preceding the command and 
-% the exponent as the required argument. |\timestento| has an optional second 
-% argument that specifies a unit, but that is not needed or used in the following 
-% examples.
-%
+%\changes{v2.6.0}{2016/04/30}{Added \cs{vectorvelocityc}.}
 %\iffalse
 %<*example>
 %\fi
@@ -1264,17 +1566,22 @@
 \begin{docCommand}{velocityc}{\marg{magnitude or vector}}
 Command for velocity as a fraction of \(c\).
 \end{docCommand}
+\begin{docCommand}{vectorvelocityc}{\marg{commadelimitedlistofcomps}}
+Command for vector velocity as a fraction of \(c\).
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-a velocity of \velocityc{0.9987} \\
-a velocity of \velocityc{\mivector{0,0.9987,0}} \\
-a velocity of \mivector{\velocityc{\frac{1}{\sqrt{3}}},\\
-\velocityc{\frac{1}{\sqrt{3}}},\\
-\velocityc{\frac{1}{\sqrt{3}}}}
+\velocityc{0.9987}                       \\
+\velocityc{\mivector{0,0.9987,0}}        \\
+\mivector{\velocityc{\frac{1}{\sqrt{3}}} \\
+\velocityc{\frac{1}{\sqrt{3}}}           \\
+\velocityc{\frac{1}{\sqrt{3}}}}          \\
+\vectorvelocityc{0,0.9987,0}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/04/30}{Added \cs{vectorvelocity}.}
 %\iffalse
 %<*example>
 %\fi
@@ -1281,9 +1588,13 @@
 \begin{docCommand}{velocity}{\marg{magnitude or vector}}
 Command for velocity. 
 \end{docCommand}
+\begin{docCommand}{vectorvelocity}{\marg{commadelimitedlistofcomps}}
+Command for vector velocity.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-a velocity of \velocity{2.34} \\
-a velocity of \velocity{\mivector{3,2,-1}}
+\velocity{2.34}              \\
+\velocity{\mivector{3,2,-1}} \\
+\vectorvelocity{3,2,-1}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1297,11 +1608,10 @@
 displacement and duration while speed is defined as the quotient of distance 
 traveled and duration. They have the same dimension and unit, but are slightly 
 conceptually different so separate commands are provided. I've never seen speed 
-used as anything other than a scalar, but of course you can specify a vector 
-if you wish.
+used as anything other than a scalar.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a speed of \velocity{8.25}
+\velocity{8.25}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1318,7 +1628,7 @@
 quantity is needed.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a Lorentz factor of \lorentz{2.34}
+\lorentz{2.34}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1330,14 +1640,19 @@
 \begin{docCommand}{momentum}{\marg{magnitude or vector}}
 Command for momentum.
 \end{docCommand}
+\begin{docCommand}{vectormomentum}{\marg{commadelimitedlistofcomps}}
+Command for vector momentum.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-a momentum of \momentum{2.34}  \\
-a momentum of \momentum{\mivector{3,2,-1}}
+\momentum{2.34}              \\
+\momentum{\mivector{3,2,-1}} \\
+\vectormomentum{3,2,-1}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/04/30}{Added \cs{vectoracceleration}.}
 %\iffalse
 %<*example>
 %\fi
@@ -1344,23 +1659,32 @@
 \begin{docCommand}{acceleration}{\marg{magnitude or vector}}
 Command for acceleration.
 \end{docCommand}
+\begin{docCommand}{vectoracceleration}{\marg{commadelimitedlistofcomps}}
+Command for vector acceleration.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-an acceleration of \acceleration{2.34} \\
-an acceleration of \acceleration{\mivector{3,2,-1}}
+\acceleration{2.34}              \\
+\acceleration{\mivector{3,2,-1}} \\
+\vectoracceleration{3,2,-1}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/04/30}{Added \cs{vectorgravitationalfield}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{gravitationalfield}{\marg{magnitude or vector}}
+\begin{docCommand}{gravitationalfield}{\marg{commadelimitedlistofcomps}}
 Command for gravitational field.
 \end{docCommand}
+\begin{docCommand}{vectorgravitationalfield}{\marg{magnitude or vector}}
+Command for vector gravitational field.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-a gravitational field of \gravitationalfield{2.34} \\
-a gravitational field of \gravitationalfield{\mivector{3,2,-1}}
+\gravitationalfield{2.34}              \\
+\gravitationalfield{\mivector{3,2,-1}} \\
+\vectorgravitationalfield{3,2,-1}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1373,12 +1697,13 @@
 Command for gravitational potential.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a gravitational potential of \gravitationalpotential{2.34}
+\gravitationalpotential{2.34}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/04/30}{Added \cs{vectorimpulse}.}
 %\iffalse
 %<*example>
 %\fi
@@ -1386,14 +1711,19 @@
 Command for impulse. Impulse and change in momentum are conceptually different 
 and a case can be made for expressing the in different, but equivalent, units.
 \end{docCommand}
+\begin{docCommand}{vectorimpulse}{\marg{commadelimitedlistofcomps}}
+Command for vector impulse.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-an impulse of \impulse{2.34} \\
-an impulse of \impulse{\mivector{3,2,-1}}
+\impulse{2.34}              \\
+\impulse{\mivector{3,2,-1}} \\
+\vectorimpulse{3,2,-1}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/04/30}{Added \cs{vectorforce}.}
 %\iffalse
 %<*example>
 %\fi
@@ -1400,9 +1730,13 @@
 \begin{docCommand}{force}{\marg{magnitude or vector}}
 Command for force.
 \end{docCommand}
+\begin{docCommand}{vectorforce}{\marg{commadelimitedlistofcomps}}
+Command for vector force.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-a force of \force{2.34}  \\
-a force of \force{\mivector{3,2,-1}}
+\force{2.34}              \\
+\force{\mivector{3,2,-1}} \\
+\vectorforce{3,2,-1}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1415,7 +1749,7 @@
 Command for spring stiffness.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a spring stiffness of \springstiffness{2.34}
+\springstiffness{2.34}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1428,7 +1762,7 @@
 Command for spring stretch.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a spring stretch of \springstretch{2.34}
+\springstretch{2.34}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1441,7 +1775,7 @@
 Command for area.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an area of \area{2.34}
+\area{2.34}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1454,7 +1788,7 @@
 Command for volume.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a volume of \volume{2.34}
+\volume{2.34}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1467,7 +1801,7 @@
 Command for linear mass density.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a linear mass density of \linearmassdensity{2.34}
+\linearmassdensity{2.34}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1480,7 +1814,7 @@
 Command for area mass density.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an area mass density of \areamassdensity{2.34}
+\areamassdensity{2.34}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1493,7 +1827,7 @@
 Command for volume mass density.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a volume mass density of \volumemassdensity{2.34}
+\volumemassdensity{2.34}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1506,7 +1840,7 @@
 Command for Young's modulus.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a Young's modulus of \youngsmodulus{2.34\timestento{9}}
+\youngsmodulus{2.34\timestento{9}}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1520,7 +1854,7 @@
 be made for expressing them in different, but equivalent, units.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an amount of work \work{2.34}
+\work{2.34}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1534,7 +1868,7 @@
 be made for expressing them in different, but equivalent, units.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an amount of energy \energy{2.34}
+\energy{2.34}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1547,7 +1881,7 @@
 Command for power.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an amount of power \power{2.34}
+\power{2.34}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1560,12 +1894,13 @@
 Command for specific heat capacity.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a specific heat capacity of \specificheatcapacity{4.18\xtento{3}}
+\specificheatcapacity{4.18\xtento{3}}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/04/30}{Added \cs{vectorangularvelocity}.}
 %\iffalse
 %<*example>
 %\fi
@@ -1572,13 +1907,19 @@
 \begin{docCommand}{angularvelocity}{\marg{magnitude or vector}}
 Command for angular velocity.
 \end{docCommand}
+\begin{docCommand}{vectorangularvelocity}{\marg{commadelimitedlistofcomps}}
+Command for vector angular velocity.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-an angular velocity of \angularvelocity{2.34}
+\angularvelocity{2.34}              \\
+\angularvelocity{\mivector{3,2,-1}} \\
+\vectorangularvelocity{3,2,-1}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/04/30}{Added \cs{vectorangularacceleration}.}
 %\iffalse
 %<*example>
 %\fi
@@ -1585,28 +1926,40 @@
 \begin{docCommand}{angularacceleration}{\marg{magnitude or vector}}
 Command for angular acceleration.
 \end{docCommand}
+\begin{docCommand}{vectorangularacceleration}{\marg{commadelimitedlistofcomps}}
+Command for vector angular acceleration.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-an angular acceleration of \angularacceleration{2.34}
+\angularacceleration{2.34}              \\
+\angularacceleration{\mivector{3,2,-1}} \\
+\vectorangularacceleration{3,2,-1}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/04/30}{Added \cs{vectorangularmomentum}.}
 %\iffalse
 %<*example>
 %\fi
 \begin{docCommand}{angularmomentum}{\marg{magnitude or vector}}
-Command for angular momentum. Whether or not the units contain radians is 
-determined by whether the \opt{useradians} option was used when 
+Command for angular momentum. Whether or not the units contain radians 
+is determined by whether the \opt{useradians} option was used when 
 \pkgname{mandi} was loaded.
 \end{docCommand}
+\begin{docCommand}{vectorangularmomentum}{\marg{commadelimitedlistofcomps}}
+Command for vector angular momentum.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-an angular momentum of \angularmomentum{2.34}
+\angularmomentum{2.34}              \\
+\angularmomentum{\mivector{3,2,-1}} \\
+\vectorangularmomentum{3,2,-1}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/04/30}{Added \cs{vectorangularimpulse}.}
 %\iffalse
 %<*example>
 %\fi
@@ -1615,13 +1968,19 @@
 determined by whether the \opt{useradians} option was used when 
 \pkgname{mandi} was loaded.
 \end{docCommand}
+\begin{docCommand}{vectorangularimpulse}{\marg{commadelimitedlistofcomps}}
+Command for vector angular impulse.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-an angular impulse of \angularimpulse{2.34}
+\angularimpulse{2.34}              \\
+\angularimpulse{\mivector{3,2,-1}} \\
+\vectorangularimpulse{3,2,-1}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/04/30}{Added \cs{vectortorque}.}
 %\iffalse
 %<*example>
 %\fi
@@ -1630,8 +1989,13 @@
 determined by whether the \opt{useradians} option was used when 
 \pkgname{mandi} was loaded.
 \end{docCommand}
+\begin{docCommand}{vectortorque}{\marg{commadelimitedlistofcomps}}
+Command for vector torque.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-a torque of \torque{2.34}
+\torque{2.34}              \\
+\torque{\mivector{3,2,-1}} \\
+\vectortorque{3,2,-1}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1644,7 +2008,7 @@
 Command for moment of inertia.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a moment of inertia of \momentofinertia{2.34}
+\momentofinertia{2.34}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1657,7 +2021,7 @@
 Command for entropy.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an entropy of \entropy{2.34}
+\entropy{2.34}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1670,20 +2034,26 @@
 Command for wavelength.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a wavelength of \wavelength{4.00\timestento{-7}}
+\wavelength{4.00\timestento{-7}}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/04/30}{Added \cs{vectorwavenumber}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{wavenumber}{\marg{magnitude}}
+\begin{docCommand}{wavenumber}{\marg{magnitude or vector}}
 Command for wavenumber.
 \end{docCommand}
+\begin{docCommand}{vectorwavenumber}{\marg{commadelimitedlistofcomps}}
+Command for vector wavenumber.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-a wavenumber of \wavenumber{2.50\timestento{6}}
+\wavenumber{2.50\timestento{6}} \\
+\wavenumber{\mivector{3,2,-1}}  \\
+\vectorwavenumber{3,2,-1}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1696,7 +2066,7 @@
 Command for frequency.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a frequency of \frequency{7.50\timestento{14}}
+\frequency{7.50\timestento{14}}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1709,27 +2079,16 @@
 Command for angularfrequency.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an angular frequency of \angularfrequency{4.70\timestento{15}}
+\angularfrequency{4.70\timestento{15}}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-% Two quick thoughts here. First, work and energy are similar to momentum and 
-% impulse in that they come from two different concepts. Work comes from force 
-% acting through a spatial displacement and energy is a fundamental property of 
-% matter. It is a coincidence that they have the same dimensions and thus the same 
-% unit. Second, notice that I didn't define speed. Velocity is the only quantity 
-% I can think of for which we have different names for the vector and the magnitude 
-% of the vector. I decided to put it on the same footing as momentum, acceleration, 
-% and force.
+% \subsubsection{Second Semester Physics}
+% The second semester of introductory physics focuses on electromagnetic theory, 
+% and there are many primary and secondary quantities.
 %
-% \subsection{Second Semester Physics}
-% The second semester of \mi\ focuses on electromagnetic theory, and there are 
-% many primary and secondary quantities.
-%
-% \subsubsection{Predefined Quantities}
-%
 %\iffalse
 %<*example>
 %\fi
@@ -1737,7 +2096,7 @@
 Command for electric charge.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a charge of \charge{2\timestento{-9}}
+\charge{2\timestento{-9}}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1750,20 +2109,45 @@
 Command for permittivity.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a permittivity of \permittivity{9\timestento{-12}}
+\permittivity{9\timestento{-12}}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/04/30}{Added \cs{vectorelectricfield}.}
 %\iffalse
 %<*example>
 %\fi
+\begin{docCommand}{electricfield}{\marg{magnitude or vector}}
+Command for electric field.
+\end{docCommand}
+\begin{docCommand}{vectorelectricfield}{\marg{commadelimitedlistofcomps}}
+Command for vector electric field.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\electricfield{2\timestento{5}}   \\
+\electricfield{\mivector{3,2,-1}} \\
+\vectorelectricfield{3,2,-1}
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
+%
+%\changes{v2.6.0}{2016/04/30}{Added \cs{vectorelectricdipolemoment}.}
+%\iffalse
+%<*example>
+%\fi
 \begin{docCommand}{electricdipolemoment}{\marg{magnitude or vector}}
 Command for electric dipole moment.
 \end{docCommand}
+\begin{docCommand}{vectorelectricdipolemoment}{\marg{commadelimitedlistofcomps}}
+Command for vector electric dipole moment.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-an electric dipole moment of \electricdipolemoment{2\timestento{5}}
+\electricdipolemoment{2\timestento{5}}   \\
+\electricdipolemoment{\mivector{3,2,-1}} \\
+\vectorelectricdipolemoment{3,2,-1} 
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1776,12 +2160,13 @@
 Command for permeability.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a permeability of \permeability{4\pi\timestento{-7}}
+\permeability{4\pi\timestento{-7}}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/04/30}{Added \cs{vectormagneticfield}.}
 %\iffalse
 %<*example>
 %\fi
@@ -1788,22 +2173,33 @@
 \begin{docCommand}{magneticfield}{\marg{magnitude or vector}}
 Command for magnetic field (also called magnetic induction).
 \end{docCommand}
+\begin{docCommand}{vectormagneticfield}{\marg{commadelimitedlistofcomps}}
+Command for vector magnetic field (also called magnetic induction).
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-a magnetic field of \magneticfield{1.25}
+\magneticfield{1.25}              \\
+\magneticfield{\mivector{3,2,-1}} \\
+\vectormagneticfield{3,2,-1}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/04/30}{Added \cs{vectorcmagneticfield}.}
 %\iffalse
 %<*example>
 %\fi
 \begin{docCommand}{cmagneticfield}{\marg{magnitude or vector}}
-Command for product of \(\mathrm{c}\) and magnetic field. This quantity is 
+Command for product of \(c\) and magnetic field. This quantity is 
 convenient for symmetry.
 \end{docCommand}
+\begin{docCommand}{vectorcmagneticfield}{\marg{commadelimitedlistofcomps}}
+Command for product of \(c\) and magnetic field as a vector.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-a magnetic field of \cmagneticfield{1.25}
+\cmagneticfield{1.25}              \\
+\cmagneticfield{\mivector{3,2,-1}} \\
+\vectorcmagneticfield{3,2,-1}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1816,7 +2212,7 @@
 Command for linear charge density.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a linear charge density of \linearchargedensity{4.5\timestento{-3}}
+\linearchargedensity{4.5\timestento{-3}}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1829,7 +2225,7 @@
 Command for area charge density.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an area charge density of \areachargedensity{1.25}
+\areachargedensity{1.25}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1842,7 +2238,7 @@
 Command for volume charge density.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a volume charge density of \volumechargedensity{1.25}
+\volumechargedensity{1.25}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1855,7 +2251,7 @@
 Command for electron mobility.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a mobility of \areachargedensity{4.5\timestento{-3}}
+\areachargedensity{4.5\timestento{-3}}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1868,7 +2264,7 @@
 Command for electron number density.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a number density of \numberdensity{2\timestento{18}}
+\numberdensity{2\timestento{18}}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1881,7 +2277,7 @@
 Command for polarizability.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a polarizability of \polarizability{1.96\timestento{-40}}
+\polarizability{1.96\timestento{-40}}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1894,7 +2290,7 @@
 Command for electric potential.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an electric potential of \electricpotential{1.5}
+\electricpotential{1.5}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1907,7 +2303,7 @@
 Command for emf.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an emf of \emf{1.5}
+\emf{1.5}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1920,7 +2316,7 @@
 Command for dielectric constant.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a dielectric constant of \dielectricconstant{1.5}
+\dielectricconstant{1.5}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1933,7 +2329,7 @@
 Command for index of refraction.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an index of refraction of \indexofrefraction{1.5}
+\indexofrefraction{1.5}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1946,7 +2342,7 @@
 Command for relative permittivity.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a relative permittivity of \relativepermittivity{0.9}
+\relativepermittivity{0.9}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -1959,46 +2355,87 @@
 Command for relative permeability.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a relative permeability of \relativepermeability{0.9}
+\relativepermeability{0.9}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/05/03}{Added \cs{poyntingvector}.}
 %\iffalse
 %<*example>
 %\fi
+\begin{docCommand}{poyntingvector}{\marg{commadelimitedlistofcomps}}
+Command for Poynting vector. This is an alias for \refCom{vectorenergyflux}.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\poyntingvector{3,2,-1}
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
+%
+%\iffalse
+%<*example>
+%\fi
 \begin{docCommand}{energydensity}{\marg{magnitude}}
 Command for energy density.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an energy density of \energydensity{1.25}
+\energydensity{1.25}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/05/03}{Added \cs{energyflux}.}
+%\changes{v2.6.0}{2016/05/11}{Added \cs{vectorenergyflux}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{energyflux}{\marg{magnitude}}
+\begin{docCommand}{energyflux}{\marg{magnitude or vector}}
 Command for energy flux.
 \end{docCommand}
+\begin{docCommand}{vectorenergyflux}{\marg{commadelimitedlistofcomps}}
+Command for vector energy flux.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-an energy flux of \energyflux{4\timestento{26}}
+\energyflux{4\timestento{26}}  \\
+\energyflux{\mivector{3,2,-1}} \\
+\vectorenergyflux{3,2,-1}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/05/03}{Added \cs{momentumflux}.}
+%\changes{v2.6.0}{2016/05/11}{Added \cs{vectormomentumflux}.}
 %\iffalse
 %<*example>
 %\fi
+\begin{docCommand}{momentumflux}{\marg{magnitude or vector}}
+Command for momentum flux.
+\end{docCommand}
+\begin{docCommand}{vectormomentumflux}{\marg{commadelimitedlistofcomps}}
+Command for vector momentum flux.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\momentumflux{4\timestento{26}}  \\
+\momentumflux{\mivector{3,2,-1}} \\
+\vectormomentumflux{3,2,-1}
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
+%
+%\iffalse
+%<*example>
+%\fi
 \begin{docCommand}{electroncurrent}{\marg{magnitude}}
 Command for electron current.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an electron current of \electroncurrent{2\timestento{18}}
+\electroncurrent{2\timestento{18}}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2011,12 +2448,13 @@
 Command for conventional current.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a conventional current of \conventionalcurrent{0.003}
+\conventionalcurrent{0.003}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/04/30}{Added \cs{vectormagneticdipolemoment}.}
 %\iffalse
 %<*example>
 %\fi
@@ -2023,13 +2461,19 @@
 \begin{docCommand}{magneticdipolemoment}{\marg{magnitude or vector}}
 Command for magnetic dipole moment.
 \end{docCommand}
+\begin{docCommand}{vectormagneticdipolemoment}{\marg{commadelimitedlistofcomps}}
+Command for vector magnetic dipole moment.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-a magnetic dipole moment of \magneticdipolemoment{1.25}
+\magneticdipolemoment{1.25}              \\
+\magneticdipolemoment{\mivector{3,2,-1}} \\
+\vectormagneticdipolemoment{3,2,-1}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/04/30}{Added \cs{vectorcurrentdensity}.}
 %\iffalse
 %<*example>
 %\fi
@@ -2036,8 +2480,13 @@
 \begin{docCommand}{currentdensity}{\marg{magnitude or vector}}
 Command for current density.
 \end{docCommand}
+\begin{docCommand}{vectorcurrentdensity}{\marg{commadelimitedlistofcomps}}
+Command for vector current density.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-a current density of \currentdensity{1.25}
+\currentdensity{1.25}              \\
+\currentdensity{\mivector{3,2,-1}} \\
+\vectorcurrentdensity{3,2,-1}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2050,7 +2499,7 @@
 Command for electric flux.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an electric flux of \electricflux{1.25}
+\electricflux{1.25}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2063,7 +2512,7 @@
 Command for magnetic flux.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a magnetic flux of \magneticflux{1.25}
+\magneticflux{1.25}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2076,7 +2525,7 @@
 Command for capacitance.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a capacitance of \capacitance{1.00}
+\capacitance{1.00}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2089,7 +2538,7 @@
 Command for inductance.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-an inductance of \inductance{1.00}
+\inductance{1.00}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2102,7 +2551,7 @@
 Command for conductivity.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a conductivity of \conductivity{1.25}
+\conductivity{1.25}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2115,7 +2564,7 @@
 Command for resistivity.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a resistivity of \resistivity{1.25}
+\resistivity{1.25}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2128,7 +2577,7 @@
 Command for resistance.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a resistance of \resistance{1\timestento{6}}
+\resistance{1\timestento{6}}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2141,7 +2590,7 @@
 Command for conductance.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a conductance of \conductance{1\timestento{6}}
+\conductance{1\timestento{6}}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2155,13 +2604,13 @@
 Command for magnetic charge, in case it actually exists.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a magnetic charge of \magneticcharge{1.25}
+\magneticcharge{1.25}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-% \subsection{Further Words on Units}
+% \subsubsection{Further Words on Units}
 % The form of a quantity's unit can be changed on the fly regardless of the 
 % global format determined by \opt{baseunits} and \opt{drvdunits}. One way, 
 % as illustrated in the table above, is to append |baseunit|, |drvdunit|, 
@@ -2177,7 +2626,7 @@
 Command for using base units in place.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a momentum of \hereusebaseunit{\momentum{3}}
+\hereusebaseunit{\momentum{3}}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2190,7 +2639,7 @@
 Command for using derived units in place.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a momentum of \hereusedrvdunit{\momentum{3}}
+\hereusedrvdunit{\momentum{3}}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2203,7 +2652,7 @@
 Command for using traditional units in place.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a momentum of \hereusetradunit{\momentum{3}}
+\hereusetradunit{\momentum{3}}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2276,7 +2725,7 @@
 %<*example>
 %\fi
 \begin{docCommand}{perpusedrvdunit}{}
-Command for perpetually using derived units..
+Command for perpetually using derived units.
 \end{docCommand}
 %\iffalse
 %</example>
@@ -2286,19 +2735,29 @@
 %<*example>
 %\fi
 \begin{docCommand}{perpusetradunit}{}
-Command for perpetually using traditional units..
+Command for perpetually using traditional units.
 \end{docCommand}
 %\iffalse
 %</example>
 %\fi
 %
-%\newpage
-%\changes{v2.4.0}{2014/12/16}{Added table of all predefined quantities with 
-%  their units.}
-%\newgeometry{textwidth=8.5in}
-%\begin{center}
+%\changes{v2.4.0}{2014/12/16}{Added table of all predefined quantities with units.}
+%\subsubsection{All Predefined Quantities}
+%
+%\changes{v2.6.0}{2016/05/20}{Documented \cs{chkquantity}.}
+%\iffalse
+%<*example>
+%\fi
+\begin{docCommand}{chkquantity}{\marg{quantityname}}
+Diagnostic command for all of the units for a defined physical quantity. See table
+below.
+\end{docCommand}
+%\iffalse
+%</example>
+%\fi
+%
 % Here are all the predefined quantities and their units.
-%\end{center}
+%\begin{adjustwidth}{-0.5in}{-0.5in}
 %
 %\chkquantity{displacement}
 %\chkquantity{mass}
@@ -2345,6 +2804,9 @@
 %\chkquantity{charge}
 %\chkquantity{permittivity}
 %\chkquantity{permeability}
+%\chkquantity{linearchargedensity}
+%\chkquantity{areachargedensity}
+%\chkquantity{volumechargedensity}
 %\chkquantity{electricfield}
 %\chkquantity{electricdipolemoment}
 %\chkquantity{electricflux}
@@ -2351,9 +2813,6 @@
 %\chkquantity{magneticfield}
 %\chkquantity{magneticflux}
 %\chkquantity{cmagneticfield}
-%\chkquantity{linearchargedensity}
-%\chkquantity{areachargedensity}
-%\chkquantity{volumechargedensity}
 %\chkquantity{mobility}
 %\chkquantity{numberdensity}
 %\chkquantity{polarizability}
@@ -2364,6 +2823,7 @@
 %\chkquantity{relativepermittivity}
 %\chkquantity{relativepermeability}
 %\chkquantity{energydensity}
+%\chkquantity{momentumflux}
 %\chkquantity{energyflux}
 %\chkquantity{electroncurrent}
 %\chkquantity{conventionalcurrent}
@@ -2376,157 +2836,162 @@
 %\chkquantity{resistance}
 %\chkquantity{conductance}
 %\chkquantity{magneticcharge}
-%\restoregeometry
+%\end{adjustwidth}
 %
-% \subsection{Symbolic Expressions with Vectors}
-% \subsubsection{Basic Vectors}
+% \newpage
+%\changes{v2.5.0}{2015/10/09}{Documented precise and approximate 
+%  constant values.}
+% \subsection{Physical Constants}
+% \subsubsection{Defining Physical Constants}
+% \mandi\ has many predefined \hypertarget{target1}{physical constants}. 
+% This section explains how to use them.
 %
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vect}{\marg{kernel}}
-Symbol for a vector quantity.
+\begin{docCommand}{newphysicsconstant}
+{\marg{name}\marg{symbol}{\{\cs{mi at p\marg{approx}\marg{precise}}\}}\marg{\baseunits}\\
+\oarg{\drvdunits}\oarg{\tradunits}%
+}%
+
+Defines a new physical constant with a name, a symbol, approximate and 
+precise numerical values, required base units, optional derived units, 
+and optional traditional units. The \cs{mi at p} command is defined
+internally and is not meant to be otherwise used.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\vect{p}
-\end{dispExample*}
+\begin{dispListing}
+Here is how \planck (Planck's constant) is defined internally, showing 
+each part of the definition on a separate line.
+\newphysicsconstant{planck}
+  {\ensuremath{h}}
+  {\mi at p{6.6}{6.6261}\timestento{-34}}
+  {\m\squared\usk\kg\usk\reciprocal\s}
+  [\J\usk\s]
+  [\J\usk\s]
+\end{dispListing}
 %\iffalse
 %</example>
 %\fi
 %
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{magvect}{\marg{kernel}}
-Symbol for magnitude of a vector quantity.
-\end{docCommand}
-\begin{dispExample*}{sidebyside}
-\magvect{p}
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
+% Using this command causes several things to happen.
+% \begin{itemize}
+%   \item A command \cs{name} is created and contains the constant and 
+%   units typeset according to the options given when \mandi\ was loaded.
+%   \item A command \cs{namemathsymbol} is created that expresses
+%   \textbf{only} the constant's mathematical symbol.
+%   \item A command \cs{namevalue} is created that expresses
+%   \textbf{only} the constant's approximate or precise numerical value. 
+%   Note that both values must be present when the constant is defined. 
+%   By default, precise values are always used but this can be changed 
+%   when \mandi\ is loaded. Note how the values are specified in the 
+%   definition of the constant.
+%   \item A command \cs{namebaseunit} is created that expresses 
+%   the constant and its units in \baseunits\ form.
+%   \item A command \cs{namedrvdunit} is created that expresses 
+%   the constant and its units in \drvdunits\ form.
+%   \item A command \cs{nametradunit} is created that 
+%   expresses the constant and its units in \tradunits\ form.
+%   \item A command \cs{nameonlybaseunit} is created that expresses 
+%   \textbf{only} the constant's units in \baseunits\ form.
+%   \item A command \cs{nameonlydrvdunit} is created that 
+%   expresses \textbf{only} the constant's units in \drvdunits\ form. 
+%   \item A command \cs{nameonlytradunit} is created that 
+%   expresses \textbf{only} the constant's units in \tradunits\ form. 
+% \end{itemize}
+% None of these commands takes any arguments.
 %
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{magsquaredvect}{\marg{kernel}}
-Symbol for squared magnitude of a vector quantity.
-\end{docCommand}
-\begin{dispExample*}{sidebyside}
-\magsquaredvect{p}
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
+% \newpage
+% \subsubsection{Predefined Physical Constants}
 %
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{magnvect}{\marg{kernel}\marg{exponent}}
-Symbol for magnitude of a vector quantity to arbitrary power.
-\end{docCommand}
-\begin{dispExample*}{sidebyside}
-\magnvect{r}{5}
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
+% In this section, precise values of constants are used. Approximate 
+% values are available as an option when the package is loaded.
 %
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{dirvect}{\marg{kernel}}
-Symbol for direction of a vector quantity. Use \cs{direction} as an alias.
+\begin{docCommand}{oofpez}{}
+Coulomb constant.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\dirvect{p} or \direction{p}
+\(\oofpezmathsymbol \approx \oofpez\)
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-%\changes{v2.5.0}{2015/11/29}{Added \cs{componentalong}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{componentalong}{\marg{alongvector}\marg{ofvector}}
-Symbol for the component along a vector of another vector. 
+\begin{docCommand}{oofpezcs}{}
+Alternate form of Coulomb constant.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\componentalong{\vect{v}}{\vect{u}}
+\(\oofpezcsmathsymbol \approx \oofpezcs\)
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-%\changes{v2.5.0}{2015/11/29}{Added \cs{expcomponentalong}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{expcomponentalong}{\marg{alongvector}\marg{ofvector}}
-Symbolic expression for the component along a vector of another vector. 
+\begin{docCommand}{vacuumpermittivity}{}
+Vacuum permittivity.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\expcomponentalong{\vect{v}}{\vect{u}}
-\end{dispExample*}
+\begin{dispExample}
+\(\vacuumpermittivitymathsymbol \approx \vacuumpermittivity\)
+\end{dispExample}
 %\iffalse
 %</example>
 %\fi
 %
-%\changes{v2.5.0}{2015/11/29}{Added \cs{ucomponentalong}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{ucomponentalong}{\marg{alongvector}\marg{ofvector}}
-Symbolic expression with unit vectors for the component along a vector of 
-another vector. 
+\begin{docCommand}{mzofp}{}
+Biot-Savart constant.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\ucomponentalong{\dirvect{v}}{\vect{u}}
+\(\mzofpmathsymbol \approx \mzofp\)
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-%\changes{v2.5.0}{2015/11/29}{Added \cs{projectiononto}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{projectiononto}{\marg{ontovector}\marg{ofvector}}
-Symbol for the projection onto a vector of another vector. 
+\begin{docCommand}{vacuumpermeability}{}
+Vacuum permeability.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\projectiononto{\vect{v}}{\vect{u}}
+\(\vacuumpermeabilitymathsymbol \approx \vacuumpermeability\)
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-%\changes{v2.5.0}{2015/11/29}{Added \cs{expprojectiononto}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{expprojectiononto}{\marg{alongvector}\marg{ofvector}}
-Symbolic expression for the projection onto a vector of another vector. 
+\begin{docCommand}{boltzmann}{}
+Boltzmann constant.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\expprojectiononto{\vect{v}}{\vect{u}}
+\(\boltzmannmathsymbol \approx \boltzmann\)
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-%\changes{v2.5.0}{2015/11/29}{Added \cs{uprojectiononto}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{uprojectiononto}{\marg{alongvector}\marg{ofvector}}
-Symbolic expression with unit vectors for the projection onto a vector of 
-another vector. 
+\begin{docCommand}{boltzmannineV}{}
+Alternate form of Boltlzmann constant.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\uprojectiononto{\dirvect{v}}{\vect{u}}
+\(\boltzmannineVmathsymbol \approx \boltzmannineV\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2535,55 +3000,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{mivector}
-  {\oarg{printeddelimiter}\marg{commadelimitedlistofcomps}\oarg{unit}}
-Generic workhorse command for vectors formatted as in \mi. Unless the first
-optional argument is specified, a comma is used in the output. Commas are
-always required in the mandatory argument.
+\begin{docCommand}{stefan}{}
+Stefan-Boltzmann constant.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\begin{align*}
-\msub{u}{\mu} &= \mivector{\ezero,\eone,\etwo,\ethree} \\
-\msub{u}{\mu} &= \mivector[\quad]{\ezero,\eone,\etwo,\ethree} \\
-\vect{v} &= \mivector{1,3,5}[\velocityonlytradunit]    \\
-\vect{E} &= \mivector{\oofpezmathsymbol \frac{Q}{x^2},0,0} \\
-\vect{E} &= \mivector[\quad]{\oofpezmathsymbol \frac{Q}{x^2},0,0}
-\end{align*}
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{ncompszerovect}{}
-Symbol for the zero vector expressed in components. Deprecated. Use \cs{mivector} 
-instead.
-\end{docCommand}
-\begin{dispExample*}{sidebyside}
-\ncompszerovect
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\changes{v2.5.0}{2015/11/29}{Fixed parentheses bug in \cs{magvectncomps}.}
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{magvectncomps}{\marg{listofcomps}\oarg{unit}}
-Expression for a vector's magnitude with numerical components and an optional 
-unit. The first example is the preferred and recommended way to handle units when 
-they are needed. The second example requires explicitly picking out the desired 
-unit form. The third example demonstrates components of a unit vector. It is 
-probably best for students to include components' units inside the radical than 
-to write them outside the radical.
-\end{docCommand}
 \begin{dispExample}
-\magvectncomps{\velocity{3.12},\velocity{4.04},\velocity{6.73}} \\
-\magvectncomps{3.12,4.04,6.73}[\velocityonlytradunit] \\
-\magvectncomps{\frac{1}{\sqrt{3}},\frac{1}{\sqrt{3}},\frac{1}{\sqrt{3}}}
+\(\stefanboltzmannmathsymbol \approx \stefanboltzmann\)
 \end{dispExample}
 %\iffalse
 %</example>
@@ -2592,11 +3013,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{scompsvect}{\marg{kernel}}
-Expression for a vector's symbolic components.
+\begin{docCommand}{planck}{}
+Planck constant.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\scompsvect{E}
+\(\planckmathsymbol \approx \planck\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2605,39 +3026,37 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{compvect}{\marg{kernel}\marg{component}}
-Isolates one of a vector's symbolic components.
+\begin{docCommand}{planckineV}{}
+Alternate form of Planck constant.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\compvect{E}{y}
+\(\planckmathsymbol \approx \planckineV\)
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-%\changes{v2.5.0}{2015/10/20}{Added \cs{scompsdirvect}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{scompsdirvect}{\marg{kernel}}
-Expression for a direction's symbolic components.
+\begin{docCommand}{planckbar}{}
+Reduced Planck constant (Dirac constant).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\scompsdirvect{r}
+\(\planckbarmathsymbol \approx \planckbar\)
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-%\changes{v2.5.0}{2015/10/20}{Added \cs{compdirvect}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{compdirvect}{\marg{kernel}\marg{component}}
-Isolates one of a direction's symbolic components.
+\begin{docCommand}{planckbarineV}{}
+Alternate form of reduced Planck constant (Dirac constant).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\compdirvect{r}{z}
+\(\planckbarmathsymbol \approx \planckbarineV\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2646,26 +3065,24 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{magvectscomps}{\marg{kernel}}
-Expression for a vector's magnitude in terms of its symbolic components.
+\begin{docCommand}{planckc}{}
+Planck constant times light speed.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\magvectscomps{B}
+\(\planckcmathsymbol \approx \planckc\)
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-% \subsubsection{Differentials and Derivatives of Vectors}
-%
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{dvect}{\marg{kernel}}
-Symbol for the differential of a vector.
+\begin{docCommand}{planckcineV}{}
+Alternate form of Planck constant times light speed.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a change \dvect{E} in electric field
+\(\planckcineVmathsymbol \approx \planckcineV\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2674,11 +3091,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Dvect}{\marg{kernel}}
-Identical to \cs{dvect} but uses \(\Delta\).
+\begin{docCommand}{rydberg}{}
+Rydberg constant.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-a change \Dvect{E} in electric field
+\(\rydbergmathsymbol \approx \rydberg\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2687,11 +3104,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{dirdvect}{\marg{kernel}}
-Symbol for the direction of a vector's differential.
+\begin{docCommand}{bohrradius}{}
+Bohr radius.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the direction \dirdvect{E} of the change
+\(\bohrradiusmathsymbol \approx \bohrradius\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2700,12 +3117,12 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{dirDvect}{\marg{kernel}}
-Identical to \cs{dirdvect} but uses \(\Delta\).
+\begin{docCommand}{finestructure}{}
+Fine structure constant.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-the direction \dirDvect{E} of the change
-\end{dispExample*}
+\begin{dispExample}
+\(\finestructuremathsymbol \approx \finestructure\)
+\end{dispExample}
 %\iffalse
 %</example>
 %\fi
@@ -2713,12 +3130,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{ddirvect}{\marg{kernel}}
-Symbol for the differential of a vector's direction. Use \cs{ddirection} as 
-an alias.
+\begin{docCommand}{avogadro}{}
+Avogadro constant.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the change \ddirvect{E} or \ddirection{E} in the direction of \vect{E}
+\(\avogadromathsymbol \approx \avogadro\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2727,13 +3143,12 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Ddirvect}{\marg{kernel}}
-Identical to \cs{ddirvect} but uses \(\Delta\). Use \cs{Ddirection} as 
-an alias.
+\begin{docCommand}{universalgrav}{}
+Universal gravitational constant.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-the direction \Ddirvect{E} or \Ddirection{E} of the change
-\end{dispExample*}
+\begin{dispExample}
+\(\universalgravmathsymbol \approx \universalgrav\)
+\end{dispExample}
 %\iffalse
 %</example>
 %\fi
@@ -2741,12 +3156,12 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{magdvect}{\marg{kernel}}
-Symbol for the magnitude of a vector's differential.
+\begin{docCommand}{surfacegravfield}{}
+Earth's surface gravitational field strength.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-the magnitude \magdvect{E} of the change
-\end{dispExample*}
+\begin{dispExample}
+\(\surfacegravfieldmathsymbol \approx \surfacegravfield\)
+\end{dispExample}
 %\iffalse
 %</example>
 %\fi
@@ -2754,11 +3169,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{magDvect}{\marg{kernel}}
-Identical to \cs{magdvect} but uses \(\Delta\).
+\begin{docCommand}{clight}{}
+Magnitude of light's velocity (photon constant).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the magnitude \magDvect{E} of the change
+\(\clightmathsymbol \approx \clight\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2767,11 +3182,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{dmagvect}{\marg{kernel}}
-Symbol for the differential of a vector's magnitude.
+\begin{docCommand}{clightinfeet}{}
+Alternate of magnitude of light's velocity (photon constant).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the change \dmagvect{E} in the magnitude
+\(\clightinfeetmathsymbol \approx \clightinfeet\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2780,11 +3195,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Dmagvect}{\marg{kernel}}
-Identical to \cs{dmagvect} but uses \(\Delta\).
+\begin{docCommand}{Ratom}{}
+Approximate atomic radius.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the change \Dmagvect{E} in the magnitude
+\(\Ratommathsymbol \approx \Ratom\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2793,11 +3208,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{scompsdvect}{\marg{kernel}}
-Symbolic components of a vector.
+\begin{docCommand}{Mproton}{}
+Proton mass.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the vector \scompsdvect{E}
+\(\Mprotonmathsymbol \approx \Mproton\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2806,11 +3221,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{scompsDvect}{\marg{kernel}}
-Identical to \cs{scompsdvect} but uses \(\Delta\).
+\begin{docCommand}{Mneutron}{}
+Neutron mass.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the vector \scompsDvect{E}
+\(\Mneutronmathsymbol \approx \Mneutron\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2819,11 +3234,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{compdvect}{\marg{kernel}\marg{component}}
-Isolates one symbolic component of a vector's differential.
+\begin{docCommand}{Mhydrogen}{}
+Hydrogen atom mass.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the \compdvect{E}{y} component of the change
+\(\Mhydrogenmathsymbol \approx \Mhydrogen\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2832,11 +3247,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{compDvect}{\marg{kernel}\marg{component}}
-Identical to \cs{compdvect} but uses \(\Delta\).
+\begin{docCommand}{Melectron}{}
+Electron mass.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the \compDvect{E}{y} component of the change
+\(\Melectronmathsymbol \approx \Melectron\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2845,11 +3260,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{dervect}{\marg{kernel}\marg{indvar}}
-Symbol for a vector's derivative with respect to an independent variable.
+\begin{docCommand}{echarge}{}
+Elementary charge quantum.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the derivative \dervect{E}{t}
+\(\echargemathsymbol \approx \echarge\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2858,11 +3273,14 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Dervect}{\marg{kernel}\marg{indvar}}
-Identical to \cs{dervect} but uses \(\Delta\).
+\begin{docCommand}{Qelectron}{}
+Electron charge.
 \end{docCommand}
+\begin{docCommand}{qelectron}{}
+Alias for \cs{Qelectron}.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-the derivative \Dervect{E}{t}
+\(\Qelectronmathsymbol \approx \Qelectron\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2871,12 +3289,14 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{dermagvect}{\marg{kernel}\marg{indvar}}
-Symbol for the derivative of a vector's magnitude with respect to an 
-independent variable.
+\begin{docCommand}{Qproton}{}
+Proton charge.
 \end{docCommand}
+\begin{docCommand}{qproton}{}
+Alias for \cs{Qproton}.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-the derivative \dermagvect{E}{t}
+\(\Qprotonmathsymbol \approx \Qproton\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2885,11 +3305,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Dermagvect}{\marg{kernel}\marg{indvar}}
-Identical to \cs{dermagvect} but uses \(\Delta\).
+\begin{docCommand}{MEarth}{}
+Earth's mass.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the derivative \Dermagvect{E}{t}
+\(\MEarthmathsymbol \approx \MEarth\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2898,12 +3318,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{derdirvect}{\marg{kernel}\marg{indvar}}
-Symbol for the derivative of a vector's direction with respect to an 
-independent variable. Use \cs{derdiraction} as an alias.
+\begin{docCommand}{MMoon}{}
+Moon's mass.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the derivative \derdirvect{E}{t} or \derdirection{E}{t}
+\(\MMoonmathsymbol \approx \MMoon\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2912,12 +3331,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Derdirvect}{\marg{kernel}\marg{indvar}}
-Identical to \cs{derdirvect} but uses \(\Delta\). Use \cs{Derdirection} as 
-an alias.
+\begin{docCommand}{MSun}{}
+Sun's mass.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the derivative \Derdirvect{E}{t} or \Derdirection{E}{t}
+\(\MSunmathsymbol \approx \MSun\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2926,12 +3344,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{scompsdervect}{\marg{kernel}\marg{indvar}}
-Symbolic components of a vector's derivative with respect to an independent 
-variable.
+\begin{docCommand}{REarth}{}
+Earth's radius.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the derivative \scompsdervect{E}{t}
+\(\REarthmathsymbol \approx \REarth\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2940,11 +3357,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{scompsDervect}{\marg{kernel}\marg{indvar}}
-Identical to \cs{scompsdervect} but uses \(\Delta\).
+\begin{docCommand}{RMoon}{}
+Moon's radius.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the derivative \scompsdervect{E}{t}
+\(\RMoonmathsymbol \approx \RMoon\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2953,12 +3370,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{compdervect}{\marg{kernel}\marg{component}\marg{indvar}}
-Isolates one component of a vector's derivative with respect to an 
-independent variable.
+\begin{docCommand}{RSun}{}
+Sun's radius.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the derivative \compdervect{E}{y}{t}
+\(\RSunmathsymbol \approx \RSun\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2967,11 +3383,14 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{compDervect}{\marg{kernel}\marg{component}\marg{indvar}}
-Identical to \cs{compdervect} but uses \(\Delta\).
+\begin{docCommand}{ESdist}{}
+Earth-Sun distance.
 \end{docCommand}
+\begin{docCommand}{SEdist}{}
+Alias for \refCom{ESdist}.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-the derivative \compDervect{E}{y}{t}
+\(\ESdistmathsymbol \approx \SEdist\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -2980,62 +3399,95 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{magdervect}{\marg{kernel}\marg{indvar}}
-Symbol for the magnitude of a vector's derivative with respect to an 
-independent variable.
+\begin{docCommand}{EMdist}{}
+Earth-Moon distance.
 \end{docCommand}
+\begin{docCommand}{MEdist}{}
+Alias for \refCom{EMdist}.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-the derivative \magdervect{E}{t}
+\(\EMdistmathsymbol \approx \EMdist\)
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.4.0}{2014/12/16}{Added table of all predefined constants 
+%  with their symbols and units.}
+%\subsubsection{All Predefined Constants}
+%
+%\changes{v2.6.0}{2016/05/20}{Documented \cs{chkconstant}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{magDervect}{\marg{kernel}\marg{indvar}}
-Identical to \cs{magdervect} but uses \(\Delta\).
+\begin{docCommand}{chkconstant}{\marg{constantname}}
+Diagnostic command for the symbol, value (either 
+\hyperlink{target4}{approximate or precise} depending on how the package 
+was loaded), and units for a defined physical constant. See table below.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-the derivative \magDervect{E}{t}
-\end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-% \subsubsection{Naming Conventions You Have Seen}
-% By now you probably understand that commands are named as closely as 
-% possible to the way you would say or write what you want. Every time you 
-% see |comp| you should think of a single component. Every time you see 
-% |scomps| you should think of a set of symbolic components. Every time you 
-% see |der| you should think derivative. Every time you see |dir| you should 
-% think direction. I have tried to make the names simple both logically and 
-% lexically.
+% Here are all the predefined constants and their units.
+%\begin{adjustwidth}{-0.5in}{-0.5in}
 %
-% \subsubsection{Subscripted or Indexed Vectors}
-% Now we have commands for vectors that carry subscripts or indices, usually 
-% to identify an object or something similar. Basically, |vect| becomes 
-% |vectsub|. Ideally, a subscript should not contain mathematical symbols. 
-% However, if you wish to do so, just wrap the symbol with |\(|\(\ldots \)|\)|
-% as you normally would. All of the commands for non-subscripted vectors are 
-% available for subscripted vectors.
+%\chkconstant{oofpez}
+%\chkconstant{oofpezcs}
+%\chkconstant{vacuumpermittivity}
+%\chkconstant{mzofp}
+%\chkconstant{vacuumpermeability}
+%\chkconstant{boltzmann}
+%\chkconstant{boltzmannineV}
+%\chkconstant{stefanboltzmann}
+%\chkconstant{planck}
+%\chkconstant{planckineV}
+%\chkconstant{planckbar}
+%\chkconstant{planckbarineV}
+%\chkconstant{planckc}
+%\chkconstant{planckcineV}
+%\chkconstant{rydberg}
+%\chkconstant{bohrradius}
+%\chkconstant{finestructure}
+%\chkconstant{avogadro}
+%\chkconstant{universalgrav}
+%\chkconstant{surfacegravfield}
+%\chkconstant{clight}
+%\chkconstant{clightinfeet}
+%\chkconstant{Ratom}
+%\chkconstant{Mproton}
+%\chkconstant{Mneutron}
+%\chkconstant{Mhydrogen}
+%\chkconstant{Melectron}
+%\chkconstant{echarge}
+%\chkconstant{Qelectron}
+%\chkconstant{qelectron}
+%\chkconstant{Qproton}
+%\chkconstant{qproton}
+%\chkconstant{MEarth}
+%\chkconstant{MMoon}
+%\chkconstant{MSun}
+%\chkconstant{REarth}
+%\chkconstant{RMoon}
+%\chkconstant{RSun}
+%\chkconstant{ESdist}
+%\chkconstant{EMdist}
+%\chkconstant{LSun}
+%\chkconstant{TSun}
+%\chkconstant{MagSun}
+%\chkconstant{magSun}
+%\end{adjustwidth}
 %
-% As a matter of convention, when the initial and final values of a quantity 
-% are referenced, they should be labeled with subscripts |i| and |f| respectively 
-% using the commands in this section and similarly named commands in other 
-% sections. If the quantity also refers to a particular entity (e.g.\ a ball), 
-% specify the |i| or |f| with a comma after the label 
-% (e.g.\ |\vectsub{r}{ball,f}|).
+% \subsection{Astronomical Constants and Quantities}
 %
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectsub}{\marg{kernel}\marg{sub}}
-Symbol for a subscripted vector.
+\begin{docCommand}{LSun}{}
+Sun's luminosity.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the vector \vectsub{p}{ball}
+\(\LSunmathsymbol \approx \LSun\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3044,11 +3496,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{magvectsub}{\marg{kernel}\marg{sub}}
-Symbol for a subscripted vector's magnitude.
+\begin{docCommand}{TSun}{}
+Sun's effective temperature.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\magvectsub{p}{ball}
+\(\TSunmathsymbol \approx \TSun\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3057,11 +3509,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{magsquaredvectsub}{\marg{kernel}\marg{sub}}
-Symbol for a subscripted vector's squared magnitude.
+\begin{docCommand}{MagSun}{}
+Sun's absolute magnitude.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\magsquaredvectsub{p}{ball}
+\(\MagSunmathsymbol \approx \MagSun\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3070,11 +3522,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{magnvectsub}{\marg{kernel}\marg{sub}\marg{exponent}}
-Symbol for a subscripted vector's magnitude to an arbitrary power.
+\begin{docCommand}{magSun}{}
+Sun's apparent magnitude.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\magnvectsub{r}{dipole}{5}
+\(\magSunmathsymbol \approx \magSun\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3083,24 +3535,24 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{dirvectsub}{\marg{kernel}\marg{sub}}
-Symbol for a subscripted vector's direction. Use \cs{directionsub} as an alias.
+\begin{docCommand}{Lstar}{\oarg{object}}
+Symbol for stellar luminosity.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\dirvectsub{p}{ball} or \directionsub{p}{ball}
+\Lstar or \Lstar[Sirius]
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
-%
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{scompsvectsub}{\marg{kernel}\marg{sub}}
-Symbolic components of a subscripted vector.
+\begin{docCommand}{Lsolar}{}
+Symbol for solar luminosity as a unit. Really just an alias for 
+|\Lstar[\(\odot\)]|.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the vector \scompsvectsub{p}{ball}
+\Lsolar
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3109,11 +3561,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{compvectsub}{\marg{kernel}\marg{sub}\marg{component}}
-Isolates one component of a subscripted vector.
+\begin{docCommand}{Tstar}{\oarg{object}}
+Symbol for stellar temperature.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the component \compvectsub{p}{ball}{z}
+\Tstar or \Tstar[Sirius]
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3122,38 +3574,25 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{magvectsubscomps}{\marg{kernel}\marg{sub}}
-Expression for a subscripted vector's magnitude in terms of symbolic 
-components.
+\begin{docCommand}{Tsolar}{}
+Symbol for solar temperature as a unit. Really just an alias for 
+|\Tstar[\(\odot\)]|.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the magnitude \magvectsubscomps{p}{ball}
+\Tsolar
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
-% 
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{dvectsub}{\marg{kernel}\marg{sub}}
-Differential of a subscripted vector.
-\end{docCommand}
-\begin{dispExample*}{sidebyside}
-the change \dvectsub{p}{ball}
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
 %
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Dvectsub}{\marg{kernel}\marg{sub}}
-Identical to \cs{dvectsub} but uses \(\Delta\).
+\begin{docCommand}{Rstar}{\oarg{object}}
+Symbol for stellar radius.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the change \Dvectsub{p}{ball}
+\Rstar or \Rstar[Sirius]
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3162,11 +3601,12 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{scompsdvectsub}{\marg{kernel}\marg{sub}}
-Symbolic components of a subscripted vector's differential.
+\begin{docCommand}{Rsolar}{}
+Symbol for solar radius as a unit. Really just an alias for 
+|\Rstar[\(\odot\)]|.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the vector \scompsdvectsub{p}{ball}
+\Rsolar
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3175,11 +3615,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{scompsDvectsub}{\marg{kernel}\marg{sub}}
-Identical to \cs{scompsdvectsub} but uses \(\Delta\).
+\begin{docCommand}{Mstar}{\oarg{object}}
+Symbol for stellar mass.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the vector \scompsDvectsub{p}{ball}
+\Mstar or \Mstar[Sirius]
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3188,11 +3628,12 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{compdvectsub}{\marg{kernel}\marg{sub}\marg{component}}
-Isolates one component of a subscripted vector's differential.
+\begin{docCommand}{Msolar}{}
+Symbol for solar mass as a unit. Really just an alias for 
+|\Mstar[\(\odot\)]|.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the component \compdvectsub{p}{ball}{y}
+\Msolar
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3201,25 +3642,14 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{compDvectsub}{\marg{kernel}\marg{sub}\marg{component}}
-Identical to \cs{compdvectsub} but uses \(\Delta\).
+\begin{docCommand}{Fstar}{\oarg{object}}
+Symbol for stellar flux.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-the component \compDvectsub{p}{ball}{y}
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{dervectsub}{\marg{kernel}\marg{sub}\marg{indvar}}
-Symbol for derivative of a subscripted vector with respect to an 
-independent variable.
+\begin{docCommand}{fstar}{}
+Alias for \refCom{Fstar}.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the derivative \dervectsub{p}{ball}{t}
+\Fstar or \Fstar[Sirius]
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3228,25 +3658,15 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Dervectsub}{\marg{kernel}\marg{sub}\marg{indvar}}
-Identical to \cs{dervectsub} but uses \(\Delta\).
+\begin{docCommand}{Fsolar}{}
+Symbol for solar flux as a unit. Really just an alias for 
+|\Fstar[\(\odot\)]|.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-the derivative \Dervectsub{p}{ball}{t}
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{dermagvectsub}{\marg{kernel}\marg{sub}\marg{indvar}}
-Symbol for the derivative of a subscripted vector's magnitude with respect 
-to an independent variable.
+\begin{docCommand}{fsolar}{}
+Alias for \refCom{fsolar}.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the derivative \dermagvectsub{E}{ball}{t}
+\Fsolar
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3255,11 +3675,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Dermagvectsub}{\marg{kernel}\marg{sub}\marg{indvar}}
-Identical to \cs{dermagvectsub} but uses \(\Delta\).
+\begin{docCommand}{Magstar}{\oarg{object}}
+Symbol for stellar absolute magnitude.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the derivative \Dermagvectsub{E}{ball}{t}
+\Magstar or \Magstar[Sirius]
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3268,12 +3688,12 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{scompsdervectsub}{\marg{kernel}\marg{sub}\marg{indvar}}
-Symbolic components of a subscripted vector's derivative with respect to 
-an independent variable.
+\begin{docCommand}{Magsolar}{}
+Symbol for solar absolute magnitude as a unit. Really just an alias for 
+|\Magstar[\(\odot\)]|.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the vector \scompsdervectsub{p}{ball}{t}
+\Magsolar
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3282,11 +3702,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{scompsDervectsub}{\marg{kernel}\marg{sub}\marg{indvar}}
-Identical to \cs{scompsdervectsub} but uses \(\Delta\).
+\begin{docCommand}{magstar}{\oarg{object}}
+Symbol for stellar apparent magnitude.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the vector \scompsDervectsub{p}{ball}{t}
+\magstar or \magstar[Sirius]
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3295,13 +3715,12 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{compdervectsub}{\marg{kernel}\marg{sub}\marg{component}
-\marg{indvar}}
-Isolates one component of a subscripted vector's derivative with respect 
-to an independent variable.
+\begin{docCommand}{magsolar}{}
+Symbol for solar apparent magnitude as a unit. Really just an alias for 
+|\magstar[\(\odot\)]|.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the component \compdervectsub{p}{ball}{y}{t}
+\magsolar
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3310,26 +3729,14 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{compDervectsub}{\marg{kernel}\marg{sub}\marg{component}
-\marg{indvar}}
-Identical to \cs{compdervectsub} but uses \(\Delta\).
+\begin{docCommand}{Dstar}{\oarg{object}}
+Symbol for stellar distance.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-the component \compDervectsub{p}{ball}{y}{t}
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{magdervectsub}{\marg{kernel}\marg{sub}\marg{indvar}}
-Symbol for magnitude of a subscripted vector's derivative with respect 
-to an independent variable.
+\begin{docCommand}{dstar}{}
+Alias for \refCom{Dstar} that uses a lower case d.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-the derivative \magdervectsub{p}{ball}{t}
+\Dstar or \Dstar[Sirius]
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3338,33 +3745,31 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{magDervectsub}{\marg{kernel}\marg{sub}\marg{indvar}}
-Identical to \cs{magdervectsub} but uses \(\Delta\).
+\begin{docCommand}{Dsolar}{}
+Symbol for solar distance as a unit. Really just an alias for 
+|\Dstar[\(\odot\)]|.
 \end{docCommand}
+\begin{docCommand}{dsolar}{}
+Alias for \refCom{Dsolar} that uses a lower case d.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-the derivative \magDervectsub{p}{ball}{t}
+\Dsolar
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-% \subsubsection{Expressions Containing Dots}
-% Now we get to commands that will save you many, many keystrokes. All of 
-% the naming conventions documented in earlier commands still apply. There 
-% are some new ones though. Every time you see |dot| you should think 
-% \textit{dot product}. When you see |dots| you should think \textit{dot 
-% product in terms of symbolic components}. When you see |dote| you should 
-% think \textit{dot product expanded as a sum}. These, along with the previous 
-% naming conventions, handle many dot product expressions.
+% \subsection{Symbolic Expressions with Vectors}
+% \subsubsection{Basic Vectors}
 %
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectdotvect}{\marg{kernel1}\marg{kernel2}}
-Symbol for dot of two vectors as a single symbol.
+\begin{docCommand}{vect}{\marg{kernel}}
+Symbol for a vector quantity.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\vectdotvect{\vect{F}}{\vect{v}}
+\vect{p}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3373,11 +3778,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectdotsvect}{\marg{kernel1}\marg{kernel2}}
-Symbol for dot of two vectors with symbolic components.
+\begin{docCommand}{magvect}{\marg{kernel}}
+Symbol for magnitude of a vector quantity.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\vectdotsvect{F}{v}
+\magvect{p}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3386,11 +3791,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectdotevect}{\marg{kernel1}\marg{kernel2}}
-Symbol for dot of two vectors as an expanded sum.
+\begin{docCommand}{magsquaredvect}{\marg{kernel}}
+Symbol for squared magnitude of a vector quantity.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\vectdotevect{F}{v}
+\magsquaredvect{p}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3399,11 +3804,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectdotsdvect}{\marg{kernel1}\marg{kernel2}}
-Dot of a vector a vector's differential with symbolic components.
+\begin{docCommand}{magnvect}{\marg{kernel}\marg{exponent}}
+Symbol for magnitude of a vector quantity to arbitrary power.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\vectdotsdvect{F}{r}
+\magnvect{r}{5}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3412,94 +3817,97 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectdotsDvect}{\marg{kernel1}\marg{kernel2}}
-Identical to \cs{vectdotsdvect} but uses \(\Delta\).
+\begin{docCommand}{dirvect}{\marg{kernel}}
+Symbol for direction of a vector quantity.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\vectdotsDvect{F}{r}
+\dirvect{p} or \direction{p}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.5.0}{2015/11/29}{Added \cs{componentalong}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectdotedvect}{\marg{kernel1}\marg{kernel2}}
-Dot of a vector a vector's differential as an expanded sum.
+\begin{docCommand}{componentalong}{\marg{alongvector}\marg{ofvector}}
+Symbol for the component along a vector of another vector. 
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\vectdotedvect{F}{r}
+\componentalong{\vect{v}}{\vect{u}}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.5.0}{2015/11/29}{Added \cs{expcomponentalong}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectdoteDvect}{\marg{kernel1}\marg{kernel2}}
-Identical to \cs{vectdotedvect} but uses \(\Delta\).
+\begin{docCommand}{expcomponentalong}{\marg{alongvector}\marg{ofvector}}
+Symbolic expression for the component along a vector of another vector. 
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\vectdoteDvect{F}{r}
+\expcomponentalong{\vect{v}}{\vect{u}}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.5.0}{2015/11/29}{Added \cs{ucomponentalong}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectsubdotsvectsub}
-{\marg{kernel1}\marg{sub1}\marg{kernel2}\marg{sub2}}
-Dot of two subscripted vectors with symbolic components.
+\begin{docCommand}{ucomponentalong}{\marg{alongvector}\marg{ofvector}}
+Symbolic expression with unit vectors for the component along a vector of 
+another vector. 
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\vectsubdotsvectsub{F}{grav}{r}{ball}
+\ucomponentalong{\dirvect{v}}{\vect{u}}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.5.0}{2015/11/29}{Added \cs{projectiononto}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectsubdotevectsub}
-{\marg{kernel1}\marg{sub1}\marg{kernel2}\marg{sub2}}
-Dot of two subscripted vectors as an expanded sum.
+\begin{docCommand}{projectiononto}{\marg{ontovector}\marg{ofvector}}
+Symbol for the projection onto a vector of another vector. 
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\vectsubdotevectsub{F}{grav}{r}{ball}
+\projectiononto{\vect{v}}{\vect{u}}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.5.0}{2015/11/29}{Added \cs{expprojectiononto}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectsubdotsdvectsub}
-{\marg{kernel1}\marg{sub1}\marg{kernel2}\marg{sub2}}
-Dot of a subscripted vector and a subscripted vector's differential with 
-symbolic components.
+\begin{docCommand}{expprojectiononto}{\marg{alongvector}\marg{ofvector}}
+Symbolic expression for the projection onto a vector of another vector. 
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\vectsubdotsdvectsub{A}{ball}{B}{car}
+\expprojectiononto{\vect{v}}{\vect{u}}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.5.0}{2015/11/29}{Added \cs{uprojectiononto}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectsubdotsDvectsub}
-{\marg{kernel1}\marg{sub1}\marg{kernel2}\marg{sub2}}
-Identical to \cs{vectsubdotsdvectsub} but uses \(\Delta\).
+\begin{docCommand}{uprojectiononto}{\marg{alongvector}\marg{ofvector}}
+Symbolic expression with unit vectors for the projection onto a vector of 
+another vector. 
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\vectsubdotsDvectsub{A}{ball}{B}{car}
+\uprojectiononto{\dirvect{v}}{\vect{u}}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3508,28 +3916,40 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectsubdotedvectsub}
-{\marg{kernel1}\marg{sub1}\marg{kernel2}\marg{sub2}}
-Dot of a subscripted vector and a subscripted vector's differential 
-as an expanded sum.
+\begin{docCommand}{mivector}
+  {\oarg{printeddelimiter}\marg{commadelimitedlistofcomps}\oarg{unit}}
+Generic workhorse command for vectors formatted as in \mi. Unless the first
+optional argument is specified, a comma is used in the output. Commas are
+always required in the mandatory argument.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\vectsubdotedvectsub{A}{ball}{B}{car}
-\end{dispExample*}
+\begin{dispExample}
+\begin{mysolution*}
+  \msub{u}{\mu} &= \mivector{\ezero,\eone,\etwo,\ethree}        \\
+  \msub{u}{\mu} &= \mivector[\quad]{\ezero,\eone,\etwo,\ethree} \\
+  \vect{v} &= \mivector{1,3,5}[\velocityonlytradunit]           \\
+  \vect{E} &= \mivector{\oofpezmathsymbol \frac{Q}{x^2},0,0}    \\
+  \vect{E} &= \mivector[\quad]{\oofpezmathsymbol \frac{Q}{x^2},0,0}
+\end{mysolution*}
+\end{dispExample}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.5.0}{2015/11/29}{Fixed parentheses bug in \cs{magvectncomps}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectsubdoteDvectsub}
-{\marg{kernel1}\marg{sub1}\marg{kernel2}\marg{sub2}}
-Identical to \cs{vectsubdotedvectsub} but uses \(\Delta\).
+\begin{docCommand}{magvectncomps}{\marg{listofcomps}\oarg{unit}}
+Expression for a vector's magnitude with numerical components and an optional 
+unit. The first example is the preferred and recommended way to handle units when 
+they are needed. The second example requires explicitly picking out the desired 
+unit form. The third example demonstrates components of a unit vector.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\vectsubdoteDvectsub{A}{ball}{B}{car}
-\end{dispExample*}
+\begin{dispExample}
+\magvectncomps{\velocity{3.12},\velocity{4.04},\velocity{6.73}} \\
+\magvectncomps{3.12,4.04,6.73}[\velocityonlytradunit]           \\
+\magvectncomps{\frac{1}{\sqrt{3}},\frac{1}{\sqrt{3}},\frac{1}{\sqrt{3}}}
+\end{dispExample}
 %\iffalse
 %</example>
 %\fi
@@ -3537,12 +3957,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectsubdotsdvect}{\marg{kernel1}\marg{sub1}\marg{kernel2}}
-Dot of a subscripted vector and a vector's differential with symbolic 
-components.
+\begin{docCommand}{scompsvect}{\marg{kernel}}
+Expression for a vector's symbolic components.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\vectsubdotsdvect{A}{ball}{B}
+\scompsvect{E}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3551,37 +3970,41 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectsubdotsDvect}{\marg{kernel1}\marg{sub1}\marg{kernel2}}
-Identical to \cs{vectsubdotsdvect} but uses \(\Delta\).
+\begin{docCommand}{compvect}{\marg{kernel}\marg{component}}
+Isolates one of a vector's symbolic components.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\vectsubdotsDvect{A}{ball}{B}
+\compvect{E}{y}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.5.0}{2015/10/20}{Added \cs{scompsdirvect}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectsubdotedvect}{\marg{kernel1}\marg{sub1}\marg{kernel2}}
-Dot of a subscripted vector and a vector's differential as an expanded sum.
+\begin{docCommand}{scompsdirvect}{\marg{kernel}}
+Expression for a direction's symbolic components. The hats are necessary to
+denote a direction.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\vectsubdotedvect{A}{ball}{B}
+\scompsdirvect{r}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.5.0}{2015/10/20}{Added \cs{compdirvect}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectsubdoteDvect}{\marg{kernel1}\marg{sub1}\marg{kernel2}}
-Identical to \cs{vectsubdotedvect} but uses \(\Delta\).
+\begin{docCommand}{compdirvect}{\marg{kernel}\marg{component}}
+Isolates one of a direction's symbolic components. The hat is necessary to
+denote a direction.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\vectsubdoteDvect{A}{ball}{B}
+\compdirvect{r}{z}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3590,50 +4013,30 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{dervectdotsvect}{\marg{kernel1}\marg{indvar}\marg{kernel2}}
-Dot of a vector's derivative and a vector with symbolic components.
+\begin{docCommand}{magvectscomps}{\marg{kernel}}
+Expression for a vector's magnitude in terms of its symbolic components.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\dervectdotsvect{A}{t}{B}
+\magvectscomps{B}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{Dervectdotsvect}{\marg{kernel1}\marg{indvar}\marg{kernel2}}
-Identical to \cs{dervectdotsvect} but uses \(\Delta\).
-\end{docCommand}
-\begin{dispExample*}{sidebyside}
-\Dervectdotsvect{A}{t}{B}
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
+% \subsubsection{Differentials and Derivatives of Vectors}
 %
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{dervectdotevect}{\marg{kernel1}\marg{indvar}\marg{kernel2}}
-Dot of a vector's derivative and a vector as an expanded sum.
+\begin{docCommand}{dvect}{\marg{kernel}}
+Symbol for the differential of a vector.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\dervectdotevect{A}{t}{B}
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{Dervectdotevect}{\marg{kernel1}\marg{indvar}\marg{kernel2}}
-Identical to \cs{dervectdotevect} but uses \(\Delta\).
+\begin{docCommand}{Dvect}{\marg{kernel}}
+Identical to \refCom{dvect} but uses \(\Delta\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\Dervectdotevect{A}{t}{B}
+a change \dvect{E} in electric field \\
+a change \Dvect{E} in electric field
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3642,24 +4045,15 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectdotsdervect}{\marg{kernel1}\marg{kernel2}\marg{indvar}}
-Dot of a vector and a vector's derivative with symbolic components.
+\begin{docCommand}{dirdvect}{\marg{kernel}}
+Symbol for the direction of a vector's differential.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\vectdotsdervect{A}{B}{t}
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{vectdotsDervect}{\marg{kernel1}\marg{kernel2}\marg{indvar}}
-Identical to \cs{vectdotsdervect} but uses \(\Delta\).
+\begin{docCommand}{dirDvect}{\marg{kernel}}
+Identical to \refCom{dirdvect} but uses \(\Delta\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\vectdotsDervect{A}{B}{t}
+the direction \dirdvect{E} of the change \\
+the direction \dirDvect{E} of the change
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3668,52 +4062,22 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectdotedervect}{\marg{kernel1}\marg{kernel2}\marg{indvar}}
-Dot of a vector and a vector's derivative as an expanded sum.
+\begin{docCommand}{ddirvect}{\marg{kernel}}
+Symbol for the differential of a vector's direction.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\vectdotedervect{A}{B}{t}
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{vectdoteDervect}{\marg{kernel1}\marg{kernel2}\marg{indvar}}
-Identical to \cs{vectdotedervect} but uses \(\Delta\).
+\begin{docCommand}{Ddirvect}{\marg{kernel}}
+Identical to \refCom{ddirvect} but uses \(\Delta\).
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\vectdoteDervect{A}{B}{t}
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{dervectdotsdvect}{\marg{kernel1}\marg{indvar}\marg{kernel2}}
-Dot of a vector's derivative and a vector's differential with symbolic 
-components.
+\begin{docCommand}{ddirection}{\marg{kernel}}
+Alias for \refCom{ddirvect}.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\dervectdotsdvect{A}{t}{B}
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{DervectdotsDvect}{\marg{kernel1}\marg{indvar}\marg{kernel2}}
-Identical to \cs{dervectdotsdvect} but uses \(\Delta\).
+\begin{docCommand}{Ddirection}{\marg{kernel}}
+Alias for \refCom{Ddirvect}.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\DervectdotsDvect{A}{t}{B}
-\end{dispExample*}
+\begin{dispExample}
+the change \ddirvect{E} or \ddirection{E} in the direction of \vect{E} \\
+the change \Ddirvect{E} or \Ddirection{E} in the direction of \vect{E}
+\end{dispExample}
 %\iffalse
 %</example>
 %\fi
@@ -3721,54 +4085,32 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{dervectdotedvect}{\marg{kernel1}\marg{indvar}\marg{kernel2}}
-Dot of a vector's derivative and a vector's differential as an expanded sum.
+\begin{docCommand}{magdvect}{\marg{kernel}}
+Symbol for the magnitude of a vector's differential.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\dervectdotedvect{A}{t}{B}
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{DervectdoteDvect}{\marg{kernel1}\marg{indvar}\marg{kernel2}}
-Identical to \cs{dervectdotedvect} but uses \(\Delta\).
+\begin{docCommand}{magDvect}{\marg{kernel}}
+Identical to \refCom{magdvect} but uses \(\Delta\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\DervectdoteDvect{A}{t}{B}
+the magnitude \magdvect{E} of the change \\
+the magnitude \magDvect{E} of the change
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-% \subsubsection{Expressions Containing Crosses}
-% All of the naming conventions documented in earlier commands still apply.
-%
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{vectcrossvect}{\marg{kernel1}\marg{kernel2}}
-Cross of two vectors.
+\begin{docCommand}{dmagvect}{\marg{kernel}}
+Symbol for the differential of a vector's magnitude.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\vectcrossvect{\vect{r}}{\vect{p}}
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{ltriplecross}{\marg{kernel1}\marg{kernel2}\marg{kernel3}}
-Symbol for left associated triple cross product.
+\begin{docCommand}{Dmagvect}{\marg{kernel}}
+Identical to \refCom{dmagvect} but uses \(\Delta\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\ltriplecross{\vect{A}}{\vect{B}}{\vect{C}}
+the change \dmagvect{E} in the magnitude \\
+the change \Dmagvect{E} in the magnitude
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3777,24 +4119,15 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{rtriplecross}{\marg{kernel1}\marg{kernel2}\marg{kernel3}}
-Symbol for right associated triple cross product.
+\begin{docCommand}{scompsdvect}{\marg{kernel}}
+Symbolic components of a vector.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\rtriplecross{\vect{A}}{\vect{B}}{\vect{C}}
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{ltriplescalar}{\marg{kernel1}\marg{kernel2}\marg{kernel3}}
-Symbol for left associated triple scalar product.
+\begin{docCommand}{scompsDvect}{\marg{kernel}}
+Identical to \refCom{scompsdvect} but uses \(\Delta\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\ltriplescalar{\vect{A}}{\vect{B}}{\vect{C}}
+the vector \scompsdvect{E} \\
+the vector \scompsDvect{E}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3803,28 +4136,15 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{rtriplescalar}{\marg{kernel1}\marg{kernel2}\marg{kernel3}}
-Symbol for right associated triple scalar product.
+\begin{docCommand}{compdvect}{\marg{kernel}\marg{component}}
+Isolates one symbolic component of a vector's differential.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\rtriplescalar{\vect{A}}{\vect{B}}{\vect{C}}
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-% \subsubsection{Basis Vectors and Bivectors}
-% If you use geometric algebra or tensors, eventually you will need 
-% symbols for basis vectors and basis bivectors.
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{ezero}{}
-Symbols for basis vectors with lower indices up to 4.
+\begin{docCommand}{compDvect}{\marg{kernel}\marg{component}}
+Identical to \refCom{compdvect} but uses \(\Delta\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\ezero, \eone, \etwo, \ethree, \efour
+the \compdvect{E}{y} component of the change \\
+the \compDvect{E}{y} component of the change
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3833,24 +4153,15 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{uezero}{}
-Symbols for normalized basis vectors with lower indices up to 4.
+\begin{docCommand}{dervect}{\marg{kernel}\marg{indvar}}
+Symbol for a vector's derivative with respect to an independent variable.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\uezero, \ueone, \uetwo, \uethree, \uefour
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{ezerozero}{}
-Symbols for basis bivectors with lower indices up to 4.
+\begin{docCommand}{Dervect}{\marg{kernel}\marg{indvar}}
+Identical to \refCom{dervect} but uses \(\Delta\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\ezerozero, \ezeroone, \ezerotwo, \ezerothree, \ezerofour, up to \efourfour
+the derivative \dervect{E}{t} \\
+the derivative \Dervect{E}{t}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3859,25 +4170,16 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{euzero}{}
-Symbols for basis vectors with upper indices up to 4.
+\begin{docCommand}{dermagvect}{\marg{kernel}\marg{indvar}}
+Symbol for the derivative of a vector's magnitude with respect to an 
+independent variable.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\euzero, \euone, \eutwo, \euthree, \eufour
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\changes{v2.5.0}{2015/10/09}{Added \cs{ueuzero} and friends.}
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{ueuzero}{}
-Symbols for normalized basis vectors with upper indices up to 4.
+\begin{docCommand}{Dermagvect}{\marg{kernel}\marg{indvar}}
+Identical to \refCom{dermagvect} but uses \(\Delta\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\ueuzero, \ueuone, \ueutwo, \ueuthree, \ueufour
+the derivative \dermagvect{E}{t} \\
+the derivative \Dermagvect{E}{t}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3886,26 +4188,23 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{euzerozero}{}
-Symbols for basis bivectors with upper indices up to 4.
+\begin{docCommand}{derdirvect}{\marg{kernel}\marg{indvar}}
+Symbol for the derivative of a vector's direction with respect to an 
+independent variable.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\euzerozero, \euzeroone, \euzerotwo, \euzerothree, \euzerofour, up to \eufourfour
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{gzero}{}
-Symbols for basis vectors, with \(\gamma\) as the kernel, with lower indices 
-up to 4.
+\begin{docCommand}{derdirection}{\marg{kernel}\marg{indvar}}
+Alias for \refCom{derdirvect}.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\gzero, \gone, \gtwo, \gthree, \gfour
-\end{dispExample*}
+\begin{docCommand}{Derdirvect}{\marg{kernel}\marg{indvar}}
+Identical to \refCom{derdirvect} but uses \(\Delta\).
+\end{docCommand}
+\begin{docCommand}{Derdirection}{\marg{kernel}\marg{indvar}}
+Alias for \refCom{Derdirvect}.
+\end{docCommand}
+\begin{dispExample}
+the derivative \derdirvect{E}{t} or \derdirection{E}{t} \\
+the derivative \Derdirvect{E}{t} or \Derdirection{E}{t}
+\end{dispExample}
 %\iffalse
 %</example>
 %\fi
@@ -3913,12 +4212,16 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{guzero}{}
-Symbols for basis vectors, with \(\gamma\) as the kernel, with upper indices 
-up to 4.
+\begin{docCommand}{scompsdervect}{\marg{kernel}\marg{indvar}}
+Symbolic components of a vector's derivative with respect to an independent 
+variable.
 \end{docCommand}
+\begin{docCommand}{scompsDervect}{\marg{kernel}\marg{indvar}}
+Identical to \refCom{scompsdervect} but uses \(\Delta\).
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\guzero, \guone, \gutwo, \guthree, \gufour
+the derivative \scompsdervect{E}{t} \\
+the derivative \scompsdervect{E}{t}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3927,12 +4230,16 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{gzerozero}{}
-Symbols for basis bivectors, with \(\gamma\) as the kernel, with lower indices 
-up to 4.
+\begin{docCommand}{compdervect}{\marg{kernel}\marg{component}\marg{indvar}}
+Isolates one component of a vector's derivative with respect to an 
+independent variable.
 \end{docCommand}
+\begin{docCommand}{compDervect}{\marg{kernel}\marg{component}\marg{indvar}}
+Identical to \refCom{compdervect} but uses \(\Delta\).
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\gzerozero, \gzeroone, \gzerotwo, \gzerothree, \gzerofour, up to \gfourfour
+the derivative \compdervect{E}{y}{t} \\
+the derivative \compDervect{E}{y}{t}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3941,40 +4248,53 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{guzerozero}{}
-Symbols for basis bivectors, with \(\gamma\) as the kernel, with upper indices 
-up to 4.
+\begin{docCommand}{magdervect}{\marg{kernel}\marg{indvar}}
+Symbol for the magnitude of a vector's derivative with respect to an 
+independent variable.
 \end{docCommand}
+\begin{docCommand}{magDervect}{\marg{kernel}\marg{indvar}}
+Identical to \refCom{magdervect} but uses \(\Delta\).
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\guzerozero, \guzeroone, \guzerotwo, \guzerothree, \guzerofour, up to \gufourfour
+the derivative \magdervect{E}{t} \\
+the derivative \magDervect{E}{t}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-% \subsubsection{Other Vector Related}
+% \subsubsection{Naming Conventions You Have Seen}
+% By now you probably understand that commands are named as closely as 
+% possible to the way you would say or write what you want. Every time you 
+% see |comp| you should think of a single component. Every time you see 
+% |scomps| you should think of a set of symbolic components. Every time you 
+% see |der| you should think derivative. Every time you see |dir| you should 
+% think direction. I have tried to make the names simple both logically and 
+% lexically.
 %
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{colvector}{\marg{commadelimitedlistofcomps}}
-Typesets column vectors.
-\end{docCommand}
-\begin{dispExample*}{sidebyside}
-\colvector{x^0,x^1,x^2,x^3} \colvector{x_0,x_1,x_2,x_3}
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
+% \subsubsection{Subscripted or Indexed Vectors}
+% Now we have commands for vectors that carry subscripts or indices, usually 
+% to identify an object or something similar. Basically, \refCom{vect} becomes 
+% \refCom{vectsub}. Ideally, a subscript should not contain mathematical symbols. 
+% However, if you wish to do so, just wrap the symbol with |\(|\(\ldots \)|\)|
+% as you normally would. All of the commands for non-subscripted vectors are 
+% available for subscripted vectors.
 %
+% As a matter of convention, when the initial and final values of a quantity 
+% are referenced, they should be labeled with subscripts |i| and |f| respectively 
+% using the commands in this section and similarly named commands in other 
+% sections. If the quantity also refers to a particular entity (e.g.\ a ball), 
+% specify the |i| or |f| with a comma after the label 
+% (e.g.\ |\vectsub{r}{ball,f}|).
+%
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{rowvector}{\marg{commadelimitedlistofcomps}}
-Typesets row vectors.
+\begin{docCommand}{vectsub}{\marg{kernel}\marg{sub}}
+Symbol for a subscripted vector.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\rowvector{x^0,x^1,x^2,x^3} \rowvector{x_0,x_1,x_2,x_3}
+the vector \vectsub{p}{ball}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -3983,34 +4303,24 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{scompscvect}{\oarg{anynonzero}\marg{kernel}}
-Typesets subscripted symbolic components of column 3- or 4-vectors 
-(use any nonzero value for the optional argument to typeset a 4-vector).
+\begin{docCommand}{magvectsub}{\marg{kernel}\marg{sub}}
+Symbol for a subscripted vector's magnitude.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-\vect{p} &= \scompscvect{p} \\
-\vect{p} &= \scompscvect[4]{p}
-\end{align*}
+\magvectsub{p}{ball}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-%\changes{v2.4.1}{2015/02/20}{Added \cs{scompsCvect} for superscripted 
-%  components.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{scompsCvect}{\oarg{anynonzero}\marg{kernel}}
-Typesets superscripted symbolic components of column 3- or 4-vectors 
-(use any nonzero value for the optional argument to typeset a 4-vector).
+\begin{docCommand}{magsquaredvectsub}{\marg{kernel}\marg{sub}}
+Symbol for a subscripted vector's squared magnitude.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-\vect{p} &= \scompsCvect{p} \\
-\vect{p} &= \scompsCvect[4]{p}
-\end{align*}
+\magsquaredvectsub{p}{ball}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4019,48 +4329,40 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{scompsrvect}{\oarg{anynonzero}\marg{kernel}}
-Typesets subscripted symbolic components of row 3- or 4-vectors 
-(use any nonzero value for the optional argument to typeset a 4-vector).
+\begin{docCommand}{magnvectsub}{\marg{kernel}\marg{sub}\marg{exponent}}
+Symbol for a subscripted vector's magnitude to an arbitrary power.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-\vect{p} &= \scompsrvect{p} \\
-\vect{p} &= \scompsrvect[4]{p}
-\end{align*}
+\magnvectsub{r}{dipole}{5}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-%\changes{v2.4.1}{2015/02/20}{Added \cs{scompsRvect} for superscripted 
-%  components.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{scompsRvect}{\oarg{anynonzero}\marg{kernel}}
-Typesets superscripted symbolic components of row 3- or 4-vectors 
-(use any nonzero value for the optional argument to typeset a 4-vector).
+\begin{docCommand}{dirvectsub}{\marg{kernel}\marg{sub}}
+Symbol for a subscripted vector's direction.
 \end{docCommand}
+\begin{docCommand}{directionsub}{\marg{kernel}\marg{sub}}
+Alias for \refCom{dirvectsub}.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-\vect{p} &= \scompsRvect{p} \\
-\vect{p} &= \scompsRvect[4]{p}
-\end{align*}
+\dirvectsub{p}{ball} or \directionsub{p}{ball}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-%\changes{v2.5.0}{2015/10/09}{Added commands for Dirac notation.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{bra}{\marg{bra}}
-Typesets a Dirac bra.
+\begin{docCommand}{scompsvectsub}{\marg{kernel}\marg{sub}}
+Symbolic components of a subscripted vector.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\bra{\Psi^*} or \bra{\frac{1}{a}\Psi^*}
+the vector \scompsvectsub{p}{ball}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4069,11 +4371,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{ket}{\marg{ket}}
-Typesets a Dirac ket.
+\begin{docCommand}{compvectsub}{\marg{kernel}\marg{sub}\marg{component}}
+Isolates one component of a subscripted vector.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\ket{\Psi} or \ket{\frac{1}{b}\Psi^*}
+the component \compvectsub{p}{ball}{z}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4082,94 +4384,29 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{bracket}{\marg{bra}\marg{ket}}
-Typesets a Dirac bracket.
+\begin{docCommand}{magvectsubscomps}{\marg{kernel}\marg{sub}}
+Expression for a subscripted vector's magnitude in terms of symbolic 
+components.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\bracket{\Psi^*}{\Psi}
+the magnitude \magvectsubscomps{p}{ball}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
-%
-% \newpage
-%\changes{v2.5.0}{2015/10/09}{Documented precise and approximate 
-%  constant values.}
-% \subsection{Physical Constants}
-% \subsubsection{Defining Physical Constants}
-%
+% 
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{newphysicsconstant}
-{\marg{newname}\\
-\marg{symbol}\\
-{\{\cs{mi at p\marg{approx}\marg{precise}}\}}\\
-\marg{\baseunits}\\
-\oarg{\drvdunits}\\
-\oarg{\tradunits}%
-}%
-
-Defines a new physical constant with a name, a symbol, approximate and 
-precise numerical values, required base units, optional derived units, 
-and optional traditional units. The \cs{mi at p} command is defined
-internally and is not meant to be otherwise used.
+\begin{docCommand}{dvectsub}{\marg{kernel}\marg{sub}}
+Differential of a subscripted vector.
 \end{docCommand}
-\begin{dispListing}
-Here is how \planck (Planck's constant) is defined internally, showing 
-each part of the definition on a separate line.
-\newphysicsconstant{planck}
-  {\ensuremath{h}}
-  {\mi at p{6.6}{6.6261}\timestento{-34}}
-  {\m\squared\usk\kg\usk\reciprocal\s}
-  [\J\usk\s]
-  [\J\usk\s]
-\end{dispListing}
-%\iffalse
-%</example>
-%\fi
-%
-% Using this command causes several things to happen.
-% \begin{itemize}
-%   \item A command |\newname| is created and contains the constant and 
-%   units typeset according to the options given when \mandi\ was loaded.
-%   \item A command |\newnamemathsymbol| is created that expresses
-%   \textbf{only} the constant's mathematical symbol.
-%   \item A command |\newnamevalue| is created that expresses
-%   \textbf{only} the constant's approximate or precise numerical value. 
-%   Note that both values must be present when the constant is defined. 
-%   By default, precise values are always used but this can be changed 
-%   when \mandi\ is loaded. Note how the values are specified in the 
-%   definition of the constant.
-%   \item A command |\newnamebaseunit| is created that expresses 
-%   the constant and its units in \baseunits\ form.
-%   \item A command |\newnamedrvdunit| is created that expresses 
-%   the constant and its units in \drvdunits\ form.
-%   \item A command |\newnametradunit| is created that 
-%   expresses the constant and its units in \tradunits\ form.
-%   \item A command |\newnameonlybaseunit| is created that expresses 
-%   \textbf{only} the constant's units in \baseunits\ form.
-%   \item A command |\newnameonlydrvdunit| is created that 
-%   expresses \textbf{only} the constant's units in \drvdunits\ form. 
-%   \item A command |\newnameonlytradunit| is created that 
-%   expresses \textbf{only} the constant's units in \tradunits\ form. 
-% \end{itemize}
-% None of these commands takes any arguments.
-%
-% \newpage
-% \subsubsection{Predefined Physical Constants}
-%
-% In this section, precise values of constants are used. Approximate 
-% values are available as an option when the package is loaded.
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{oofpez}{}
-Coulomb constant.
+\begin{docCommand}{Dvectsub}{\marg{kernel}\marg{sub}}
+Identical to \refCom{dvectsub} but uses \(\Delta\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\oofpezmathsymbol \approx \oofpez\)
+the change \dvectsub{p}{ball} \\
+the change \Dvectsub{p}{ball}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4178,24 +4415,15 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{oofpezcs}{}
-Alternate form of Coulomb constant.
+\begin{docCommand}{scompsdvectsub}{\marg{kernel}\marg{sub}}
+Symbolic components of a subscripted vector's differential.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\(\oofpezcsmathsymbol \approx \oofpezcs\)
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{vacuumpermittivity}{}
-Vacuum permittivity.
+\begin{docCommand}{scompsDvectsub}{\marg{kernel}\marg{sub}}
+Identical to \refCom{scompsdvectsub} but uses \(\Delta\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\vacuumpermittivitymathsymbol \approx \vacuumpermittivity\)
+the vector \scompsdvectsub{p}{ball} \\
+the vector \scompsDvectsub{p}{ball}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4204,24 +4432,15 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{mzofp}{}
-Biot-Savart constant.
+\begin{docCommand}{compdvectsub}{\marg{kernel}\marg{sub}\marg{component}}
+Isolates one component of a subscripted vector's differential.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\(\mzofpmathsymbol \approx \mzofp\)
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{vacuumpermeability}{}
-Vacuum permeability.
+\begin{docCommand}{compDvectsub}{\marg{kernel}\marg{sub}\marg{component}}
+Identical to \refCom{compdvectsub} but uses \(\Delta\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\vacuumpermeabilitymathsymbol \approx \vacuumpermeability\)
+the component \compdvectsub{p}{ball}{y} \\
+the component \compDvectsub{p}{ball}{y}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4230,24 +4449,16 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{boltzmann}{}
-Boltzmann constant.
+\begin{docCommand}{dervectsub}{\marg{kernel}\marg{sub}\marg{indvar}}
+Symbol for derivative of a subscripted vector with respect to an 
+independent variable.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\(\boltzmannmathsymbol \approx \boltzmann\)
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{boltzmannineV}{}
-Alternate form of Boltlzmann constant.
+\begin{docCommand}{Dervectsub}{\marg{kernel}\marg{sub}\marg{indvar}}
+Identical to \refCom{dervectsub} but uses \(\Delta\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\boltzmannineVmathsymbol \approx \boltzmannineV\)
+the derivative \dervectsub{p}{ball}{t} \\
+the derivative \Dervectsub{p}{ball}{t}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4256,24 +4467,16 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{stefan}{}
-Stefan-Boltzmann constant.
+\begin{docCommand}{dermagvectsub}{\marg{kernel}\marg{sub}\marg{indvar}}
+Symbol for the derivative of a subscripted vector's magnitude with respect 
+to an independent variable.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\(\stefanboltzmannmathsymbol \approx \stefanboltzmann\)
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{planck}{}
-Planck constant.
+\begin{docCommand}{Dermagvectsub}{\marg{kernel}\marg{sub}\marg{indvar}}
+Identical to \refCom{dermagvectsub} but uses \(\Delta\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\planckmathsymbol \approx \planck\)
+the derivative \dermagvectsub{E}{ball}{t} \\
+the derivative \Dermagvectsub{E}{ball}{t}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4282,24 +4485,16 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{planckineV}{}
-Alternate form of Planck constant.
+\begin{docCommand}{scompsdervectsub}{\marg{kernel}\marg{sub}\marg{indvar}}
+Symbolic components of a subscripted vector's derivative with respect to 
+an independent variable.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\(\planckmathsymbol \approx \planckineV\)
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{planckbar}{}
-Reduced Planck constant (Dirac constant).
+\begin{docCommand}{scompsDervectsub}{\marg{kernel}\marg{sub}\marg{indvar}}
+Identical to \refCom{scompsdervectsub} but uses \(\Delta\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\planckbarmathsymbol \approx \planckbar\)
+the vector \scompsdervectsub{p}{ball}{t} \\
+the vector \scompsDervectsub{p}{ball}{t}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4308,24 +4503,18 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{planckbarineV}{}
-Alternate form of reduced Planck constant (Dirac constant).
+\begin{docCommand}{compdervectsub}{\marg{kernel}\marg{sub}\marg{component}
+\marg{indvar}}
+Isolates one component of a subscripted vector's derivative with respect 
+to an independent variable.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\(\planckbarmathsymbol \approx \planckbarineV\)
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{planckc}{}
-Planck constant times light speed.
+\begin{docCommand}{compDervectsub}{\marg{kernel}\marg{sub}\marg{component}
+\marg{indvar}}
+Identical to \refCom{compdervectsub} but uses \(\Delta\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\planckcmathsymbol \approx \planckc\)
+the component \compdervectsub{p}{ball}{y}{t} \\
+the component \compDervectsub{p}{ball}{y}{t}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4334,37 +4523,38 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{planckcineV}{}
-Alternate form of Planck constant times light speed.
+\begin{docCommand}{magdervectsub}{\marg{kernel}\marg{sub}\marg{indvar}}
+Symbol for magnitude of a subscripted vector's derivative with respect 
+to an independent variable.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\(\planckcineVmathsymbol \approx \planckcineV\)
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{rydberg}{}
-Rydberg constant.
+\begin{docCommand}{magDervectsub}{\marg{kernel}\marg{sub}\marg{indvar}}
+Identical to \refCom{magdervectsub} but uses \(\Delta\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\rydbergmathsymbol \approx \rydberg\)
+the derivative \magdervectsub{p}{ball}{t} \\
+the derivative \magDervectsub{p}{ball}{t}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+% \subsubsection{Expressions Containing Dots}
+% Now we get to commands that will save you many, many keystrokes. All of 
+% the naming conventions documented in earlier commands still apply. There 
+% are some new ones though. Every time you see |dot| you should think 
+% \textit{dot product}. When you see |dots| you should think \textit{dot 
+% product in terms of symbolic components}. When you see |dote| you should 
+% think \textit{dot product expanded as a sum}. These, along with the previous 
+% naming conventions, handle many dot product expressions.
+%
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{bohrradius}{}
-Bohr radius.
+\begin{docCommand}{vectdotvect}{\marg{kernel1}\marg{kernel2}}
+Symbol for dot of two vectors as a single symbol.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\bohrradiusmathsymbol \approx \bohrradius\)
+\vectdotvect{\vect{F}}{\vect{v}}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4373,11 +4563,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{finestructure}{}
-Fine structure constant.
+\begin{docCommand}{vectdotsvect}{\marg{kernel1}\marg{kernel2}}
+Symbol for dot of two vectors with symbolic components.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\finestructuremathsymbol \approx \finestructure\)
+\vectdotsvect{F}{v}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4386,11 +4576,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{avogadro}{}
-Avogadro constant.
+\begin{docCommand}{vectdotevect}{\marg{kernel1}\marg{kernel2}}
+Symbol for dot of two vectors as an expanded sum.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\avogadromathsymbol \approx \avogadro\)
+\vectdotevect{F}{v}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4399,11 +4589,15 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{universalgrav}{}
-Universal gravitational constant.
+\begin{docCommand}{vectdotsdvect}{\marg{kernel1}\marg{kernel2}}
+Dot of a vector a vector's differential with symbolic components.
 \end{docCommand}
+\begin{docCommand}{vectdotsDvect}{\marg{kernel1}\marg{kernel2}}
+Identical to \refCom{vectdotsdvect} but uses \(\Delta\).
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\universalgravmathsymbol \approx \universalgrav\)
+\vectdotsdvect{F}{r} \\
+\vectdotsDvect{F}{r}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4412,11 +4606,15 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{surfacegravfield}{}
-Earth's surface gravitational field strength.
+\begin{docCommand}{vectdotedvect}{\marg{kernel1}\marg{kernel2}}
+Dot of a vector a vector's differential as an expanded sum.
 \end{docCommand}
+\begin{docCommand}{vectdoteDvect}{\marg{kernel1}\marg{kernel2}}
+Identical to \refCom{vectdotedvect} but uses \(\Delta\).
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\surfacegravfieldmathsymbol \approx \surfacegravfield\)
+\vectdotedvect{F}{r} \\
+\vectdoteDvect{F}{r}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4425,11 +4623,12 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{clight}{}
-Magnitude of light's velocity (photon constant).
+\begin{docCommand}{vectsubdotsvectsub}
+{\marg{kernel1}\marg{sub1}\marg{kernel2}\marg{sub2}}
+Dot of two subscripted vectors with symbolic components.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\clightmathsymbol \approx \clight\)
+\vectsubdotsvectsub{F}{grav}{r}{ball}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4438,11 +4637,12 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{clightinfeet}{}
-Alternate of magnitude of light's velocity (photon constant).
+\begin{docCommand}{vectsubdotevectsub}
+{\marg{kernel1}\marg{sub1}\marg{kernel2}\marg{sub2}}
+Dot of two subscripted vectors as an expanded sum.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\clightinfeetmathsymbol \approx \clightinfeet\)
+\vectsubdotevectsub{F}{grav}{r}{ball}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4451,11 +4651,18 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Ratom}{}
-Approximate atomic radius.
+\begin{docCommand}{vectsubdotsdvectsub}
+{\marg{kernel1}\marg{sub1}\marg{kernel2}\marg{sub2}}
+Dot of a subscripted vector and a subscripted vector's differential with 
+symbolic components.
 \end{docCommand}
+\begin{docCommand}{vectsubdotsDvectsub}
+{\marg{kernel1}\marg{sub1}\marg{kernel2}\marg{sub2}}
+Identical to \refCom{vectsubdotsdvectsub} but uses \(\Delta\).
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\Ratommathsymbol \approx \Ratom\)
+\vectsubdotsdvectsub{A}{ball}{B}{car} \\
+\vectsubdotsDvectsub{A}{ball}{B}{car}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4464,11 +4671,18 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Mproton}{}
-Proton mass.
+\begin{docCommand}{vectsubdotedvectsub}
+{\marg{kernel1}\marg{sub1}\marg{kernel2}\marg{sub2}}
+Dot of a subscripted vector and a subscripted vector's differential 
+as an expanded sum.
 \end{docCommand}
+\begin{docCommand}{vectsubdoteDvectsub}
+{\marg{kernel1}\marg{sub1}\marg{kernel2}\marg{sub2}}
+Identical to \refCom{vectsubdotedvectsub} but uses \(\Delta\).
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\Mprotonmathsymbol \approx \Mproton\)
+\vectsubdotedvectsub{A}{ball}{B}{car} \\
+\vectsubdoteDvectsub{A}{ball}{B}{car}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4477,11 +4691,16 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Mneutron}{}
-Neutron mass.
+\begin{docCommand}{vectsubdotsdvect}{\marg{kernel1}\marg{sub1}\marg{kernel2}}
+Dot of a subscripted vector and a vector's differential with symbolic 
+components.
 \end{docCommand}
+\begin{docCommand}{vectsubdotsDvect}{\marg{kernel1}\marg{sub1}\marg{kernel2}}
+Identical to \refCom{vectsubdotsdvect} but uses \(\Delta\).
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\Mneutronmathsymbol \approx \Mneutron\)
+\vectsubdotsdvect{A}{ball}{B} \\
+\vectsubdotsDvect{A}{ball}{B}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4490,11 +4709,15 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Mhydrogen}{}
-Hydrogen atom mass.
+\begin{docCommand}{vectsubdotedvect}{\marg{kernel1}\marg{sub1}\marg{kernel2}}
+Dot of a subscripted vector and a vector's differential as an expanded sum.
 \end{docCommand}
+\begin{docCommand}{vectsubdoteDvect}{\marg{kernel1}\marg{sub1}\marg{kernel2}}
+Identical to \refCom{vectsubdotedvect} but uses \(\Delta\).
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\Mhydrogenmathsymbol \approx \Mhydrogen\)
+\vectsubdotedvect{A}{ball}{B} \\
+\vectsubdoteDvect{A}{ball}{B}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4503,11 +4726,15 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Melectron}{}
-Electron mass.
+\begin{docCommand}{dervectdotsvect}{\marg{kernel1}\marg{indvar}\marg{kernel2}}
+Dot of a vector's derivative and a vector with symbolic components.
 \end{docCommand}
+\begin{docCommand}{Dervectdotsvect}{\marg{kernel1}\marg{indvar}\marg{kernel2}}
+Identical to \refCom{dervectdotsvect} but uses \(\Delta\).
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\Melectronmathsymbol \approx \Melectron\)
+\dervectdotsvect{A}{t}{B} \\
+\Dervectdotsvect{A}{t}{B}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4516,11 +4743,15 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{echarge}{}
-Elementary charge quantum.
+\begin{docCommand}{dervectdotevect}{\marg{kernel1}\marg{indvar}\marg{kernel2}}
+Dot of a vector's derivative and a vector as an expanded sum.
 \end{docCommand}
+\begin{docCommand}{Dervectdotevect}{\marg{kernel1}\marg{indvar}\marg{kernel2}}
+Identical to \refCom{dervectdotevect} but uses \(\Delta\).
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\echargemathsymbol \approx \echarge\)
+\dervectdotevect{A}{t}{B} \\
+\Dervectdotevect{A}{t}{B}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4529,11 +4760,15 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Qelectron}{}
-Electron charge.
+\begin{docCommand}{vectdotsdervect}{\marg{kernel1}\marg{kernel2}\marg{indvar}}
+Dot of a vector and a vector's derivative with symbolic components.
 \end{docCommand}
+\begin{docCommand}{vectdotsDervect}{\marg{kernel1}\marg{kernel2}\marg{indvar}}
+Identical to \refCom{vectdotsdervect} but uses \(\Delta\).
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\Qelectronmathsymbol \approx \Qelectron\)
+\vectdotsdervect{A}{B}{t} \\
+\vectdotsDervect{A}{B}{t}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4542,21 +4777,15 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{qelectron}{}
-Alias for \cs{Qelectron}.
+\begin{docCommand}{vectdotedervect}{\marg{kernel1}\marg{kernel2}\marg{indvar}}
+Dot of a vector and a vector's derivative as an expanded sum.
 \end{docCommand}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{Qproton}{}
-Proton charge.
+\begin{docCommand}{vectdoteDervect}{\marg{kernel1}\marg{kernel2}\marg{indvar}}
+Identical to \cs{vectdotedervect} but uses \(\Delta\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\Qprotonmathsymbol \approx \Qproton\)
+\vectdotedervect{A}{B}{t} \\
+\vectdoteDervect{A}{B}{t}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4565,21 +4794,16 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{qproton}{}
-Alias for \cs{Qproton}.
+\begin{docCommand}{dervectdotsdvect}{\marg{kernel1}\marg{indvar}\marg{kernel2}}
+Dot of a vector's derivative and a vector's differential with symbolic 
+components.
 \end{docCommand}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{MEarth}{}
-Earth's mass.
+\begin{docCommand}{DervectdotsDvect}{\marg{kernel1}\marg{indvar}\marg{kernel2}}
+Identical to \refCom{dervectdotsdvect} but uses \(\Delta\).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\MEarthmathsymbol \approx \MEarth\)
+\dervectdotsdvect{A}{t}{B} \\
+\DervectdotsDvect{A}{t}{B}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4588,37 +4812,45 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{MMoon}{}
-Moon's mass.
+\begin{docCommand}{dervectdotedvect}{\marg{kernel1}\marg{indvar}\marg{kernel2}}
+Dot of a vector's derivative and a vector's differential as an expanded sum.
 \end{docCommand}
+\begin{docCommand}{DervectdoteDvect}{\marg{kernel1}\marg{indvar}\marg{kernel2}}
+Identical to \refCom{dervectdotedvect} but uses \(\Delta\).
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\MMoonmathsymbol \approx \MMoon\)
+\dervectdotedvect{A}{t}{B} \\
+\DervectdoteDvect{A}{t}{B}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+% \subsubsection{Expressions Containing Crosses}
+% All of the naming conventions documented in earlier commands still apply.
+%
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{MSun}{}
-Sun's mass.
+\begin{docCommand}{vectcrossvect}{\marg{kernel1}\marg{kernel2}}
+Cross of two vectors.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\MSunmathsymbol \approx \MSun\)
+\vectcrossvect{\vect{r}}{\vect{p}}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{REarth}{}
-Earth's radius.
+\begin{docCommand}{ltriplecross}{\marg{kernel1}\marg{kernel2}\marg{kernel3}}
+Symbol for left associated triple cross product.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\REarthmathsymbol \approx \REarth\)
+\ltriplecross{\vect{A}}{\vect{B}}{\vect{C}}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4627,11 +4859,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{RMoon}{}
-Moon's radius.
+\begin{docCommand}{rtriplecross}{\marg{kernel1}\marg{kernel2}\marg{kernel3}}
+Symbol for right associated triple cross product.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\RMoonmathsymbol \approx \RMoon\)
+\rtriplecross{\vect{A}}{\vect{B}}{\vect{C}}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4640,11 +4872,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{RSun}{}
-Sun's radius.
+\begin{docCommand}{ltriplescalar}{\marg{kernel1}\marg{kernel2}\marg{kernel3}}
+Symbol for left associated triple scalar product.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\RSunmathsymbol \approx \RSun\)
+\ltriplescalar{\vect{A}}{\vect{B}}{\vect{C}}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4653,59 +4885,36 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{ESdist}{}
-Earth-Sun distance.
+\begin{docCommand}{rtriplescalar}{\marg{kernel1}\marg{kernel2}\marg{kernel3}}
+Symbol for right associated triple scalar product.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\ESdistmathsymbol \approx \SEdist\)
+\rtriplescalar{\vect{A}}{\vect{B}}{\vect{C}}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{SEdist}{}
-Alias for \cs{ESdist}.
-\end{docCommand}
-%\iffalse
-%</example>
-%\fi
+% \subsubsection{Basis Vectors and Bivectors}
+% If you use geometric algebra or tensors, eventually you will need 
+% symbols for basis vectors and basis bivectors.
 %
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{EMdist}{}
-Earth-Moon distance.
+\begin{docCommand}{ezero}{}
+Symbols for basis vectors with lower indices up to 4.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\(\EMdistmathsymbol \approx \EMdist\)
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{MEdist}{}
-Alias for \cs{EMdist}.
+\begin{docCommand}{eone}{}
 \end{docCommand}
-%\iffalse
-%</example>
-%\fi
-%
-% \subsection{Astronomical Constants and Quantities}
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{LSun}{}
-Sun's luminosity.
+\begin{docCommand}{etwo}{}
 \end{docCommand}
+\begin{docCommand}{ethree}{}
+\end{docCommand}
+\begin{docCommand}{efour}{}
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\LSunmathsymbol \approx \LSun\)
+\ezero, \eone, \etwo, \ethree, \efour
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4714,11 +4923,19 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{TSun}{}
-Sun's effective temperature.
+\begin{docCommand}{uezero}{}
+Symbols for normalized basis vectors with lower indices up to 4.
 \end{docCommand}
+\begin{docCommand}{ueone}{}
+\end{docCommand}
+\begin{docCommand}{uetwo}{}
+\end{docCommand}
+\begin{docCommand}{uethree}{}
+\end{docCommand}
+\begin{docCommand}{uefour}{}
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\TSunmathsymbol \approx \TSun\)
+\uezero, \ueone, \uetwo, \uethree, \uefour
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4727,11 +4944,57 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{MagSun}{}
-Sun's absolute magnitude.
+\begin{docCommand}{ezerozero}{}
+Symbols for basis bivectors with lower indices up to 4.
 \end{docCommand}
+\begin{docCommand}{ezeroone}{}
+\end{docCommand}
+\begin{docCommand}{ezerotwo}{}
+\end{docCommand}
+\begin{docCommand}{ezerothree}{}
+\end{docCommand}
+\begin{docCommand}{ezerofour}{}
+\end{docCommand}
+\begin{docCommand}{eoneone}{}
+\end{docCommand}
+\begin{docCommand}{eonetwo}{}
+\end{docCommand}
+\begin{docCommand}{eonethree}{}
+\end{docCommand}
+\begin{docCommand}{eonefour}{}
+\end{docCommand}
+\begin{docCommand}{etwoeone}{}
+\end{docCommand}
+\begin{docCommand}{etwotwo}{}
+\end{docCommand}
+\begin{docCommand}{etwothree}{}
+\end{docCommand}
+\begin{docCommand}{etwofour}{}
+\end{docCommand}
+\begin{docCommand}{ethreeeone}{}
+\end{docCommand}
+\begin{docCommand}{ethreetwo}{}
+\end{docCommand}
+\begin{docCommand}{ethreethree}{}
+\end{docCommand}
+\begin{docCommand}{ethreefour}{}
+\end{docCommand}
+\begin{docCommand}{efoureone}{}
+\end{docCommand}
+\begin{docCommand}{efourtwo}{}
+\end{docCommand}
+\begin{docCommand}{efourthree}{}
+\end{docCommand}
+\begin{docCommand}{efourfour}{}
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\MagSunmathsymbol \approx \MagSun\)
+\ezerozero, \ezeroone, \ezerotwo,    \\
+\ezerothree, \ezerofour, \eoneone,   \\
+\eonetwo, \eonethree, \eonefour,     \\
+\etwoone, \etwotwo, \etwothree,      \\
+\etwofour, \ethreeone, \ethreetwo,   \\
+\ethreethree, \ethreefour, \efourone,\\
+ \efourtwo, \efourthree, \efourfour
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4740,37 +5003,41 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{magSun}{}
-Sun's apparent magnitude.
+\begin{docCommand}{euzero}{}
+Symbols for basis vectors with upper indices up to 4.
 \end{docCommand}
+\begin{docCommand}{euone}{}
+\end{docCommand}
+\begin{docCommand}{eutwo}{}
+\end{docCommand}
+\begin{docCommand}{euthree}{}
+\end{docCommand}
+\begin{docCommand}{eufour}{}
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\magSunmathsymbol \approx \magSun\)
+\euzero, \euone, \eutwo, \euthree, \eufour
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.5.0}{2015/10/09}{Added \cs{ueuzero} and friends.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Lstar}{\oarg{object}}
-Symbol for stellar luminosity.
+\begin{docCommand}{ueuzero}{}
+Symbols for normalized basis vectors with upper indices up to 4.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\Lstar or \Lstar[Sirius]
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{Lsolar}{}
-Symbol for solar luminosity as a unit. Really just an alias for 
-|\Lstar[\(\odot\)]|.
+\begin{docCommand}{ueuone}{}
 \end{docCommand}
+\begin{docCommand}{ueutwo}{}
+\end{docCommand}
+\begin{docCommand}{ueuthree}{}
+\end{docCommand}
+\begin{docCommand}{ueufour}{}
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\Lsolar
+\ueuzero, \ueuone, \ueutwo, \ueuthree, \ueufour
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4779,11 +5046,57 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Tstar}{\oarg{object}}
-Symbol for stellar temperature.
+\begin{docCommand}{euzerozero}{}
+Symbols for basis bivectors with upper indices up to 4.
 \end{docCommand}
+\begin{docCommand}{euzeroone}{}
+\end{docCommand}
+\begin{docCommand}{euzerotwo}{}
+\end{docCommand}
+\begin{docCommand}{euzerothree}{}
+\end{docCommand}
+\begin{docCommand}{euzerofour}{}
+\end{docCommand}
+\begin{docCommand}{euoneone}{}
+\end{docCommand}
+\begin{docCommand}{euonetwo}{}
+\end{docCommand}
+\begin{docCommand}{euonethree}{}
+\end{docCommand}
+\begin{docCommand}{euonefour}{}
+\end{docCommand}
+\begin{docCommand}{eutwoeone}{}
+\end{docCommand}
+\begin{docCommand}{eutwotwo}{}
+\end{docCommand}
+\begin{docCommand}{eutwothree}{}
+\end{docCommand}
+\begin{docCommand}{eutwofour}{}
+\end{docCommand}
+\begin{docCommand}{euthreeeone}{}
+\end{docCommand}
+\begin{docCommand}{euthreetwo}{}
+\end{docCommand}
+\begin{docCommand}{euthreethree}{}
+\end{docCommand}
+\begin{docCommand}{euthreefour}{}
+\end{docCommand}
+\begin{docCommand}{eufoureone}{}
+\end{docCommand}
+\begin{docCommand}{eufourtwo}{}
+\end{docCommand}
+\begin{docCommand}{eufourthree}{}
+\end{docCommand}
+\begin{docCommand}{eufourfour}{}
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\Tstar or \Tstar[Sirius]
+\euzerozero, \euzeroone, \euzerotwo,     \\
+\euzerothree, \euzerofour, \euoneone,    \\
+\euonetwo, \euonethree, \euonefour,      \\
+\eutwoone, \eutwotwo, \eutwothree,       \\
+\eutwofour, \euthreeone, \euthreetwo,    \\
+\euthreethree, \euthreefour, \eufourone, \\
+\eufourtwo, \eufourthree, \eufourfour
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4792,12 +5105,12 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Tsolar}{}
-Symbol for solar temperature as a unit. Really just an alias for 
-|\Tstar[\(\odot\)]|.
+\begin{docCommand}{gzero}{}
+Symbols for basis vectors, with \(\gamma\) as the kernel, with lower indices 
+up to 4.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\Tsolar
+\gzero, \gone, \gtwo, \gthree, \gfour
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4806,11 +5119,12 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Rstar}{\oarg{object}}
-Symbol for stellar radius.
+\begin{docCommand}{guzero}{}
+Symbols for basis vectors, with \(\gamma\) as the kernel, with upper indices 
+up to 4.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\Rstar or \Rstar[Sirius]
+\guzero, \guone, \gutwo, \guthree, \gufour
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4819,12 +5133,58 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Rsolar}{}
-Symbol for solar radius as a unit. Really just an alias for 
-|\Rstar[\(\odot\)]|.
+\begin{docCommand}{gzerozero}{}
+Symbols for basis bivectors, with \(\gamma\) as the kernel, with lower indices 
+up to 4.
 \end{docCommand}
+\begin{docCommand}{gzeroone}{}
+\end{docCommand}
+\begin{docCommand}{gzerotwo}{}
+\end{docCommand}
+\begin{docCommand}{gzerothree}{}
+\end{docCommand}
+\begin{docCommand}{gzerofour}{}
+\end{docCommand}
+\begin{docCommand}{goneone}{}
+\end{docCommand}
+\begin{docCommand}{gonetwo}{}
+\end{docCommand}
+\begin{docCommand}{gonethree}{}
+\end{docCommand}
+\begin{docCommand}{gonefour}{}
+\end{docCommand}
+\begin{docCommand}{gtwoeone}{}
+\end{docCommand}
+\begin{docCommand}{gtwotwo}{}
+\end{docCommand}
+\begin{docCommand}{gtwothree}{}
+\end{docCommand}
+\begin{docCommand}{gtwofour}{}
+\end{docCommand}
+\begin{docCommand}{gthreeeone}{}
+\end{docCommand}
+\begin{docCommand}{gthreetwo}{}
+\end{docCommand}
+\begin{docCommand}{gthreethree}{}
+\end{docCommand}
+\begin{docCommand}{gthreefour}{}
+\end{docCommand}
+\begin{docCommand}{gfoureone}{}
+\end{docCommand}
+\begin{docCommand}{gfourtwo}{}
+\end{docCommand}
+\begin{docCommand}{gfourthree}{}
+\end{docCommand}
+\begin{docCommand}{gfourfour}{}
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\Rsolar
+\gzerozero, \gzeroone, \gzerotwo,     \\
+\gzerothree, \gzerofour, \goneone,    \\
+\gonetwo, \gonethree, \gonefour,      \\
+\gtwoone, \gtwotwo, \gtwothree,       \\
+\gtwofour, \gthreeone, \gthreetwo,    \\
+\gthreethree, \gthreefour, \gfourone, \\
+\gfourtwo, \gfourthree, \gfourfour
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4833,25 +5193,74 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Mstar}{\oarg{object}}
-Symbol for stellar mass.
+\begin{docCommand}{guzerozero}{}
+Symbols for basis bivectors, with \(\gamma\) as the kernel, with upper indices 
+up to 4.
 \end{docCommand}
+\begin{docCommand}{guzeroone}{}
+\end{docCommand}
+\begin{docCommand}{guzerotwo}{}
+\end{docCommand}
+\begin{docCommand}{guzerothree}{}
+\end{docCommand}
+\begin{docCommand}{guzerofour}{}
+\end{docCommand}
+\begin{docCommand}{guoneone}{}
+\end{docCommand}
+\begin{docCommand}{guonetwo}{}
+\end{docCommand}
+\begin{docCommand}{guonethree}{}
+\end{docCommand}
+\begin{docCommand}{guonefour}{}
+\end{docCommand}
+\begin{docCommand}{gutwoeone}{}
+\end{docCommand}
+\begin{docCommand}{gutwotwo}{}
+\end{docCommand}
+\begin{docCommand}{gutwothree}{}
+\end{docCommand}
+\begin{docCommand}{gutwofour}{}
+\end{docCommand}
+\begin{docCommand}{guthreeeone}{}
+\end{docCommand}
+\begin{docCommand}{guthreetwo}{}
+\end{docCommand}
+\begin{docCommand}{guthreethree}{}
+\end{docCommand}
+\begin{docCommand}{guthreefour}{}
+\end{docCommand}
+\begin{docCommand}{gufoureone}{}
+\end{docCommand}
+\begin{docCommand}{gufourtwo}{}
+\end{docCommand}
+\begin{docCommand}{gufourthree}{}
+\end{docCommand}
+\begin{docCommand}{gufourfour}{}
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\Mstar or \Mstar[Sirius]
+\guzerozero, \guzeroone, \guzerotwo,     \\
+\guzerothree, \guzerofour, \guoneone,    \\
+\guonetwo, \guonethree, \guonefour,      \\
+\gutwoone, \gutwotwo, \gutwothree,       \\
+\gutwofour, \guthreeone, \guthreetwo,    \\
+\guthreethree, \guthreefour, \gufourone, \\
+\gufourtwo, \gufourthree, \gufourfour
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+% \subsubsection{Other Vector Related}
+%
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Msolar}{}
-Symbol for solar mass as a unit. Really just an alias for 
-|\Mstar[\(\odot\)]|.
+\begin{docCommand}{colvector}{\marg{commadelimitedlistofcomps}}
+Typesets column vectors.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\Msolar
+\colvector{x^0,x^1,x^2,x^3} \\
+\colvector{x_0,x_1,x_2,x_3}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4860,11 +5269,12 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Fstar}{\oarg{object}}
-Symbol for stellar flux.
+\begin{docCommand}{rowvector}{\marg{commadelimitedlistofcomps}}
+Typesets row vectors.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\Fstar or \Fstar[Sirius]
+\rowvector{x^0,x^1,x^2,x^3} \\
+\rowvector{x_0,x_1,x_2,x_3}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4873,45 +5283,34 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Fsolar}{}
-Symbol for solar flux as a unit. Really just an alias for 
-|\Fstar[\(\odot\)]|.
+\begin{docCommand}{scompscvect}{\oarg{anynonzero}\marg{kernel}}
+Typesets subscripted symbolic components of column 3- or 4-vectors 
+(use any nonzero value for the optional argument to typeset a 4-vector).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\Fsolar
+\begin{mysolution*}
+  \vect{p} &= \scompscvect{p}   \\
+  \vect{p} &= \scompscvect[4]{p}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.4.1}{2015/02/20}{Added \cs{scompsCvect} for superscripted 
+%  components.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{fstar}{}
-Alias for \cs{Fstar}.
+\begin{docCommand}{scompsCvect}{\oarg{anynonzero}\marg{kernel}}
+Typesets superscripted symbolic components of column 3- or 4-vectors 
+(use any nonzero value for the optional argument to typeset a 4-vector).
 \end{docCommand}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{fsolar}{}
-Alias for \cs{fsolar}.
-\end{docCommand}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{Magstar}{\oarg{object}}
-Symbol for stellar absolute magnitude.
-\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\Magstar or \Magstar[Sirius]
+\begin{mysolution*}
+  \vect{p} &= \scompsCvect{p}   \\
+  \vect{p} &= \scompsCvect[4]{p}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4920,39 +5319,48 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Magsolar}{}
-Symbol for solar absolute magnitude as a unit. Really just an alias for 
-|\Magstar[\(\odot\)]|.
+\begin{docCommand}{scompsrvect}{\oarg{anynonzero}\marg{kernel}}
+Typesets subscripted symbolic components of row 3- or 4-vectors 
+(use any nonzero value for the optional argument to typeset a 4-vector).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\Magsolar
+\begin{mysolution*}
+  \vect{p} &= \scompsrvect{p}   \\
+  \vect{p} &= \scompsrvect[4]{p}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.4.1}{2015/02/20}{Added \cs{scompsRvect} for superscripted 
+%  components.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{magstar}{\oarg{object}}
-Symbol for stellar apparent magnitude.
+\begin{docCommand}{scompsRvect}{\oarg{anynonzero}\marg{kernel}}
+Typesets superscripted symbolic components of row 3- or 4-vectors 
+(use any nonzero value for the optional argument to typeset a 4-vector).
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\magstar or \magstar[Sirius]
+\begin{mysolution*}
+  \vect{p} &= \scompsRvect{p}   \\
+  \vect{p} &= \scompsRvect[4]{p}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.5.0}{2015/10/09}{Added commands for Dirac notation.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{magsolar}{}
-Symbol for solar apparent magnitude as a unit. Really just an alias for 
-|\magstar[\(\odot\)]|.
+\begin{docCommand}{bra}{\marg{bra}}
+Typesets a Dirac bra.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\magsolar
+\bra{\Psi^*} or \bra{\frac{1}{a}\Psi^*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4961,11 +5369,11 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Dstar}{\oarg{object}}
-Symbol for stellar distance.
+\begin{docCommand}{ket}{\marg{ket}}
+Typesets a Dirac ket.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\Dstar or \Dstar[Sirius]
+\ket{\Psi} or \ket{\frac{1}{b}\Psi^*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -4974,91 +5382,16 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{Dsolar}{}
-Symbol for solar distance as a unit. Really just an alias for 
-|\Dstar[\(\odot\)]|.
+\begin{docCommand}{bracket}{\marg{bra}\marg{ket}}
+Typesets a Dirac bracket.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\Dsolar
+\bracket{\Psi^*}{\Psi}
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{dstar}{}
-Alias for \cs{Dstar} that uses a lower case d.
-\end{docCommand}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{dsolar}{}
-Alias for \cs{Dsolar} that uses a lower case d.
-\end{docCommand}
-%\iffalse
-%</example>
-%\fi
-%
-%\newpage
-%\changes{v2.4.0}{2014/12/16}{Added table of all predefined constants 
-%  with their symbols and units.}
-%\newgeometry{textwidth=8.5in}
-%\begin{center}
-% Here are all the predefined constants and their units.
-%\end{center}
-%
-%\chkconstant{oofpez}
-%\chkconstant{oofpezcs}
-%\chkconstant{vacuumpermittivity}
-%\chkconstant{mzofp}
-%\chkconstant{vacuumpermeability}
-%\chkconstant{boltzmann}
-%\chkconstant{boltzmannineV}
-%\chkconstant{stefanboltzmann}
-%\chkconstant{planck}
-%\chkconstant{planckineV}
-%\chkconstant{planckbar}
-%\chkconstant{planckbarineV}
-%\chkconstant{planckc}
-%\chkconstant{planckcineV}
-%\chkconstant{rydberg}
-%\chkconstant{bohrradius}
-%\chkconstant{finestructure}
-%\chkconstant{avogadro}
-%\chkconstant{universalgrav}
-%\chkconstant{surfacegravfield}
-%\chkconstant{clight}
-%\chkconstant{clightinfeet}
-%\chkconstant{Ratom}
-%\chkconstant{Mproton}
-%\chkconstant{Mneutron}
-%\chkconstant{Mhydrogen}
-%\chkconstant{Melectron}
-%\chkconstant{echarge}
-%\chkconstant{Qelectron}
-%\chkconstant{qelectron}
-%\chkconstant{Qproton}
-%\chkconstant{qproton}
-%\chkconstant{MEarth}
-%\chkconstant{MMoon}
-%\chkconstant{MSun}
-%\chkconstant{REarth}
-%\chkconstant{RMoon}
-%\chkconstant{RSun}
-%\chkconstant{ESdist}
-%\chkconstant{EMdist}
-%\chkconstant{LSun}
-%\chkconstant{TSun}
-%\chkconstant{MagSun}
-%\chkconstant{magSun}
-%\restoregeometry
-%
 % \subsection{Frequently Used Fractions}
 % 
 %\iffalse
@@ -5067,8 +5400,26 @@
 \begin{docCommand}{onehalf}{}
 Small fractions with numerator 1 and denominators up to 10.
 \end{docCommand}
+\begin{docCommand}{onethird}{}
+\end{docCommand}
+\begin{docCommand}{onefourth}{}
+\end{docCommand}
+\begin{docCommand}{onefifth}{}
+\end{docCommand}
+\begin{docCommand}{onesixth}{}
+\end{docCommand}
+\begin{docCommand}{oneseventh}{}
+\end{docCommand}
+\begin{docCommand}{oneeighth}{}
+\end{docCommand}
+\begin{docCommand}{onenineth}{}
+\end{docCommand}
+\begin{docCommand}{onetenth}{}
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\onehalf \cdots \onetenth\)
+\(\onehalf, \onethird, \onefourth, \onefifth,  \\
+\onesixth, \oneseventh, \oneeighth, \oneninth, \\
+\onetenth\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -5080,8 +5431,29 @@
 \begin{docCommand}{twooneths}{}
 Small fractions with numerator 2 and denominators up to 10.
 \end{docCommand}
+\begin{docCommand}{twohalves}{}
+\end{docCommand}
+\begin{docCommand}{twothirds}{}
+\end{docCommand}
+\begin{docCommand}{twofourths}{}
+\end{docCommand}
+\begin{docCommand}{twofifths}{}
+\end{docCommand}
+\begin{docCommand}{twosixths}{}
+\end{docCommand}
+\begin{docCommand}{twosevenths}{}
+\end{docCommand}
+\begin{docCommand}{twoeighths}{}
+\end{docCommand}
+\begin{docCommand}{twonineths}{}
+\end{docCommand}
+\begin{docCommand}{twotenths}{}
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\twooneths \cdots \twotenths\)
+\(\twooneths, \twohalves, \twothirds,  \\
+\twofourths, \twofifths, \twosixths,   \\
+\twosevenths, \twoeighths, \twoninths, \\
+\twotenths\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -5093,8 +5465,29 @@
 \begin{docCommand}{threeoneths}{}
 Small fractions with numerator 3 and denominators up to 10.
 \end{docCommand}
+\begin{docCommand}{threehalves}{}
+\end{docCommand}
+\begin{docCommand}{threethirds}{}
+\end{docCommand}
+\begin{docCommand}{threefourths}{}
+\end{docCommand}
+\begin{docCommand}{threefifths}{}
+\end{docCommand}
+\begin{docCommand}{threesixths}{}
+\end{docCommand}
+\begin{docCommand}{threesevenths}{}
+\end{docCommand}
+\begin{docCommand}{threeeighths}{}
+\end{docCommand}
+\begin{docCommand}{threenineths}{}
+\end{docCommand}
+\begin{docCommand}{threetenths}{}
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\threeoneths \cdots \threetenths\)
+\(\threeoneths, \threehalves, \threethirds,  \\
+\threefourths, \threefifths, \threesixths,   \\
+\threesevenths, \threeeighths, \threeninths, \\ 
+\threetenths\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -5106,8 +5499,29 @@
 \begin{docCommand}{fouroneths}{\marg{magnitude}}
 Small fractions with numerator 4 and denominators up to 10.
 \end{docCommand}
+\begin{docCommand}{fourhalves}{}
+\end{docCommand}
+\begin{docCommand}{fourthirds}{}
+\end{docCommand}
+\begin{docCommand}{fourfourths}{}
+\end{docCommand}
+\begin{docCommand}{fourfifths}{}
+\end{docCommand}
+\begin{docCommand}{foursixths}{}
+\end{docCommand}
+\begin{docCommand}{foursevenths}{}
+\end{docCommand}
+\begin{docCommand}{foureighths}{}
+\end{docCommand}
+\begin{docCommand}{fournineths}{}
+\end{docCommand}
+\begin{docCommand}{fourtenths}{}
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\(\fouroneths \cdots \fourtenths\)
+\(\fouroneths, \fourhalves, \fourthirds,  \\
+\fourfourths, \fourfifths, \foursixths,   \\
+\foursevenths, \foureighths, \fourninths, \\
+\fourtenths\)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -5142,39 +5556,30 @@
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/05/10}{Replaced \cs{evalfromto} with \cs{evaluatedfromto}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{evalfromto}{\marg{antiderivative}\marg{lower}\marg{upper}}
-Properly typesets the evaluation of definite integrals.
+\begin{docCommand}{evaluatedfromto}{\marg{lower}\oarg{upper}}
+Properly typesets the evaluation of definite integrals. Note that the upper
+limit is optional.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\( \evalfromto{\onethird y^3}{0}{3} \)
+\( {\onethird y^3}\evaluatedfromto{0}[3] \) \\
+\( {\onethird y^3}\evaluatedfromto{0} \)
 \end{dispExample*}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/05/10}{Replaced \cs{evalat} with new \cs{evaluatedat}.}
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{evalat}{\marg{expression}\marg{evaluationpoint}}
-Properly typesets quantities evaluated at a particular point or value.
-\ntodo[Suggestion]{Combine with \cs{evaluatedat}?}
-\end{docCommand}
-\begin{dispExample*}{sidebyside}
-\( \evalat{\dbydt[x]}{t=1} \)
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
 \begin{docCommand}{evaluatedat}{\marg{evaluationpoint}}
 Properly indicates evaluation at a particular point or value without 
-specifying the quantity.
+specifying the quantity. This is really just an alias for \cs{evaluatedfromto}
+with no optional upper limit.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
 \( \text{LMST}\evaluatedat{\longitude{0}} \)
@@ -5272,11 +5677,14 @@
 %<*example>
 %\fi
 \begin{docCommand}{dbydt}{\oarg{operand}}
-First time derivative operator. Use \cs{DbyDt} to get \(\Delta\) 
-instead of d.
+First time derivative operator.
 \end{docCommand}
+\begin{docCommand}{DbyDt}{\oarg{operand}}
+Identical to \refCom{dbydt} but uses \(\Delta\).
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\( \dbydt \) or \( \dbydt x \) or \dbydt[x]
+\( \dbydt \) or \( \dbydt x \) or \dbydt[x] \\
+\( \DbyDt \) or \( \DbyDt x \) or \DbyDt[x]
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -5286,11 +5694,14 @@
 %<*example>
 %\fi
 \begin{docCommand}{ddbydt}{\oarg{operand}}
-Second time derivative operator. Use \cs{DDbyDt} to get \(\Delta\) 
-instead of d.
+Second time derivative operator.
 \end{docCommand}
+\begin{docCommand}{DDbyDt}{\oarg{operand}}
+Identical to \cs{ddbydt} but uses \(\Delta\).
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\( \ddbydt \) or \( \ddbydt x \) or \ddbydt[x]
+\( \ddbydt \) or \( \ddbydt x \) or \ddbydt[x] \\
+\( \DDbyDt \) or \( \DDbyDt x \) or \DDbyDt[x]
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -5326,11 +5737,14 @@
 %<*example>
 %\fi
 \begin{docCommand}{dbyd}{\marg{dependentvariable}\marg{indvar}}
-Generic first derivative operator. Use \cs{DbyD} to get \(\Delta\) 
-instead of d.
+Generic first derivative operator.
 \end{docCommand}
+\begin{docCommand}{DbyD}{\marg{dependentvariable}\marg{indvar}}
+Identical to \refCom{dbyd} but uses \(\Delta\).
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\( \dbyd{f}{y} \)
+\( \dbyd{f}{y} \) \\
+\( \DbyD{f}{y} \)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -5340,11 +5754,14 @@
 %<*example>
 %\fi
 \begin{docCommand}{ddbyd}{\marg{dependentvariable}\marg{indvar}}
-Generic second derivative operator. Use \cs{DDbyD} to get \(\Delta\) 
-instead of d.
+Generic second derivative operator.
 \end{docCommand}
+\begin{docCommand}{DDbyD}{\marg{dependentvariable}\marg{indvar}}
+Identical to \refCom{ddbyd} but uses \(\Delta\).
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\( \ddbyd{f}{y} \)
+\( \ddbyd{f}{y} \) \\
+\( \DDbyD{f}{y} \)
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -5415,8 +5832,7 @@
 %</example>
 %\fi
 %
-%\changes{v2.5.0}{2015/10/16}{Added \cs{taigrad} to get Tai's gradient 
-%  symbol.}
+%\changes{v2.5.0}{2015/10/16}{Added \cs{taigrad} to get Tai's gradient symbol.}
 %\iffalse
 %<*example>
 %\fi
@@ -5430,8 +5846,7 @@
 %</example>
 %\fi
 %
-%\changes{v2.5.0}{2015/10/16}{Added \cs{taisvec} to get Tai's symbolic 
-%  vector.}
+%\changes{v2.5.0}{2015/10/16}{Added \cs{taisvec} to get Tai's symbolic vector.}
 %\iffalse
 %<*example>
 %\fi
@@ -5445,8 +5860,7 @@
 %</example>
 %\fi
 %
-%\changes{v2.5.0}{2015/10/16}{Added \cs{taigrad} to get Tai's divergence 
-%  symbol.}
+%\changes{v2.5.0}{2015/10/16}{Added \cs{taigrad} to get Tai's divergence symbol.}
 %\iffalse
 %<*example>
 %\fi
@@ -5460,8 +5874,7 @@
 %</example>
 %\fi
 %
-%\changes{v2.5.0}{2015/10/16}{Added \cs{taigrad} to get Tai's curl 
-%  symbol.}
+%\changes{v2.5.0}{2015/10/16}{Added \cs{taigrad} to get Tai's curl symbol.}
 %\iffalse
 %<*example>
 %\fi
@@ -5631,7 +6044,25 @@
 %</example>
 %\fi
 %
-% \newpage
+%\changes{v2.5.0}{2015/10/08}{Added \cs{eulerlagrange} command to 
+%  typeset the Euler-Lagrange equation.}
+%\iffalse
+%<*example>
+%\fi
+\begin{docCommand}{eulerlagrange}{\oarg{operand}}
+Euler-Lagrange equation.
+\end{docCommand}
+\begin{docCommand}{Eulerlagrange}{\oarg{operand}}
+Like \refCom{eulerlagrange} but uses \(\Delta\).
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\( \eulerlagrange \) or \( \eulerlagrange[x] \) \\
+\( \Eulerlagrange \) or \( \Eulerlagrange[x] \)
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
+%
 % \subsection{Other Useful Commands}
 %
 %\iffalse
@@ -5640,6 +6071,16 @@
 \begin{docCommand}{asin}{}
 Symbol for inverse sine and other inverse circular trig functions.
 \end{docCommand}
+\begin{docCommand}{acos}{}
+\end{docCommand}
+\begin{docCommand}{atan}{}
+\end{docCommand}
+\begin{docCommand}{asec}{}
+\end{docCommand}
+\begin{docCommand}{acsc}{}
+\end{docCommand}
+\begin{docCommand}{acot}{}
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
 \( \asin, \acos, \atan, \asec, \acsc, \acot \)
 \end{dispExample*}
@@ -5653,9 +6094,23 @@
 \begin{docCommand}{sech}{}
 Hyperbolic and inverse hyperbolic functions not defined in \LaTeX.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
+\begin{docCommand}{csch}{}
+\end{docCommand}
+\begin{docCommand}{asinh}{}
+\end{docCommand}
+\begin{docCommand}{acosh}{}
+\end{docCommand}
+\begin{docCommand}{atanh}{}
+\end{docCommand}
+\begin{docCommand}{asech}{}
+\end{docCommand}
+\begin{docCommand}{acsch}{}
+\end{docCommand}
+\begin{docCommand}{acoth}{}
+\end{docCommand}
+\begin{dispExample}
 \( \sech, \csch, \asinh, \acosh, \atanh, \asech, \acsch, \acoth \)
-\end{dispExample*}
+\end{dispExample}
 %\iffalse
 %</example>
 %\fi
@@ -5768,6 +6223,7 @@
 %
 %\changes{v2.5.0}{2015/09/13}{Added \cs{inparens} for grouping with 
 %  parentheses.}
+%\changes{v2.6.0}{2016/05/02}{Changed placeholder to underscore.}
 %\iffalse
 %<*example>
 %\fi
@@ -5785,6 +6241,7 @@
 %\changes{v2.5.0}{2015/09/13}{Renamed \cs{abs} to \cs{absof}.}
 %\changes{v2.5.0}{2015/09/13}{\cs{absof} now shows a placeholder for a 
 %  blank argument.}
+%\changes{v2.6.0}{2016/05/02}{Changed placeholder to underscore.}
 %\iffalse
 %<*example>
 %\fi
@@ -5800,12 +6257,13 @@
 %
 %\changes{v2.5.0}{2015/09/13}{\cs{magof} now shows a placeholder for a 
 %  blank argument.}
+%\changes{v2.6.0}{2016/05/02}{Changed placeholder to underscore.}
 %\iffalse
 %<*example>
 %\fi
 \begin{docCommand}{magof}{\marg{arg}}
 Magnitude of a quantity (lets you selectively use double bars even 
-when the \opt{singleabsbars} option is use when loading the package). 
+when the \opt{singlemagbars} option is use when loading the package). 
 A blank argument generates a placeholder.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
@@ -5817,6 +6275,7 @@
 %
 %\changes{v2.5.0}{2015/09/13}{\cs{dimsof} now shows a placeholder for a 
 %  blank argument.}
+%\changes{v2.6.0}{2016/05/02}{Changed placeholder to underscore.}
 %\iffalse
 %<*example>
 %\fi
@@ -5824,9 +6283,9 @@
 Notation for showing the dimensions of a quantity. A blank argument 
 generates a placeholder. 
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
+\begin{dispExample}
 \( \dimsof{\vect{v}} = L \cdot T^{-1} \), \dimsof{}
-\end{dispExample*}
+\end{dispExample}
 %\iffalse
 %</example>
 %\fi
@@ -5833,6 +6292,7 @@
 %
 %\changes{v2.5.0}{2015/09/13}{\cs{unitsof} now shows a placeholder for a 
 %  blank argument.}
+%\changes{v2.6.0}{2016/05/02}{Changed placeholder to underscore.}
 %\iffalse
 %<*example>
 %\fi
@@ -5864,26 +6324,15 @@
 %\iffalse
 %<*example>
 %\fi
-\begin{docCommand}{scin}{\oarg{mantissa}\marg{exponent}\oarg{unit}}
-Command for scientific notation with an optional unit. Deprecated. 
-Use \cs{timestento} or \cs{xtento} instead.
-\end{docCommand}
-\begin{dispExample*}{sidebyside}
-2.99\timestento{8}[\velocityonlytradunit]
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%\iffalse
-%<*example>
-%\fi
 \begin{docCommand}{xtento}{\marg{exponent}\oarg{unit}}
-Command for scientific notation with an optional unit. Alias for 
-\cs{timestento}.
+Command for scientific notation with an optional unit.
 \end{docCommand}
+\begin{docCommand}{timestento}{\marg{exponent}\oarg{unit}}
+Another command for scientific notation with an optional unit.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-2.99\xtento{8}[\velocityonlytradunit]
+2.99\xtento{8}[\velocityonlytradunit] \\
+2.99\timestento{-4}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -5893,11 +6342,15 @@
 %<*example>
 %\fi
 \begin{docCommand}{ee}{\marg{mantissa}\marg{exponent}}
-Command for scientific notation for computer code. 
-Use \cs{EE} for |EE|.
+Command for scientific notation for computer code. Units are not used in computer
+code.
 \end{docCommand}
+\begin{docCommand}{EE}{\marg{mantissa}\marg{exponent}}
+Identical to \refCom{ee} but gives capital letters. 
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\ee{2.99}{8}
+\ee{2.99}{8} \\
+\EE{2.99}{8}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -5907,9 +6360,12 @@
 %<*example>
 %\fi
 \begin{docCommand}{dms}{\marg{deg}\marg{min}\marg{sec}}
-Command for formatting angles and time. Use \cs{hms} for time. 
-Note that other packages may do this better.
+Command for formatting angles and time. Note that other packages may do 
+this better.
 \end{docCommand}
+\begin{docCommand}{hms}{\marg{deg}\marg{min}\marg{sec}}
+Like \refCom{dms} but formats time.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
 \dms{23}{34}{10.27} \\
 \hms{23}{34}{10.27}
@@ -5922,7 +6378,7 @@
 %<*example>
 %\fi
 \begin{docCommand}{clockreading}{\marg{hrs}\marg{min}\marg{sec}}
-Command for formatting a clock reading. Really an alias for \cs{hms}, 
+Command for formatting a clock reading. Really an alias for \refCom{hms}, 
 but conceptually a very different idea that introductory textbooks don't 
 do a good enough job at articulating.
 \end{docCommand}
@@ -5938,8 +6394,13 @@
 %\fi
 \begin{docCommand}{latitude}{\marg{arg}}
 Command for formatting latitude, useful in astronomy. 
-Use \cs{latitudeN} or \cs{latitudeS} to include a letter.
 \end{docCommand}
+\begin{docCommand}{latitudeN}{\marg{arg}}
+Command for formatting latitude with an N for north.
+\end{docCommand}
+\begin{docCommand}{latitudeS}{\marg{arg}}
+Command for formatting latitude with an S for north.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
 \latitude{+35}, \latitudeN{35}, \latitudeS{35}
 \end{dispExample*}
@@ -5952,8 +6413,14 @@
 %\fi
 \begin{docCommand}{longitude}{\marg{arg}}
 Command for formatting longitude, useful in astronomy. 
-Use \cs{longitudeE} or \cs{longitudeW} to include a letter.
+Use \refCom{longitudeE} or \refCom{longitudeW} to include a letter.
 \end{docCommand}
+\begin{docCommand}{longitudeE}{\marg{arg}}
+Command for formatting longitude with an E for east.
+\end{docCommand}
+\begin{docCommand}{longitudeW}{\marg{arg}}
+Command for formatting longitude with an W for east.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
 \longitude{-81}, \longitudeE{81}, \longitudeW{81}
 \end{dispExample*}
@@ -6058,6 +6525,10 @@
 \begin{docCommand}{xaxis}{}
 Command for coordinate axes.
 \end{docCommand}
+\begin{docCommand}{yaxis}{}
+\end{docCommand}
+\begin{docCommand}{zaxis}{}
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
  \xaxis, \yaxis, \zaxis
 \end{dispExample*}
@@ -6099,6 +6570,16 @@
 \begin{docCommand}{xyplane}{}
 Commands for naming coordinate planes. All combinations are defined.
 \end{docCommand}
+\begin{docCommand}{yzplane}{}
+\end{docCommand}
+\begin{docCommand}{zxplane}{}
+\end{docCommand}
+\begin{docCommand}{yxplane}{}
+\end{docCommand}
+\begin{docCommand}{zyplane}{}
+\end{docCommand}
+\begin{docCommand}{xzplane}{}
+\end{docCommand}
 \begin{dispExample}
 \xyplane, \yzplane, \zxplane, \yxplane, \zyplane, \xzplane
 \end{dispExample}
@@ -6137,11 +6618,14 @@
 %<*example>
 %\fi
 \begin{docCommand}{cuberoot}{\marg{arg}}
-Command for cube root of an argument. Use \cs{fcuberoot} to get fractional 
-exponent.
+Command for cube root of an argument.
 \end{docCommand}
+\begin{docCommand}{fcuberoot}{\marg{arg}}
+Command for cube root of an argument as a fractional power.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\cuberoot{x}, \fcuberoot{x}
+\cuberoot{x} \\
+\fcuberoot{x}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -6151,11 +6635,14 @@
 %<*example>
 %\fi
 \begin{docCommand}{fourthroot}{\marg{arg}}
-Command for fourth root of an argument. Use \cs{ffourthroot} to get fractional 
-exponent.
+Command for fourth root of an argument.
 \end{docCommand}
+\begin{docCommand}{ffourthroot}{\marg{arg}}
+Command for fourth root of an argument as a fractional power.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\fourthroot{x}, \ffourthroot{x}
+\fourthroot{x} \\
+\ffourthroot{x}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -6165,11 +6652,14 @@
 %<*example>
 %\fi
 \begin{docCommand}{fifthroot}{\marg{arg}}
-Command for fifth root of an argument. Use \cs{ffifthroot} to get fractional 
-exponent.
+Command for fifth root of an argument.
 \end{docCommand}
+\begin{docCommand}{ffifthroot}{\marg{arg}}
+Command for fifth root of an argument as a fractional power.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\fifthroot{x}, \ffifthroot{x}
+\fifthroot{x} \\ 
+\ffifthroot{x}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -6179,16 +6669,16 @@
 %<*example>
 %\fi
 \begin{docCommand}{relgamma}{\marg{arg}}
-Expression for Lorentz factor. Use \cs{frelgamma} to get fractional 
-exponent.
+Expression for Lorentz factor.
 \end{docCommand}
+\begin{docCommand}{frelgamma}{\marg{arg}}
+Expression for Lorentz factor with a fractional power.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-\gamma&=\relgamma{\magvect{v}}\\
-\gamma&=\relgamma{(0.5c)}\\
-\gamma&=\frelgamma{\magvect{v}}\\
-\gamma&=\frelgamma{(0.5c)}
-\end{align*}
+\begin{mysolution*}
+  \gamma &= \relgamma{\magvect{v}} \\
+  \gamma &= \frelgamma{\magvect{v}}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -6198,14 +6688,29 @@
 %<*example>
 %\fi
 \begin{docCommand}{oosqrtomxs}{\marg{arg}}
-Commands for expressions convenient in numerically evaluating Lorentz 
-factors. Say each expression out loud and you'll see where the command 
-names come from.
+Commands for \textbf{o}ne \textbf{o}ver \textbf{s}quare root \textbf{o}f 
+\textbf{o}ne \textbf{m}inus \textbf{x} \textbf{s}quared. Say that out loud and
+you will see where the name comes from.
 \end{docCommand}
+\begin{docCommand}{oosqrtomx}{\marg{arg}}
+Commands for \textbf{o}ne \textbf{o}ver \textbf{s}quare root \textbf{o}f 
+\textbf{o}ne \textbf{m}inus \textbf{x}. Say that out loud and
+you will see where the name comes from.
+\end{docCommand}
+\begin{docCommand}{oomx}{\marg{arg}}
+Commands for \textbf{o}ne \textbf{o}ver \textbf{s}quare root \textbf{o}f 
+\textbf{o}ne \textbf{m}inus \textbf{x}. Say that out loud and
+you will see where the name comes from.
+\end{docCommand}
+\begin{docCommand}{oopx}{\marg{arg}}
+Commands for \textbf{o}ne \textbf{o}ver \textbf{s}quare root \textbf{o}f 
+\textbf{o}ne \textbf{p}lus \textbf{x}. Say that out loud and
+you will see where the name comes from.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\oosqrtomxs{0.22},
-\oosqrtomx{0.22},
-\ooomx{0.22},
+\oosqrtomxs{0.22} \\
+\oosqrtomx{0.22}  \\
+\ooomx{0.22}      \\
 \ooopx{0.11}
 \end{dispExample*}
 %\iffalse
@@ -6214,7 +6719,9 @@
 %
 % \subsection{Custom Operators}
 % The \(=\) operator is frequently misused. We need other operators 
-% for other cases.
+% for other cases to express conceptual relationships other than, say, 
+% mathematical equality. Some of these may seem strange to you but I have
+% found them helpful.
 %\iffalse
 %<*example>
 %\fi
@@ -6233,9 +6740,11 @@
 %\fi
 \begin{docCommand}{wordoperator}{\marg{firstline}\marg{secondline}}
 Command for two lines of tiny text to be use as an operator without using 
-mathematical symbols. Use \cs{pwordoperator} to get parentheses around the 
-operator.
+mathematical symbols.
 \end{docCommand}
+\begin{docCommand}{pwordoperator}{\marg{firstline}\marg{secondline}}
+Like \refCom{wordoperator} but puts parentheses around the operator.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
 \wordoperator{added}{to} \\
 \pwordoperator{added}{to}
@@ -6248,14 +6757,54 @@
 %<*example>
 %\fi
 \begin{docCommand}{definedas}{}
-Commands for frequently used word operators. Prepend |p| to each to get 
-parentheses around the operator.
+Operator representing a definition.
 \end{docCommand}
+\begin{docCommand}{pdefinedas}{}
+Same as \refCom{definedas} but puts parentheses around the operator.
+\end{docCommand}
+\begin{docCommand}{earlierthan}{}
+Operator useful for comparing times and clock readings.
+\end{docCommand}
+\begin{docCommand}{pearlierthan}{}
+Same as \refCom{earlierthan} but puts parentheses around the operator.
+\end{docCommand}
+\begin{docCommand}{laterthan}{}
+Operator useful for comparing times and clock readings.
+\end{docCommand}
+\begin{docCommand}{platerthan}{}
+Same as \refCom{laterthan} but puts parentheses around the operator.
+\end{docCommand}
+\begin{docCommand}{adjustedby}{}
+Operator useful for comparing times and clock readings.
+\end{docCommand}
+\begin{docCommand}{padjustedby}{}
+Same as \refCom{adjustedby} but puts parentheses around the operator.
+\end{docCommand}
+\begin{docCommand}{forevery}{}
+Operator the idea of for every.
+\end{docCommand}
+\begin{docCommand}{pforevery}{}
+Same as \refCom{forevery} but puts parentheses around the operator.
+\end{docCommand}
+\begin{docCommand}{associated}{}
+Operator representing a conceptual association.
+\end{docCommand}
+\begin{docCommand}{passociated}{}
+Same as \refCom{associated} but puts parentheses around the operator.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\definedas and \associated and \adjustedby    \\
-\earlierthan and \laterthan and \forevery     \\
-\pdefinedas and \passociated and \padjustedby \\
-\pearlierthan and \platerthan and \pforevery
+\definedas     \\
+\pdefinedas    \\
+\earlierthan   \\
+\pearlierthan  \\
+\laterthan     \\
+\platerthan    \\
+\adjustedby    \\
+\padjustedby   \\
+\forevery      \\
+\pforevery     \\
+\associated    \\
+\passociated  
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -6280,12 +6829,11 @@
 \begin{docCommand}{inframe}{\oarg{frame}}
 Command for operator indicating the coordinate representation of a vector 
 in a particular reference frame denoted by a capital letter.
-\ntodo[Suggestion]{Make the arrow's length fixed.}
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
-\vect{p} \inframe[S] \momentum{\mivector{1,2,3}} \\
+\begin{dispExample}
+\vect{p} \inframe[S] \momentum{\mivector{1,2,3}}          \\
 \vect{p} \inframe[S'] \momentum{\mivector{\sqrt{14},0,0}}
-\end{dispExample*}
+\end{dispExample}
 %\iffalse
 %</example>
 %\fi
@@ -6295,7 +6843,8 @@
 %\fi
 \begin{docCommand}{associates}{}
 Command for \textit{associated with} or \textit{associates with} operator 
-(for verbal concepts).
+(for verbal concepts). This is conceptually different from the
+\refCom{associated} or \refCom{passociated} operators.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
 kinetic energy \associates velocity
@@ -6323,9 +6872,9 @@
 \begin{docCommand}{rrelatedto}{\marg{leftoperation}}
 Command for left-to-right relationship.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
+\begin{dispExample}
 (flux ratio) \rrelatedto{taking logarithm} (mag diff)
-\end{dispExample*}
+\end{dispExample}
 %\iffalse
 %</example>
 %\fi
@@ -6336,9 +6885,9 @@
 \begin{docCommand}{lrelatedto}{\marg{roperation}}
 Command for right-to-left relationship.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
+\begin{dispExample}
 (flux ratio) \lrelatedto{exponentiation} (mag diff)
-\end{dispExample*}
+\end{dispExample}
 %\iffalse
 %</example>
 %\fi
@@ -6349,24 +6898,33 @@
 \begin{docCommand}{brelatedto}{\marg{leftoperation}\marg{roperation}}
 Command for bidirectional relationship.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
+\begin{dispExample}
 (mag diff) \brelatedto{taking logarithm}{exponentiation}(flux ratio)
-\end{dispExample*}
+\end{dispExample}
 %\iffalse
 %</example>
 %\fi
 %
 % \subsection{Commands Specific to \mi}
+% While these commands were inspired by \mi, they can certainly be used in
+% any introductory physics course.
 %
 %\iffalse
 %<*example>
 %\fi
 \begin{docCommand}{momentumprinciple}{}
-Expression for the momentum principle. Prepend \cs{LHS} to get just 
-the left hand side and \cs{RHS} to get just the right hand side.
+Expression for the momentum principle.
 \end{docCommand}
+\begin{docCommand}{LHSmomentumprinciple}{}
+Just the left hand side.
+\end{docCommand}
+\begin{docCommand}{RHSmomentumprinciple}{}
+Just the right hand side.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\momentumprinciple
+\momentumprinciple    \\
+\LHSmomentumprinciple \\
+\RHSmomentumprinciple
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -6389,12 +6947,19 @@
 %<*example>
 %\fi
 \begin{docCommand}{energyprinciple}{}
-Expression for the energy principle. Prepend \cs{LHS} to get just the left
-hand side and \cs{RHS} to get just the right hand side. Processes other 
-than work and thermal energy transfer (e.g.\ radiation) are neglected.
+Expression for the energy principle. Processes other than work and 
+thermal energy transfer (e.g.\ radiation) are neglected.
 \end{docCommand}
+\begin{docCommand}{LHSenergyprinciple}{}
+Just the left hand side.
+\end{docCommand}
+\begin{docCommand}{RHSenergyprinciple}{}
+Just the right hand side.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\energyprinciple
+\energyprinciple      \\
+\LHSenergyprinciple \\
+\RHSenergyprinciple
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -6417,11 +6982,18 @@
 %<*example>
 %\fi
 \begin{docCommand}{angularmomentumprinciple}{}
-Expression for the angular momentum principle. Prepend \cs{LHS} to get 
-just the left hand side and \cs{RHS} to get just the right hand side.
+Expression for the angular momentum principle.
 \end{docCommand}
+\begin{docCommand}{LHSangularmomentumprinciple}{}
+Just the left hand side.
+\end{docCommand}
+\begin{docCommand}{RHSangularmomentumprinciple}{}
+Just the right hand side.
+\end{docCommand}
 \begin{dispExample*}{sidebyside}
-\angularmomentumprinciple
+\angularmomentumprinciple    \\
+\LHSangularmomentumprinciple \\
+\RHSangularmomentumprinciple
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -6482,6 +7054,19 @@
 %\iffalse
 %<*example>
 %\fi
+\begin{docCommand}{gfieldofparticle}{}
+Expression for a particle's gravitational field.
+\end{docCommand}
+\begin{dispExample*}{sidebyside}
+\gfieldofparticle
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
+%
+%\iffalse
+%<*example>
+%\fi
 \begin{docCommand}{Efieldofparticle}{}
 Expression for a particle's electric field.
 \end{docCommand}
@@ -7051,10 +7636,10 @@
 default value of the optional argument.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*} 
-  &\LHSmaxwelliint \\
+\begin{mysolution*} 
+  &\LHSmaxwelliint   \\
   &\LHSmaxwelliint[S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7081,10 +7666,10 @@
 integral form. Note the default value of the optional argument.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\RHSmaxwelliinta \\
+\begin{mysolution*}
+  &\RHSmaxwelliinta           \\
   &\RHSmaxwelliinta[\upsilon]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7112,10 +7697,10 @@
 Note the default value of the optional argument.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\maxwelliint \\
+\begin{mysolution*}
+  &\maxwelliint    \\
   &\maxwelliint[S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7129,10 +7714,10 @@
 Note the default values of the optional arguments.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\maxwelliinta \\
+\begin{mysolution*}
+  &\maxwelliinta              \\
   &\maxwelliinta[S][\upsilon]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7146,10 +7731,10 @@
 Note the default value of the optional argument.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\maxwelliintfree \\
+\begin{mysolution*}
+  &\maxwelliintfree    \\
   &\maxwelliintfree[S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7163,10 +7748,10 @@
 Note the default value of the optional argument.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\LHSmaxwelliiint \\
+\begin{mysolution*}
+  &\LHSmaxwelliiint    \\
   &\LHSmaxwelliiint[S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7208,10 +7793,10 @@
 the optional argument.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*} 
-  &\RHSmaxwelliiintma \\
+\begin{mysolution*} 
+  &\RHSmaxwelliiintma           \\
   &\RHSmaxwelliiintma[\upsilon]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7239,10 +7824,10 @@
 of the optional argument.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*} 
-  &\maxwelliiint \\
+\begin{mysolution*} 
+  &\maxwelliiint    \\
   &\maxwelliiint[S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7256,10 +7841,10 @@
 Note the default value of the optional argument.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\maxwelliiintm \\
+\begin{mysolution*}
+  &\maxwelliiintm    \\
   &\maxwelliiintm[S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7273,10 +7858,10 @@
 magnetic monopoles. Note the default values of the optional arguments.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\maxwelliiintma \\
+\begin{mysolution*}
+  &\maxwelliiintma              \\
   &\maxwelliiintma[S][\upsilon]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7290,10 +7875,10 @@
 Note the default value of the optional argument.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\maxwelliiintfree \\
+\begin{mysolution*}
+  &\maxwelliiintfree    \\
   &\maxwelliiintfree[S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7307,10 +7892,10 @@
 Note the default value of the optional argument.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\LHSmaxwelliiiint \\
+\begin{mysolution*}
+  &\LHSmaxwelliiiint    \\
   &\LHSmaxwelliiiint[C]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7324,10 +7909,10 @@
 Note the default value of the optional argument.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\RHSmaxwelliiiint \\
+\begin{mysolution*}
+  &\RHSmaxwelliiiint    \\
   &\RHSmaxwelliiiint[S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7341,10 +7926,10 @@
 magnetic monopoles. Note the default value of the optional argument.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\RHSmaxwelliiiintm \\
+\begin{mysolution*}
+  &\RHSmaxwelliiiintm    \\
   &\RHSmaxwelliiiintm[S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7359,10 +7944,10 @@
 the optional argument.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\RHSmaxwelliiiintma \\
+\begin{mysolution*}
+  &\RHSmaxwelliiiintma    \\
   &\RHSmaxwelliiiintma[S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7376,10 +7961,10 @@
 free space. Note the default value of the optional argument.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\RHSmaxwelliiiintfree \\
+\begin{mysolution*}
+  &\RHSmaxwelliiiintfree    \\
   &\RHSmaxwelliiiintfree[S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7393,10 +7978,10 @@
 the optional arguments.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\maxwelliiiint \\
+\begin{mysolution*}
+  &\maxwelliiiint        \\
   &\maxwelliiiint[C][S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7410,10 +7995,10 @@
 Note the default values of the optional arguments.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\maxwelliiiintm \\
+\begin{mysolution*}
+  &\maxwelliiiintm       \\
   &\maxwelliiiintm[C][S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7427,10 +8012,10 @@
 monopoles. Note the default values of the optional arguments.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\maxwelliiiintma \\
+\begin{mysolution*}
+  &\maxwelliiiintma       \\
   &\maxwelliiiintma[C][S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7444,10 +8029,10 @@
 values of the optional arguments.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\maxwelliiiintfree \\
+\begin{mysolution*}
+  &\maxwelliiiintfree       \\
   &\maxwelliiiintfree[C][S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7461,10 +8046,10 @@
 Note the default value of the optional argument.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\LHSmaxwellivint \\
+\begin{mysolution*}
+  &\LHSmaxwellivint     \\
   &\LHSmaxwellivint[C]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7478,10 +8063,10 @@
 Note the default value of the optional argument.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\RHSmaxwellivint \\
+\begin{mysolution*}
+  &\RHSmaxwellivint     \\
   &\RHSmaxwellivint[S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7495,10 +8080,10 @@
 integral form. Note the default value of the optional argument.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\RHSmaxwellivinta \\
+\begin{mysolution*}
+  &\RHSmaxwellivinta     \\
   &\RHSmaxwellivinta[S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7512,10 +8097,10 @@
 free space. Note the default value of the optional argument.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\RHSmaxwellivintfree \\
+\begin{mysolution*}
+  &\RHSmaxwellivintfree     \\
   &\RHSmaxwellivintfree[S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7529,10 +8114,10 @@
 the optional arguments.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\maxwellivint \\
+\begin{mysolution*}
+  &\maxwellivint       \\
   &\maxwellivint[C][S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7546,10 +8131,10 @@
 Note the default values of the optional arguments.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\maxwellivinta \\
+\begin{mysolution*}
+  &\maxwellivinta        \\
   &\maxwellivinta[C][S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7563,10 +8148,10 @@
 Note the default values of the optional arguments.
 \end{docCommand}
 \begin{dispExample*}{sidebyside}
-\begin{align*}
-  &\maxwellivintfree \\
+\begin{mysolution*}
+  &\maxwellivintfree        \\
   &\maxwellivintfree[C][S]
-\end{align*}
+\end{mysolution*}
 \end{dispExample*}
 %\iffalse
 %</example>
@@ -7920,32 +8505,17 @@
 %</example>
 %\fi
 %
-%\changes{v2.5.0}{2015/10/08}{Added \cs{eulerlagrange} command to 
-%  typeset the Euler-Lagrange equation.}
-%\iffalse
-%<*example>
-%\fi
-\begin{docCommand}{eulerlagrange}{\oarg{operand}}
-Euler-Lagrange equation. Use \cs{Eulerlagrange} to get \(\Delta\) 
-instead of \(\partial\).
-\end{docCommand}
-\begin{dispExample*}{sidebyside}
-\( \eulerlagrange \) or \( \eulerlagrange[x] \)
-\end{dispExample*}
-%\iffalse
-%</example>
-%\fi
-%
-%
 % \subsection{VPython and GlowScript Code}
 % There are three ways to deal with VPython\footnote{See the VPython home page at
 % \url{http://vpython.org/} for more information.} and GlowScript\footnote{See the 
 % GlowScript home page at \url{http://glowscript.org/} for more information.} code.
+% With very few exceptions, VPython code and GlowScript code are identical. The 
+% commands with |vpython| in their names can handle both, but for semantic 
+% completeness there are corresponding commands with |glowscript| in their names.
 %
 %\changes{v2.4.0}{2014/12/16}{\cs{vpythonline} now uses a uniform style.}
 %\changes{v2.4.1}{2015/01/23}{Added more VPython keywords.}
-%\changes{v2.5.0}{2016/01/26}{Added explicit mention of VPython and 
-%  GlowScript.}
+%\changes{v2.5.0}{2016/01/26}{Added explicit mention of VPython and GlowScript.}
 %\changes{v2.5.0}{2016/01/26}{Added GlowScript keywords.}
 %\iffalse
 %<*example>
@@ -7953,22 +8523,35 @@
 \begin{docCommand}{vpythonline}{\marg{vpythoncode}}
 Command for a single line of VPython or GlowScript code used inline.
 \end{docCommand}
-\begin{dispExample*}{sidebyside}
+\begin{dispExample}
 \vpythonline{from __future__ import division, print_function}
-\end{dispExample*}
+\end{dispExample}
 %\iffalse
 %</example>
 %\fi
 %
-%\changes{v2.4.0}{2014/12/16}{\cs{vpythonblock} now uses a uniform style.}
-%\changes{v2.4.1}{2015/02/11}{\cs{vpythonblock} now accepts an optional 
-%  caption.}
+%\changes{v2.6.0}{2016/05/12}{Added \cs{glowscriptline}.}
 %\iffalse
 %<*example>
 %\fi
-\newpage
+\begin{docCommand}{glowscriptline}{\marg{glowscriptcode}}
+Command for a single line of GlowScript code used inline. Note that with very
+few exceptions, GlowScript code is identical to VPython code.
+\end{docCommand}
+\begin{dispExample}
+\glowscriptline{xyplane = box(pos=vector(0,0,0),length=10,width=10,height=0.05)}
+\end{dispExample}
+%\iffalse
+%</example>
+%\fi
+%
+%\changes{v2.4.0}{2014/12/16}{\texttt{vpythonblock} now uses a uniform style.}
+%\changes{v2.4.1}{2015/02/11}{\texttt{vpythonblock} now accepts an optional caption.}
+%\iffalse
+%<*example>
+%\fi
 \begin{docEnvironment}{vpythonblock}{\oarg{caption}}
-Environment for a block of VPython or GlowScript code.
+Environment for a block of VPython or GlowScript code. 
 \end{docEnvironment}
 \begin{dispExample}
 \begin{vpythonblock}[Example VPython Listing]
@@ -7979,30 +8562,48 @@
   MyArrow=arrow(pos=earth.pos,axis=fscale*Fnet,color=color.green)
   print ("arrow.pos = "), arrow.pos
 \end{vpythonblock}
-\begin{vpythonblock}[Example GlowScript Listing]
-  GlowScript 2.0 VPython
-  sphere(pos=vector(1,2,3),color=color.green)
-  # create a named arrow
-  MyArrow=arrow(pos=earth.pos,axis=fscale*Fnet,color=color.green)
-  print ("arrow.pos = "), arrow.pos
-\end{vpythonblock}
 \end{dispExample}
 %\iffalse
 %</example>
 %\fi
 %
+%\changes{v2.6.0}{2016/05/12}{Added \texttt{glowscriptblock}.}
+%\iffalse
+%<*example>
+%\fi
+\begin{docEnvironment}{glowscriptblock}{\oarg{caption}}
+Environment for a block of GlowScript code.
+\end{docEnvironment}
+\begin{dispExample}
+\begin{glowscriptblock}[Example GlowScript Listing]
+GlowScript 2.1 VPython
+
+Aarr = arrow(pos=vector(0,0,0),axis=A,color=color.red)
+label(pos=Aarr.axis,text='A')
+Barr = arrow(pos=vector(0,0,0),axis=B,color=color.blue)
+label(pos=Barr.axis,text='B')
+Carr = arrow(pos=vector(0,0,0),axis=C,color=color.green)
+label(pos=Carr.axis,text='C')
+\end{glowscriptblock}
+\end{dispExample}
+%\iffalse
+%</example>
+%\fi
+%
 %\changes{v2.4.0}{2014/12/16}{\cs{vpythonfile} now uses a uniform style.}
-%\changes{v2.4.1}{2015/02/11}{\cs{vpythonfile} now accepts an optional 
-%  caption.}
+%\changes{v2.4.1}{2015/02/11}{\cs{vpythonfile} now accepts an optional caption.}
 %\changes{v2.5.0}{2016/01/26}{\cs{vpythonfile} now begins listings on a new page.}
+%\changes{v2.6.0}{2016/05/12}{Added \cs{glowscriptfile}.}
 %\iffalse
 %<*example>
 %\fi
-\newpage
 \begin{docCommand}{vpythonfile}{\oarg{caption}\meta{filename}}
-Typesets a file in the current directory containing VPython or GlowScript
-code. The listing will begin on a new page.
+Typesets a file in the current directory containing VPython code. 
+The listing will begin on a new page.
 \end{docCommand}
+\begin{docCommand}{glowscriptfile}{\oarg{caption}\meta{filename}}
+Functionally identical to \refCom{vpythonfile}.
+\end{docCommand}
 \begin{dispExample}
 \vpythonfile[vdemo.py]{vdemo.py}
 \end{dispExample}
@@ -8049,7 +8650,7 @@
 %\fi
 \begin{docEnvironment}{adjactivityanswer}
   {\oarg{bgclr}\oarg{frmclr}\oarg{txtclr}\oarg{wdth}\oarg{hght}}
-Like \cs{activityanswer} but adjusts vertically to tightly surround text.
+Like \refEnv{activityanswer} but adjusts vertically to tightly surround text.
 \end{docEnvironment}
 \begin{dispExample}
 \begin{adjactivityanswer}
@@ -8069,7 +8670,6 @@
 %</example>
 %\fi
 %
-%\newpage
 %\iffalse
 %<*example>
 %\fi
@@ -8091,7 +8691,7 @@
 %\fi
 \begin{docCommand}{adjemptybox}
   {\oarg{txt}\oarg{bgclr}\oarg{frmclr}\oarg{txtclr}\oarg{wdth}\oarg{hght}}
-Like \cs{emptybox} but adjusts vertically to tightly surround text.
+Like \refCom{emptybox} but adjusts vertically to tightly surround text.
 \end{docCommand}
 \begin{dispExample}
 \adjemptybox[Lorem ipsum dolor sit amet, consectetuer adipiscing
@@ -8107,7 +8707,7 @@
 %\fi
 \begin{docCommand}{answerbox}
   {\oarg{txt}\oarg{bgclr}\oarg{frmclr}\oarg{txtclr}\oarg{wdth}\oarg{hght}}
-Wrapper for \cs{emptybox}.
+Wrapper for \refCom{emptybox}.
 \end{docCommand}
 \begin{dispExample}
 \answerbox[Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
@@ -8118,13 +8718,12 @@
 %</example>
 %\fi
 %
-%\newpage
 %\iffalse
 %<*example>
 %\fi
 \begin{docCommand}{adjanswerbox}
   {\oarg{txt}\oarg{bgclr}\oarg{frmclr}\oarg{txtclr}\oarg{wdth}\oarg{hght}}
-Wrapper for \cs{adjemptybox}.
+Wrapper for \refCom{adjemptybox}.
 \end{docCommand}
 \begin{dispExample}
 \adjanswerbox[Lorem ipsum dolor sit amet, consectetuer adipiscing
@@ -8251,7 +8850,6 @@
 %</example>
 %\fi
 %
-%\newpage
 %\changes{v2.4.2}{2015/06/08}{Added \cs{mediumanswerform}.}
 %\iffalse
 %<*example>
@@ -8330,7 +8928,6 @@
 %</example>
 %\fi
 %
-%\newpage
 %\changes{v2.4.2}{2015/06/08}{Added \cs{fullpageanswerform}.}
 %\iffalse
 %<*example>
@@ -8371,7 +8968,6 @@
 %</example>
 %\fi
 %
-%\newpage
 %\iffalse
 %<*example>
 %\fi
@@ -8395,7 +8991,6 @@
 %</example>
 %\fi
 %
-%\newpage
 %\changes{v2.5.0}{2015/10/14}{\cs{miderivation} now prints line numbers.}
 %\changes{v2.5.0}{2015/10/14}{Added \cs{miderivation*} to suppress line 
 %  numbers.}
@@ -8404,19 +8999,20 @@
 %\fi
 \begin{docEnvironment}{miderivation}{}
 Environment for mathematical derivations based on the |align| environment. 
-Use |miderivation*| to suppress line numbers. See |mysolution| for how to
-handle long lines in this environment.
+See \refEnv{mysolution} for how to handle long lines in this environment.
 \end{docEnvironment}
+\begin{docEnvironment}{miderivation*}{}
+Like \refEnv{miderivation} but suppresses line numbers.
+\end{docEnvironment}
 \begin{dispExample}
 \begin{miderivation}
-  \gamma &= \relgamma{\magvect{v}} 
-    && \text{given} \\
+  \gamma         &= \relgamma{\magvect{v}} && \text{given}               \\
   \gamma\squared &= \ooomx{\inparens{\frac{\magvect{v}}{c}}\squared}
-    &&\text{square both sides}\\
+    &&\text{square both sides}                                           \\
   \frac{1}{\gamma\squared} &= 1-\inparens{\frac{\magvect{v}}{c}}\squared
-    &&\text{reciprocal of both sides} \\
+    &&\text{reciprocal of both sides}                                    \\
   \inparens{\frac{\magvect{v}}{c}}\squared &= 1-\frac{1}{\gamma\squared}
-    &&\text{rearrange} \\
+    &&\text{rearrange}                                                   \\
   \frac{\magvect{v}}{c} &= \sqrt{1-\frac{1}{\gamma\squared}}
     &&\text{square root of both sides}
 \end{miderivation}
@@ -8425,12 +9021,11 @@
 %</example>
 %\fi
 %
-%\newpage
 %\iffalse
 %<*example>
 %\fi
 \begin{docEnvironment}{bwinstructornote}{}
-Like |miinstructornote| but in black and grey.
+Like \refEnv{miinstructornote} but in black and grey.
 \end{docEnvironment}
 \begin{dispExample}
 \begin{bwinstructornote}
@@ -8449,12 +9044,11 @@
 %</example>
 %\fi
 %
-%\newpage
 %\iffalse
 %<*example>
 %\fi
 \begin{docEnvironment}{bwstudentnote}{}
-Like |mistudentnote| but in black and grey.
+Like \refEnv{mistudentnote} but in black and grey.
 \end{docEnvironment}
 \begin{dispExample}
 \begin{bwstudentnote}
@@ -8473,7 +9067,6 @@
 %</example>
 %\fi
 %
-%\newpage
 %\changes{v2.5.0}{2015/10/14}{\cs{bwderivation} now shows line numbers.}
 %\changes{v2.5.0}{2015/10/14}{Added \cs{bwderivation*} to suppress line 
 %  numbers.}
@@ -8481,20 +9074,21 @@
 %<*example>
 %\fi
 \begin{docEnvironment}{bwderivation}{}
-Like |miderivation| but in black and grey. 
-Use |bwderivation*| to suppress line numbers. See |mysolution| for how to
-handle long lines in this environment.
+Like \refEnv{miderivation} but in black and grey. See \refEnv{mysolution} for 
+how to handle long lines in this environment.
 \end{docEnvironment}
+\begin{docEnvironment}{bwderivation*}{}
+Like \refEnv{bwderivation} but suppresses line numbers.
+\end{docEnvironment}
 \begin{dispExample}
 \begin{bwderivation}
-  \gamma &= \relgamma{\magvect{v}} 
-    && \text{given} \\
+  \gamma &= \relgamma{\magvect{v}} && \text{given}                       \\
   \gamma\squared &= \ooomx{\inparens{\frac{\magvect{v}}{c}}\squared}
-    &&\text{square both sides}\\
+    &&\text{square both sides}                                           \\
   \frac{1}{\gamma\squared} &= 1-\inparens{\frac{\magvect{v}}{c}}\squared
-    &&\text{reciprocal of both sides} \\
+    &&\text{reciprocal of both sides}                                    \\
   \inparens{\frac{\magvect{v}}{c}}\squared &= 1-\frac{1}{\gamma\squared}
-    &&\text{rearrange} \\
+    &&\text{rearrange}                                                   \\
   \frac{\magvect{v}}{c}&=\sqrt{1-\frac{1}{\gamma\squared}}
     &&\text{square root of both sides}
 \end{bwderivation}
@@ -8504,8 +9098,7 @@
 %\fi
 %
 %\changes{v2.5.0}{2015/10/14}{\cs{mysolution} now prints line numbers.}
-%\changes{v2.5.0}{2015/10/14}{Added \cs{mysolution*} to suppress line 
-%  numbers.}
+%\changes{v2.5.0}{2015/10/14}{Added \cs{mysolution*} to suppress line numbers.}
 %\changes{v2.5.0}{2016/01/26}{Added example showing how to handle long
 %  lines and suppressing numbers on broken lines.}
 %\iffalse
@@ -8513,35 +9106,86 @@
 %\fi
 \begin{docEnvironment}{mysolution}{}
 Alias for simple environment for mathematical derivations based on the 
-|align| environment. Use |mysolution*| to suppress line numbers. The second
-example shows how to handle long lines for this and the derivation environments.
+|align| environment. The second example shows how to handle long lines 
+for this and the derivation environments.
 \end{docEnvironment}
+\begin{docEnvironment}{mysolution*}{}
+Like \refEnv{mysolution} but suppresses line numbers.
+\end{docEnvironment}
 \begin{dispExample}
 \begin{mysolution}
-  \gamma &= \relgamma{\magvect{v}} 
-    && \text{given} \\
+  \gamma &= \relgamma{\magvect{v}}                  
+    && \text{given}                                                      \\
   \gamma\squared &= \ooomx{\inparens{\frac{\magvect{v}}{c}}\squared}
-    &&\text{square both sides}\\
+    &&\text{square both sides}                                           \\
   \frac{1}{\gamma\squared} &= 1-\inparens{\frac{\magvect{v}}{c}}\squared
-    &&\text{reciprocal of both sides} \\
+    &&\text{reciprocal of both sides}                                    \\
   \inparens{\frac{\magvect{v}}{c}}\squared &= 1-\frac{1}{\gamma\squared}
-    &&\text{rearrange} \\
+    &&\text{rearrange}                                                   \\
   \frac{\magvect{v}}{c} &= \sqrt{1-\frac{1}{\gamma\squared}}
     &&\text{square root of both sides}
 \end{mysolution}
-\begin{mysolution}
+\begin{mysolution*}
   \vect{E} &= \electricfield{\mivector{1,2,3}} + \electricfield{\mivector{2,4,6}}
-    \nonumber \\
+    \nonumber                                                                      \\
   &\hphantom{{}=\electricfield{\mivector{1,1,1}}}+\electricfield{\mivector{3,5,6}} 
-    &&\text{superposition}\\
+    &&\text{superposition}                                                         \\
   \vect{E} &= \electricfield{\mivector{2,3,4}} + \electricfield{\mivector{2,4,6}}  
-    \nonumber \\
+    \nonumber                                                                      \\
   &+ \electricfield{\mivector{1,1,1}} +\electricfield{\mivector{3,5,6}} 
-    &&\text{superposition again} \\
+    &&\text{superposition again}                                                   \\
   \vect{E} &= \electricfield{\mivector{2,3,4}} + \electricfield{\mivector{2,4,6}}
-    \nonumber \\
+    \nonumber                                                                      \\
   &\quad + \electricfield{\mivector{1,1,1}} +\electricfield{\mivector{3,5,6}} 
     && \text{more superposition}
+\end{mysolution*}
+\end{dispExample}
+%\iffalse
+%</example>
+%\fi
+%
+%\changes{v2.6.0}{2016/05/02}{Added \cs{problem} environment.}
+%\iffalse
+%<*example>
+%\fi
+\begin{docEnvironment}{problem}{\marg{problemname}}
+Creates a simple environment for \hypertarget{target1}{problem solutions}. This 
+environment is mainly for students. Each new problem starts on a new page in an 
+effort to force organization upon students. The environment also creates a new 
+|enumerate| environment called |parts| for which labels are alphabetic, 
+reflecting the organization of multipart textbook problems. The \cs{item} command 
+is renamed \cs{problempart} to, again, help with organization for newcomers to 
+\LaTeX. A typical example would be structured as follows.
+\end{docEnvironment}
+\begin{dispExample*}{sidebyside}
+\begin{problem}{Chapter 2 Problem 1}
+This problem has two parts.
+\begin{parts}
+  \problempart
+  This is the first part
+  \problempart
+  This is the second part
+\end{parts}
+\end{problem}
+\end{dispExample*}
+%\iffalse
+%</example>
+%\fi
+%
+%\changes{v2.6.0}{2016/05/02}{Added \cs{reason}.}
+%\iffalse
+%<*example>
+%\fi
+\begin{docCommand}{reason}{\marg{text}}
+In a \refEnv{mysolution} environment, this aligns the text arguments with the 
+end of the longest line and nicely handles line wrapping. Make sure your margins 
+are narrow enough. You may need to experiment.
+\end{docCommand}
+\begin{dispExample}
+\begin{mysolution}
+  c^2 &= a^2 + b^2 && \reason{given}      \\
+  a^2 &= c^2 - b^2 && \reason{Rearrange, and add some extra text just for fun.} \\
+  a &= \sqrt{c^2 - b^2} && \reason{Take square root of both sides.}
 \end{mysolution}
 \end{dispExample}
 %\iffalse
@@ -8620,6 +9264,7 @@
 \RequirePackage{array}
 \RequirePackage{cancel}
 \RequirePackage[dvipsnames]{xcolor}
+\RequirePackage{enumitem}
 \RequirePackage{environ}
 \RequirePackage{esint}
 \RequirePackage[g]{esvect}
@@ -8636,6 +9281,7 @@
 \RequirePackage[framemethod=TikZ]{mdframed}
 \RequirePackage{stackengine}
 \RequirePackage{suffix}
+\RequirePackage{tensor}
 \RequirePackage{xargs}
 \RequirePackage{xparse}
 \RequirePackage{xspace}
@@ -8642,6 +9288,7 @@
 \RequirePackage{ifthen}
 \RequirePackage{calligra}
 \RequirePackage{hyperref}
+\hypersetup{colorlinks=true,urlcolor=blue}
 \DeclareMathAlphabet{\mathcalligra}{T1}{calligra}{m}{n}
 \DeclareFontShape{T1}{calligra}{m}{n}{<->s*[2.2]callig15}{}
 \DeclareGraphicsRule{.tif}{png}{.png}{`convert #1 `basename #1 .tif`.png}
@@ -8681,7 +9328,7 @@
 \newcolumntype{C}[1]{>{\centering}m{#1}}
 \newboolean{@optromanvectors}
 \newboolean{@optboldvectors}
-\newboolean{@optsingleabsbars}
+\newboolean{@optsinglemagbars}
 \newboolean{@optbaseunits}
 \newboolean{@optdrvdunits}
 \newboolean{@optapproxconsts}
@@ -8688,7 +9335,7 @@
 \newboolean{@optuseradians}
 \setboolean{@optromanvectors}{false}   % this is where you set the default option
 \setboolean{@optboldvectors}{false}    % this is where you set the default option
-\setboolean{@optsingleabsbars}{false}  % this is where you set the default option
+\setboolean{@optsinglemagbars}{false}  % this is where you set the default option
 \setboolean{@optbaseunits}{false}      % this is where you set the default option
 \setboolean{@optdrvdunits}{false}      % this is where you set the default option
 \setboolean{@optapproxconsts}{false}   % this is where you set the default option
@@ -8695,7 +9342,7 @@
 \setboolean{@optuseradians}{false}     % this is where you set the default option
 \DeclareOption{romanvectors}{\setboolean{@optromanvectors}{true}}
 \DeclareOption{boldvectors}{\setboolean{@optboldvectors}{true}}
-\DeclareOption{singleabsbars}{\setboolean{@optsingleabsbars}{true}}
+\DeclareOption{singlemagbars}{\setboolean{@optsinglemagbars}{true}}
 \DeclareOption{baseunits}{\setboolean{@optbaseunits}{true}}
 \DeclareOption{drvdunits}{\setboolean{@optdrvdunits}{true}}
 \DeclareOption{approxconsts}{\setboolean{@optapproxconsts}{true}}
@@ -8704,7 +9351,7 @@
 %    \end{macrocode}
 %
 %    \begin{macrocode}
-\newcommand*{\mandiversion}{2.5.0}
+\newcommand*{\mandiversion}{2.6.0 dated 2016/06/29}
 \typeout{mandi: You're using mandi version \mandiversion.}
 %    \end{macrocode}
 %
@@ -8849,9 +9496,9 @@
   {\ifthenelse{\boolean{@optromanvectors}}
    {\typeout{mandi: You'll get Roman vectors.}}
    {\typeout{mandi: You'll get italic vectors.}}}
-\ifthenelse{\boolean{@optsingleabsbars}}
-  {\typeout{mandi: You'll get single absolute value bars.}}
-  {\typeout{mandi: You'll get double absolute value bars.}}
+\ifthenelse{\boolean{@optsinglemagbars}}
+  {\typeout{mandi: You'll get single magnitude bars.}}
+  {\typeout{mandi: You'll get double magnitude bars.}}
 \ifthenelse{\boolean{@optbaseunits}}
   {\perpusebaseunit %
    \typeout{mandi: You'll get base units.}}
@@ -9229,6 +9876,10 @@
   {\kg\usk\s\reciprocalcubed}%
   [\W\per\m\squared]%
   [\W\per\m\squared]
+\newphysicsquantity{momentumflux}%
+  {\reciprocal\m\usk\kg\usk\s\reciprocalsquared}%
+  [\N\per\m\squared]%
+  [\N\per\m\squared]
 \newphysicsquantity{electroncurrent}%
   {\reciprocal\s}%
   [\ensuremath{\mathrm{e}}\per\s]%
@@ -9273,7 +9924,34 @@
   {\m\usk\A}%
   [\m\usk\A]%
   [\m\usk\A]
-\newcommand*{\lv}{\ensuremath{\left\langle}}
+\newcommand*{\vectordisplacement}[1]{\ensuremath{\displacement{\mivector{#1}}}} 
+\newcommand*{\vectorvelocity}[1]{\ensuremath{\velocity{\mivector{#1}}}}
+\newcommand*{\vectorvelocityc}[1]{\ensuremath{\velocityc{\mivector{#1}}}}
+\newcommand*{\vectoracceleration}[1]{\ensuremath{\acceleration{\mivector{#1}}}}
+\newcommand*{\vectormomentum}[1]{\ensuremath{\momentum{\mivector{#1}}}}
+\newcommand*{\vectorforce}[1]{\ensuremath{\force{\mivector{#1}}}}
+\newcommand*{\vectorgravitationalfield}[1]
+  {\ensuremath{\gravitationalfield{\mivector{#1}}}}
+\newcommand*{\vectorimpulse}[1]{\ensuremath{\impulse{\mivector{#1}}}}
+\newcommand*{\vectorangularvelocity}[1]{\ensuremath{\angularvelocity{\mivector{#1}}}}
+\newcommand*{\vectorangularacceleration}[1]
+  {\ensuremath{\angularacceleration{\mivector{#1}}}}
+\newcommand*{\vectorangularmomentum}[1]{\ensuremath{\angularmomentum{\mivector{#1}}}}
+\newcommand*{\vectorangularimpulse}[1]{\ensuremath{\angularimpulse{\mivector{#1}}}}
+\newcommand*{\vectortorque}[1]{\ensuremath{\torque{\mivector{#1}}}}
+\newcommand*{\vectorwavenumber}[1]{\ensuremath{\wavenumber{\mivector{#1}}}}
+\newcommand*{\vectorelectricfield}[1]{\ensuremath{\electricfield{\mivector{#1}}}}
+\newcommand*{\vectorelectricdipolemoment}[1]
+  {\ensuremath{\electricdipolemoment{\mivector{#1}}}}
+\newcommand*{\vectormagneticfield}[1]{\ensuremath{\magneticfield{\mivector{#1}}}}
+\newcommand*{\vectorcmagneticfield}[1]{\ensuremath{\cmagneticfield{\mivector{#1}}}}
+\newcommand*{\vectormagneticdipolemoment}[1]
+  {\ensuremath{\magneticdipolemoment{\mivector{#1}}}}
+\newcommand*{\vectorcurrentdensity}[1]{\ensuremath{\currentdensity{\mivector{#1}}}}
+  \newcommand*{\lv}{\ensuremath{\left\langle}}
+\newcommand*{\vectorenergyflux}[1]{\ensuremath{\energyflux{\mivector{#1}}}}
+\newcommand*{\vectormomentumflux}[1]{\ensuremath{\momentumflux{\mivector{#1}}}}
+\newcommand*{\poyntingvector}{\vectorenergyflux}
 \newcommand*{\rv}{\ensuremath{\right\rangle}}
 \ExplSyntaxOn % Written in LaTeX3
 \NewDocumentCommand{\magvectncomps}{ m O{} }
@@ -9301,13 +9979,12 @@
 \ExplSyntaxOff
 %
 \newcommand*{\zerovect}{\vect{0}}
-\newcommand*{\ncompszerovect}{\mivector{0,0,0}}
 \ifthenelse{\boolean{@optboldvectors}}
   {\newcommand*{\vect}[1]{\ensuremath{\boldsymbol{#1}}}}
   {\ifthenelse{\boolean{@optromanvectors}}
    {\newcommand*{\vect}[1]{\ensuremath{\vv{\mathrm{#1}}}}}
    {\newcommand*{\vect}[1]{\ensuremath{\vv{#1}}}}}
-\ifthenelse{\boolean{@optsingleabsbars}}
+\ifthenelse{\boolean{@optsinglemagbars}}
   {\newcommand*{\magvect}[1]{\ensuremath{\absof{\vect{#1}}}}}
   {\newcommand*{\magvect}[1]{\ensuremath{\magof{\vect{#1}}}}}
 \newcommand*{\magsquaredvect}[1]{\ensuremath{\magvect{#1}\squared}}
@@ -9319,7 +9996,8 @@
   {\ifthenelse{\boolean{@optromanvectors}}
    {\newcommand*{\dirvect}[1]{\ensuremath{\widehat{\mathrm{#1}}}}}
    {\newcommand*{\dirvect}[1]{\ensuremath{\widehat{#1}}}}}
-\newcommand*{\direction}{\dirvect}
+\newcommand*{\direction}[1]{\ensuremath{\mivector{#1}}}
+\newcommand*{\vectordirection}{\direction}
 \newcommand*{\componentalong}[2]{\ensuremath{\mathrm{comp}_{#1}{#2}}}
 \newcommand*{\expcomponentalong}[2]{\ensuremath{\frac{\vectdotvect{#2}{#1}}
 {\magof{#1}}}}
@@ -9357,7 +10035,7 @@
 \newcommand*{\ddirection}{\ddirvect}
 \newcommand*{\Ddirvect}[1]{\ensuremath{\Delta\dirvect{#1}}}
 \newcommand*{\Ddirection}{\Ddirvect}
-\ifthenelse{\boolean{@optsingleabsbars}}
+\ifthenelse{\boolean{@optsinglemagbars}}
   {\newcommand*{\magdvect}[1]{\ensuremath{\absof{\dvect{#1}}}}
    \newcommand*{\magDvect}[1]{\ensuremath{\absof{\Dvect{#1}}}}}
   {\newcommand*{\magdvect}[1]{\ensuremath{\magof{\dvect{#1}}}}
@@ -9384,7 +10062,7 @@
   \compDervect{#1}{x}{#2},%
   \compDervect{#1}{y}{#2},%
   \compDervect{#1}{z}{#2}\rv}}
-\ifthenelse{\boolean{@optsingleabsbars}}
+\ifthenelse{\boolean{@optsinglemagbars}}
   {\newcommand*{\magdervect}[2]{\ensuremath{\absof{\dervect{#1}{#2}}}}
    \newcommand*{\magDervect}[2]{\ensuremath{\absof{\Dervect{#1}{#2}}}}}
   {\newcommand*{\magdervect}[2]{\ensuremath{\magof{\dervect{#1}{#2}}}}
@@ -9407,7 +10085,7 @@
   \compvectsub{#1}{#2}{x},%
   \compvectsub{#1}{#2}{y},%
   \compvectsub{#1}{#2}{z}\rv}}
-\ifthenelse{\boolean{@optsingleabsbars}}
+\ifthenelse{\boolean{@optsinglemagbars}}
   {\newcommand*{\magvectsub}[2]{\ensuremath{\absof{\vectsub{#1}{#2}}}}}
   {\newcommand*{\magvectsub}[2]{\ensuremath{\magof{\vectsub{#1}{#2}}}}}
 \newcommand*{\magsquaredvectsub}[2]{\ensuremath{\magvectsub{#1}{#2}\squared}}
@@ -9436,7 +10114,7 @@
 \newcommand*{\Dermagvectsub}[3]{\ensuremath{\DbyD{\magvectsub{#1}{#2}}{#3}}}
 \newcommand*{\dervectsub}[3]{\ensuremath{\dbyd{\vectsub{#1}{#2}}{#3}}}
 \newcommand*{\Dervectsub}[3]{\ensuremath{\DbyD{\vectsub{#1}{#2}}{#3}}}
-\ifthenelse{\boolean{@optsingleabsbars}}
+\ifthenelse{\boolean{@optsinglemagbars}}
   {\newcommand*{\magdervectsub}[3]{\ensuremath{\absof{\dervectsub{#1}{#2}{#3}}}}
    \newcommand*{\magDervectsub}[3]{\ensuremath{\absof{\Dervectsub{#1}{#2}{#3}}}}}
   {\newcommand*{\magdervectsub}[3]{\ensuremath{\magof{\dervectsub{#1}{#2}{#3}}}}
@@ -10105,10 +10783,9 @@
 \newcommand*{\sumoverall}[1]{\ensuremath{\displaystyle
   \sum_{\substack{\text{\tiny{all }}\text{\tiny{{#1}}}}}}}
 \newcommand*{\dx}[1]{\ensuremath{\,\mathrm{d}{#1}}}
-\newcommand*{\evalfromto}[3]{\ensuremath{%
-  \Bigg.{#1}\Bigg\rvert_{#2}^{#3}}}
-\newcommand*{\evalat}[2]{\ensuremath{\Bigg.{#1}\Bigg\rvert_{#2}}}
-\newcommand*{\evaluatedat}[1]{\ensuremath{\Bigg.\Bigg\rvert_{#1}}}
+\newcommandx{\evaluatedfromto}[2][2,usedefault]{\ensuremath{%
+  \Bigg.\Bigg\rvert_{#1}^{#2}}}
+\newcommand*{\evaluatedat}{\evaluatedfromto}
 \newcommandx{\integral}[4][1,2,usedefault]{\ensuremath{%
   \int_{\ifthenelse{\equal{#1}{}}{}{#4=#1}}^{\ifthenelse{%
     \equal{#2}{}}{}{#4=#2}}}{#3}\dx{#4}}
@@ -10209,21 +10886,17 @@
 \newcommand*{\Lagr}{\ensuremath{\mathcal{L}}}
 \newcommandx{\flux}[1][1]{\ensuremath{\ssub{\Phi}{#1}}}
 \newcommand*{\absof}[1]{\ensuremath{%
-  \left\lvert{\ifblank{#1}{\:\cdot\:}{#1}}\right\rvert}}
+  \left\lvert{\ifblank{#1}{\:\_\:}{#1}}\right\rvert}}
 \newcommand*{\inparens}[1]{\ensuremath{%
-  \left({\ifblank{#1}{\:\cdot\:}{#1}}\right)}}
+  \left({\ifblank{#1}{\:\_\:}{#1}}\right)}}
 \newcommand*{\magof}[1]{\ensuremath{%
-  \left\lVert{\ifblank{#1}{\:\cdot\:}{#1}}\right\rVert}}
+  \left\lVert{\ifblank{#1}{\:\_\:}{#1}}\right\rVert}}
 \newcommand*{\dimsof}[1]{\ensuremath{%
-  \left[{\ifblank{#1}{\:\cdot\:}{#1}}\right]}}
+  \left[{\ifblank{#1}{\:\_\:}{#1}}\right]}}
 \newcommand*{\unitsof}[1]{\ensuremath{%
-  \left[{\ifblank{#1}{\:\cdot\:}{#1}}\right]_u}}
+  \left[{\ifblank{#1}{\:\_\:}{#1}}\right]_u}}
 \newcommand*{\changein}[1]{\ensuremath{\delta{#1}}}
 \newcommand*{\Changein}[1]{\ensuremath{\Delta{#1}}}
-\newcommandx{\scin}[3][1,3=\!\!,usedefault]{\ensuremath{%
-  \ifthenelse{\equal{#1}{}}
-    {\unit{10^{#2}}{#3}}
-    {\unit{{#1}\times 10^{#2}}{#3}}}}
 \newcommandx{\timestento}[2][2=\!\!,usedefault]{\ensuremath{%
   \ifthenelse{\equal{#2}{}}
     {\unit{\;\times\;10^{#1}}{}}
@@ -10318,6 +10991,47 @@
   \xLongleftarrow[\text{\tiny{#1}}]{}}}
 \newcommand*{\brelatedto}[2]{\ensuremath{%
   \xLongleftrightarrow[\text{\tiny{#1}}]{\text{\tiny{#2}}}}}
+\newcommand*{\genericinteractionplaces}[5]{\ensuremath{\inparens{#1}
+  \frac{\inparens{#2}\inparens{#3}}{\inparens{#4}^2}{{\ifblank{#5}{%
+  \mivector{\_ , \_ , \_}}{#5}}}}}
+\newcommand*{\genericfieldofparticleplaces}[4]{\ensuremath{\inparens{#1}
+  \frac{\inparens{#2}}{\inparens{#3}^2}{{\ifblank{#4}{\mivector{\_ , \_ , \_}}{#4}}}}}
+\newcommand*{\genericpotentialenergyplaces}[4]{\ensuremath{%
+  \inparens{#1}\frac{\inparens{#2}\inparens{#3}}{\inparens{#4}}}}
+\newcommand*{\genericelectricdipoleplaces}[5]{%
+  \ensuremath{\inparens{#1}\frac{\inparens{#2}\inparens{#3}}{\inparens{#4}^3}%
+  {{\ifblank{#5}{\mivector{\_ , \_ , \_}}{#5}}}}}
+\newcommand*{\genericelectricdipoleonaxisplaces}[5]{%
+  \ensuremath{\inparens{#1}\frac{2\inparens{#2}\inparens{#3}}{\inparens{#4}^3}%
+  {{\ifblank{#5}{\mivector{\_ , \_ , \_}}{#5}}}}}
+\newcommand*{\gfieldofparticle}{\ensuremath{\universalgravmathsymbol\frac{M}%
+  {\magsquaredvect{r}}\inparens{-\dirvect{r}}}}
+\newcommand*{\gravitationalinteractionplaces}[4]{%
+  \genericinteractionplaces{\universalgrav}{#1}{#2}{#3}{#4}}
+\newcommand*{\gfieldofparticleplaces}[3]{%
+  \genericfieldofparticleplaces{\universalgrav}{#1}{#2}{#3}}
+\newcommand*{\electricinteractionplaces}[4]{%
+  \genericinteractionplaces{\oofpez}{#1}{#2}{#3}{#4}}
+\newcommand*{\Efieldofparticleplaces}[3]{%
+  \genericfieldofparticleplaces{\oofpez}{#1}{#2}{#3}}
+\newcommand*{\Bfieldofparticleplaces}[5]{\ensuremath{\inparens{\mzofp}%
+  \frac{\inparens{#1}\inparens{#2}}{\inparens{#3}^2}{{\ifblank{#4}{%
+  \mivector{\_ , \_ , \_}}{#4}}}\times{{\ifblank{#5}{\mivector{\_ , \_ , \_}}{#5}}}}}
+\newcommand*{\springinteractionplaces}[3]{\ensuremath{\inparens{#1}
+  \inparens{#2}{{\ifblank{#3}{\mivector{\_ , \_ , \_}}{#3}}}}}
+\newcommand*{\gravitationalpotentialenergyplaces}[3]{%
+  -\genericpotentialenergyplaces{\universalgrav}{#1}{#2}{#3}}
+\newcommand*{\electricpotentialenergyplaces}[3]{%
+  \genericpotentialenergyplaces{\oofpez}{#1}{#2}{#3}}
+\newcommand*{\springpotentialenergyplaces}[2]{\ensuremath{%
+  \onehalf\inparens{#1}\inparens{#2}^2}}
+\newcommand*{\electricdipoleonaxisplaces}[4]{%
+  \genericelectricdipoleonaxisplaces{\oofpez}{\absof{#1}}{#2}{#3}{{\ifblank{#4}{%
+  \mivector{\_ , \_ , \_}}{#4}}}}
+\newcommand*{\electricdipoleonbisectorplaces}[4]{%
+  \genericelectricdipoleplaces{\oofpez}{\absof{#1}}{#2}{#3}{{\ifblank{#4}{%
+  \mivector{\_ , \_ , \_}}{#4}}}}
+\newcommand{\define}[2]{\newcommand{#1}{#2}}
 \newcommand*{\momentumprinciple}{\ensuremath{%
   \vectsub{p}{sys,final}=\vectsub{p}{sys,initial}+\Fnetsys\Delta t}}
 \newcommand*{\LHSmomentumprinciple}{\ensuremath{\vectsub{p}{sys,final}}}
@@ -10346,10 +11060,10 @@
   \dirvectsub{r}{12}}}
 \newcommand*{\springinteraction}{\ensuremath{\ks\magvect{s}(-\dirvect{s})}}
 \newcommand*{\Bfieldofparticle}{\ensuremath{%
-  \mzofpmathsymbol\frac{Q\magvect{v}}{\magvect{r}\squared}\dirvect{v}\times
+  \mzofpmathsymbol\frac{Q\magvect{v}}{\magsquaredvect{r}}\dirvect{v}\times
   \dirvect{r}}}
 \newcommand*{\Efieldofparticle}{\ensuremath{%
-  \oofpezmathsymbol\frac{Q}{\magvect{r}\squared}\dirvect{r}}}
+  \oofpezmathsymbol\frac{Q}{\magsquaredvect{r}}\dirvect{r}}}
 \newcommandx{\Esys}[1][1]{\ifthenelse{%
   \equal{#1}{}}{\ssub{E}{sys}}{\ssub{E}{sys,#1}}}
 \newcommandx{\Us}[1][1]{\ifthenelse{%
@@ -10526,8 +11240,12 @@
 \newcommandx{\Eulerlagrange}[1][1={q_i},usedefault]{\ensuremath{%
   \DbyD{\mathcal{L}}{#1}-\DbyDt\inparens{\DbyD{\mathcal{L}}{\dot{#1}}} = 0}}
 \newcommand*{\vpythonline}{\lstinline[style=vpython]}
+\newcommand*{\glowscriptline}{\lstinline[style=vpython]}
 \lstnewenvironment{vpythonblock}[1][]{\lstset{style=vpython,caption={#1}}}{}
+\lstnewenvironment{glowscriptblock}[1][]{\lstset{style=vpython,caption={#1}}}{}
 \newcommand*{\vpythonfile}[1][]{\newpage\lstinputlisting[style=vpython,caption={#1}]}
+\newcommand*{\glowscriptfile}[1][]{%
+  \newpage\lstinputlisting[style=vpython,caption={#1}]}
 \newcommandx{\emptyanswer}[2][1=0.80,2=0.1,usedefault]
   {\begin{minipage}{#1\textwidth}\hfill\vspace{#2\textheight}\end{minipage}}
 \newenvironmentx{activityanswer}[5][1=white,2=black,3=black,4=0.90,%
@@ -10903,6 +11621,13 @@
     \BODY
   \end{align*}
 }%
+\newenvironment{problem}[1]{%
+  \newpage%
+  \section*{#1}%
+  \newlist{parts}{enumerate}{2}%
+  \setlist[parts]{label=(\alph*)}}{\newpage}
+\newcommand{\problempart}{\item}%
+\newcommand{\reason}[1]{\parbox{2cm}{#1}}
 \newcommand*{\checkpoint}{%
   \vspace{1cm}\begin{center}%
     \colorbox{yellow!80}{|--------- CHECKPOINT ---------|}%
@@ -10917,7 +11642,7 @@
   \end{figure}}
 %\changes{v2.5.0}{2015/09/13}{Changed behavior of \cs{sneakyone}.}
 \newcommand*{\sneakyone}[1]{\ensuremath{\cancelto{1}{#1}}}
-% undocumented diagnostic command
+\newcommand*{\qed}{\ensuremath{\text{ Q.E.D.}}}
 \newcommand*{\chkquantity}[1]{%
   \begin{center}
     \begin{tabular}{C{4.5cm} C{4cm} C{4cm} C{4cm}}
@@ -10927,8 +11652,6 @@
     \end{tabular}
   \end{center}
 }%
-\newcommand*{\qed}{\ensuremath{\text{ Q.E.D.}}}
-% undocumented diagnostic command
 \newcommand*{\chkconstant}[1]{%
   \begin{center}
     \begin{tabular}{C{4cm} C{2cm} C{3cm} C{3cm} C{3cm} C{3cm}}
@@ -10947,7 +11670,8 @@
 % Scharrer for his \texttt{sty2dtx.pl} utility, which saved me days of typing. 
 % Special thanks also to Herbert Schulz for his custom \texttt{dtx} engine for 
 % \texttt{TeXShop}. Very special thanks to Ulrich Diez for providing the mechanism 
-% that defines physics quantities and constants.
+% that defines physics quantities and constants. Also very special thanks to 
+% student who helped test recent version of this package.
 %
 % \iffalse
 %</package>

Modified: trunk/Master/texmf-dist/source/latex/mandi/mandi.ins
===================================================================
--- trunk/Master/texmf-dist/source/latex/mandi/mandi.ins	2016-06-30 18:16:10 UTC (rev 41579)
+++ trunk/Master/texmf-dist/source/latex/mandi/mandi.ins	2016-06-30 21:01:17 UTC (rev 41580)
@@ -19,13 +19,13 @@
 %% 
 %% The Current Maintainer of this work is Paul J. Heafner.
 %% 
-%% This work consists of the files mandi.dtx
-%%                                 README
-%%                                 mandi.pdf
+%%  This work consists of the files mandi.dtx
+%%                                  mandi.ins
+%%                                  mandi.pdf
+%%                                  README
 %% 
-%% and includes the derived files  mandi.ins
-%%                                 mandi.sty and
-%%                                 vdemo.py.
+%%  and includes the derived files  mandi.sty
+%%                                  vdemo.py.
 %% ---------------------------------------------------------------------------
 %% 
 \input docstrip.tex
@@ -47,19 +47,18 @@
 
 The Current Maintainer of this work is Paul J. Heafner.
 
-This work consists of the files mandi.dtx
-                                README
-                                mandi.pdf
+ This work consists of the files mandi.dtx
+                                 mandi.ins
+                                 mandi.pdf
+                                 README
 
-and includes the derived files  mandi.ins
-                                mandi.sty and
-                                vdemo.py.
+ and includes the derived files  mandi.sty
+                                 vdemo.py.
 ---------------------------------------------------------------------------
 
 \endpreamble
 
 \generate{\file{\jobname.sty}{\from{\jobname.dtx}{package}}}
-\generate{\file{\jobname.ins}{\from{\jobname.dtx}{install}}}
 \generate{\usepreamble\empty\usepostamble\empty
           \file{vdemo.py}{\from{\jobname.dtx}{vdemo}}}
 
@@ -72,7 +71,7 @@
 \Msg{*     mandi.sty                                             *}
 \Msg{*                                                           *}
 \Msg{* To produce the documentation run the file mandi.dtx       *}
-\Msg{* through (pdf)LaTeX.                                       *}
+\Msg{* through pdfLaTeX.                                         *}
 \Msg{*                                                           *}
 \Msg{*************************************************************}
 \endbatchfile

Modified: trunk/Master/texmf-dist/tex/latex/mandi/mandi.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/mandi/mandi.sty	2016-06-30 18:16:10 UTC (rev 41579)
+++ trunk/Master/texmf-dist/tex/latex/mandi/mandi.sty	2016-06-30 21:01:17 UTC (rev 41580)
@@ -19,16 +19,16 @@
 %% 
 %% The Current Maintainer of this work is Paul J. Heafner.
 %% 
-%% This work consists of the files mandi.dtx
-%%                                 README
-%%                                 mandi.pdf
+%%  This work consists of the files mandi.dtx
+%%                                  mandi.ins
+%%                                  mandi.pdf
+%%                                  README
 %% 
-%% and includes the derived files  mandi.ins
-%%                                 mandi.sty and
-%%                                 vdemo.py.
+%%  and includes the derived files  mandi.sty
+%%                                  vdemo.py.
 %% ---------------------------------------------------------------------------
 %% 
-\ProvidesPackage{mandi}[2016/03/15 2.5.1 Macros for physics and astronomy]
+\ProvidesPackage{mandi}[2016/06/29 2.6.0 Macros for physics and astronomy]
 \NeedsTeXFormat{LaTeX2e}[1999/12/01]
 
 \RequirePackage{amsmath}
@@ -36,6 +36,7 @@
 \RequirePackage{array}
 \RequirePackage{cancel}
 \RequirePackage[dvipsnames]{xcolor}
+\RequirePackage{enumitem}
 \RequirePackage{environ}
 \RequirePackage{esint}
 \RequirePackage[g]{esvect}
@@ -52,6 +53,7 @@
 \RequirePackage[framemethod=TikZ]{mdframed}
 \RequirePackage{stackengine}
 \RequirePackage{suffix}
+\RequirePackage{tensor}
 \RequirePackage{xargs}
 \RequirePackage{xparse}
 \RequirePackage{xspace}
@@ -58,6 +60,7 @@
 \RequirePackage{ifthen}
 \RequirePackage{calligra}
 \RequirePackage{hyperref}
+\hypersetup{colorlinks=true,urlcolor=blue}
 \DeclareMathAlphabet{\mathcalligra}{T1}{calligra}{m}{n}
 \DeclareFontShape{T1}{calligra}{m}{n}{<->s*[2.2]callig15}{}
 \DeclareGraphicsRule{.tif}{png}{.png}{`convert #1 `basename #1 .tif`.png}
@@ -97,7 +100,7 @@
 \newcolumntype{C}[1]{>{\centering}m{#1}}
 \newboolean{@optromanvectors}
 \newboolean{@optboldvectors}
-\newboolean{@optsingleabsbars}
+\newboolean{@optsinglemagbars}
 \newboolean{@optbaseunits}
 \newboolean{@optdrvdunits}
 \newboolean{@optapproxconsts}
@@ -104,7 +107,7 @@
 \newboolean{@optuseradians}
 \setboolean{@optromanvectors}{false}   % this is where you set the default option
 \setboolean{@optboldvectors}{false}    % this is where you set the default option
-\setboolean{@optsingleabsbars}{false}  % this is where you set the default option
+\setboolean{@optsinglemagbars}{false}  % this is where you set the default option
 \setboolean{@optbaseunits}{false}      % this is where you set the default option
 \setboolean{@optdrvdunits}{false}      % this is where you set the default option
 \setboolean{@optapproxconsts}{false}   % this is where you set the default option
@@ -111,13 +114,13 @@
 \setboolean{@optuseradians}{false}     % this is where you set the default option
 \DeclareOption{romanvectors}{\setboolean{@optromanvectors}{true}}
 \DeclareOption{boldvectors}{\setboolean{@optboldvectors}{true}}
-\DeclareOption{singleabsbars}{\setboolean{@optsingleabsbars}{true}}
+\DeclareOption{singlemagbars}{\setboolean{@optsinglemagbars}{true}}
 \DeclareOption{baseunits}{\setboolean{@optbaseunits}{true}}
 \DeclareOption{drvdunits}{\setboolean{@optdrvdunits}{true}}
 \DeclareOption{approxconsts}{\setboolean{@optapproxconsts}{true}}
 \DeclareOption{useradians}{\setboolean{@optuseradians}{true}}
 \ProcessOptions\relax
-\newcommand*{\mandiversion}{2.5.0}
+\newcommand*{\mandiversion}{2.6.0 dated 2016/06/29}
 \typeout{mandi: You're using mandi version \mandiversion.}
 \@ifpackageloaded{amssymb}{%
   \csundef{square}
@@ -242,9 +245,9 @@
   {\ifthenelse{\boolean{@optromanvectors}}
    {\typeout{mandi: You'll get Roman vectors.}}
    {\typeout{mandi: You'll get italic vectors.}}}
-\ifthenelse{\boolean{@optsingleabsbars}}
-  {\typeout{mandi: You'll get single absolute value bars.}}
-  {\typeout{mandi: You'll get double absolute value bars.}}
+\ifthenelse{\boolean{@optsinglemagbars}}
+  {\typeout{mandi: You'll get single magnitude bars.}}
+  {\typeout{mandi: You'll get double magnitude bars.}}
 \ifthenelse{\boolean{@optbaseunits}}
   {\perpusebaseunit %
    \typeout{mandi: You'll get base units.}}
@@ -587,6 +590,10 @@
   {\kg\usk\s\reciprocalcubed}%
   [\W\per\m\squared]%
   [\W\per\m\squared]
+\newphysicsquantity{momentumflux}%
+  {\reciprocal\m\usk\kg\usk\s\reciprocalsquared}%
+  [\N\per\m\squared]%
+  [\N\per\m\squared]
 \newphysicsquantity{electroncurrent}%
   {\reciprocal\s}%
   [\ensuremath{\mathrm{e}}\per\s]%
@@ -631,7 +638,34 @@
   {\m\usk\A}%
   [\m\usk\A]%
   [\m\usk\A]
-\newcommand*{\lv}{\ensuremath{\left\langle}}
+\newcommand*{\vectordisplacement}[1]{\ensuremath{\displacement{\mivector{#1}}}}
+\newcommand*{\vectorvelocity}[1]{\ensuremath{\velocity{\mivector{#1}}}}
+\newcommand*{\vectorvelocityc}[1]{\ensuremath{\velocityc{\mivector{#1}}}}
+\newcommand*{\vectoracceleration}[1]{\ensuremath{\acceleration{\mivector{#1}}}}
+\newcommand*{\vectormomentum}[1]{\ensuremath{\momentum{\mivector{#1}}}}
+\newcommand*{\vectorforce}[1]{\ensuremath{\force{\mivector{#1}}}}
+\newcommand*{\vectorgravitationalfield}[1]
+  {\ensuremath{\gravitationalfield{\mivector{#1}}}}
+\newcommand*{\vectorimpulse}[1]{\ensuremath{\impulse{\mivector{#1}}}}
+\newcommand*{\vectorangularvelocity}[1]{\ensuremath{\angularvelocity{\mivector{#1}}}}
+\newcommand*{\vectorangularacceleration}[1]
+  {\ensuremath{\angularacceleration{\mivector{#1}}}}
+\newcommand*{\vectorangularmomentum}[1]{\ensuremath{\angularmomentum{\mivector{#1}}}}
+\newcommand*{\vectorangularimpulse}[1]{\ensuremath{\angularimpulse{\mivector{#1}}}}
+\newcommand*{\vectortorque}[1]{\ensuremath{\torque{\mivector{#1}}}}
+\newcommand*{\vectorwavenumber}[1]{\ensuremath{\wavenumber{\mivector{#1}}}}
+\newcommand*{\vectorelectricfield}[1]{\ensuremath{\electricfield{\mivector{#1}}}}
+\newcommand*{\vectorelectricdipolemoment}[1]
+  {\ensuremath{\electricdipolemoment{\mivector{#1}}}}
+\newcommand*{\vectormagneticfield}[1]{\ensuremath{\magneticfield{\mivector{#1}}}}
+\newcommand*{\vectorcmagneticfield}[1]{\ensuremath{\cmagneticfield{\mivector{#1}}}}
+\newcommand*{\vectormagneticdipolemoment}[1]
+  {\ensuremath{\magneticdipolemoment{\mivector{#1}}}}
+\newcommand*{\vectorcurrentdensity}[1]{\ensuremath{\currentdensity{\mivector{#1}}}}
+  \newcommand*{\lv}{\ensuremath{\left\langle}}
+\newcommand*{\vectorenergyflux}[1]{\ensuremath{\energyflux{\mivector{#1}}}}
+\newcommand*{\vectormomentumflux}[1]{\ensuremath{\momentumflux{\mivector{#1}}}}
+\newcommand*{\poyntingvector}{\vectorenergyflux}
 \newcommand*{\rv}{\ensuremath{\right\rangle}}
 \ExplSyntaxOn % Written in LaTeX3
 \NewDocumentCommand{\magvectncomps}{ m O{} }
@@ -658,13 +692,12 @@
   }%
 \ExplSyntaxOff
 \newcommand*{\zerovect}{\vect{0}}
-\newcommand*{\ncompszerovect}{\mivector{0,0,0}}
 \ifthenelse{\boolean{@optboldvectors}}
   {\newcommand*{\vect}[1]{\ensuremath{\boldsymbol{#1}}}}
   {\ifthenelse{\boolean{@optromanvectors}}
    {\newcommand*{\vect}[1]{\ensuremath{\vv{\mathrm{#1}}}}}
    {\newcommand*{\vect}[1]{\ensuremath{\vv{#1}}}}}
-\ifthenelse{\boolean{@optsingleabsbars}}
+\ifthenelse{\boolean{@optsinglemagbars}}
   {\newcommand*{\magvect}[1]{\ensuremath{\absof{\vect{#1}}}}}
   {\newcommand*{\magvect}[1]{\ensuremath{\magof{\vect{#1}}}}}
 \newcommand*{\magsquaredvect}[1]{\ensuremath{\magvect{#1}\squared}}
@@ -676,7 +709,8 @@
   {\ifthenelse{\boolean{@optromanvectors}}
    {\newcommand*{\dirvect}[1]{\ensuremath{\widehat{\mathrm{#1}}}}}
    {\newcommand*{\dirvect}[1]{\ensuremath{\widehat{#1}}}}}
-\newcommand*{\direction}{\dirvect}
+\newcommand*{\direction}[1]{\ensuremath{\mivector{#1}}}
+\newcommand*{\vectordirection}{\direction}
 \newcommand*{\componentalong}[2]{\ensuremath{\mathrm{comp}_{#1}{#2}}}
 \newcommand*{\expcomponentalong}[2]{\ensuremath{\frac{\vectdotvect{#2}{#1}}
 {\magof{#1}}}}
@@ -714,7 +748,7 @@
 \newcommand*{\ddirection}{\ddirvect}
 \newcommand*{\Ddirvect}[1]{\ensuremath{\Delta\dirvect{#1}}}
 \newcommand*{\Ddirection}{\Ddirvect}
-\ifthenelse{\boolean{@optsingleabsbars}}
+\ifthenelse{\boolean{@optsinglemagbars}}
   {\newcommand*{\magdvect}[1]{\ensuremath{\absof{\dvect{#1}}}}
    \newcommand*{\magDvect}[1]{\ensuremath{\absof{\Dvect{#1}}}}}
   {\newcommand*{\magdvect}[1]{\ensuremath{\magof{\dvect{#1}}}}
@@ -741,7 +775,7 @@
   \compDervect{#1}{x}{#2},%
   \compDervect{#1}{y}{#2},%
   \compDervect{#1}{z}{#2}\rv}}
-\ifthenelse{\boolean{@optsingleabsbars}}
+\ifthenelse{\boolean{@optsinglemagbars}}
   {\newcommand*{\magdervect}[2]{\ensuremath{\absof{\dervect{#1}{#2}}}}
    \newcommand*{\magDervect}[2]{\ensuremath{\absof{\Dervect{#1}{#2}}}}}
   {\newcommand*{\magdervect}[2]{\ensuremath{\magof{\dervect{#1}{#2}}}}
@@ -764,7 +798,7 @@
   \compvectsub{#1}{#2}{x},%
   \compvectsub{#1}{#2}{y},%
   \compvectsub{#1}{#2}{z}\rv}}
-\ifthenelse{\boolean{@optsingleabsbars}}
+\ifthenelse{\boolean{@optsinglemagbars}}
   {\newcommand*{\magvectsub}[2]{\ensuremath{\absof{\vectsub{#1}{#2}}}}}
   {\newcommand*{\magvectsub}[2]{\ensuremath{\magof{\vectsub{#1}{#2}}}}}
 \newcommand*{\magsquaredvectsub}[2]{\ensuremath{\magvectsub{#1}{#2}\squared}}
@@ -793,7 +827,7 @@
 \newcommand*{\Dermagvectsub}[3]{\ensuremath{\DbyD{\magvectsub{#1}{#2}}{#3}}}
 \newcommand*{\dervectsub}[3]{\ensuremath{\dbyd{\vectsub{#1}{#2}}{#3}}}
 \newcommand*{\Dervectsub}[3]{\ensuremath{\DbyD{\vectsub{#1}{#2}}{#3}}}
-\ifthenelse{\boolean{@optsingleabsbars}}
+\ifthenelse{\boolean{@optsinglemagbars}}
   {\newcommand*{\magdervectsub}[3]{\ensuremath{\absof{\dervectsub{#1}{#2}{#3}}}}
    \newcommand*{\magDervectsub}[3]{\ensuremath{\absof{\Dervectsub{#1}{#2}{#3}}}}}
   {\newcommand*{\magdervectsub}[3]{\ensuremath{\magof{\dervectsub{#1}{#2}{#3}}}}
@@ -1462,10 +1496,9 @@
 \newcommand*{\sumoverall}[1]{\ensuremath{\displaystyle
   \sum_{\substack{\text{\tiny{all }}\text{\tiny{{#1}}}}}}}
 \newcommand*{\dx}[1]{\ensuremath{\,\mathrm{d}{#1}}}
-\newcommand*{\evalfromto}[3]{\ensuremath{%
-  \Bigg.{#1}\Bigg\rvert_{#2}^{#3}}}
-\newcommand*{\evalat}[2]{\ensuremath{\Bigg.{#1}\Bigg\rvert_{#2}}}
-\newcommand*{\evaluatedat}[1]{\ensuremath{\Bigg.\Bigg\rvert_{#1}}}
+\newcommandx{\evaluatedfromto}[2][2,usedefault]{\ensuremath{%
+  \Bigg.\Bigg\rvert_{#1}^{#2}}}
+\newcommand*{\evaluatedat}{\evaluatedfromto}
 \newcommandx{\integral}[4][1,2,usedefault]{\ensuremath{%
   \int_{\ifthenelse{\equal{#1}{}}{}{#4=#1}}^{\ifthenelse{%
     \equal{#2}{}}{}{#4=#2}}}{#3}\dx{#4}}
@@ -1566,21 +1599,17 @@
 \newcommand*{\Lagr}{\ensuremath{\mathcal{L}}}
 \newcommandx{\flux}[1][1]{\ensuremath{\ssub{\Phi}{#1}}}
 \newcommand*{\absof}[1]{\ensuremath{%
-  \left\lvert{\ifblank{#1}{\:\cdot\:}{#1}}\right\rvert}}
+  \left\lvert{\ifblank{#1}{\:\_\:}{#1}}\right\rvert}}
 \newcommand*{\inparens}[1]{\ensuremath{%
-  \left({\ifblank{#1}{\:\cdot\:}{#1}}\right)}}
+  \left({\ifblank{#1}{\:\_\:}{#1}}\right)}}
 \newcommand*{\magof}[1]{\ensuremath{%
-  \left\lVert{\ifblank{#1}{\:\cdot\:}{#1}}\right\rVert}}
+  \left\lVert{\ifblank{#1}{\:\_\:}{#1}}\right\rVert}}
 \newcommand*{\dimsof}[1]{\ensuremath{%
-  \left[{\ifblank{#1}{\:\cdot\:}{#1}}\right]}}
+  \left[{\ifblank{#1}{\:\_\:}{#1}}\right]}}
 \newcommand*{\unitsof}[1]{\ensuremath{%
-  \left[{\ifblank{#1}{\:\cdot\:}{#1}}\right]_u}}
+  \left[{\ifblank{#1}{\:\_\:}{#1}}\right]_u}}
 \newcommand*{\changein}[1]{\ensuremath{\delta{#1}}}
 \newcommand*{\Changein}[1]{\ensuremath{\Delta{#1}}}
-\newcommandx{\scin}[3][1,3=\!\!,usedefault]{\ensuremath{%
-  \ifthenelse{\equal{#1}{}}
-    {\unit{10^{#2}}{#3}}
-    {\unit{{#1}\times 10^{#2}}{#3}}}}
 \newcommandx{\timestento}[2][2=\!\!,usedefault]{\ensuremath{%
   \ifthenelse{\equal{#2}{}}
     {\unit{\;\times\;10^{#1}}{}}
@@ -1674,6 +1703,47 @@
   \xLongleftarrow[\text{\tiny{#1}}]{}}}
 \newcommand*{\brelatedto}[2]{\ensuremath{%
   \xLongleftrightarrow[\text{\tiny{#1}}]{\text{\tiny{#2}}}}}
+\newcommand*{\genericinteractionplaces}[5]{\ensuremath{\inparens{#1}
+  \frac{\inparens{#2}\inparens{#3}}{\inparens{#4}^2}{{\ifblank{#5}{%
+  \mivector{\_ , \_ , \_}}{#5}}}}}
+\newcommand*{\genericfieldofparticleplaces}[4]{\ensuremath{\inparens{#1}
+  \frac{\inparens{#2}}{\inparens{#3}^2}{{\ifblank{#4}{\mivector{\_ , \_ , \_}}{#4}}}}}
+\newcommand*{\genericpotentialenergyplaces}[4]{\ensuremath{%
+  \inparens{#1}\frac{\inparens{#2}\inparens{#3}}{\inparens{#4}}}}
+\newcommand*{\genericelectricdipoleplaces}[5]{%
+  \ensuremath{\inparens{#1}\frac{\inparens{#2}\inparens{#3}}{\inparens{#4}^3}%
+  {{\ifblank{#5}{\mivector{\_ , \_ , \_}}{#5}}}}}
+\newcommand*{\genericelectricdipoleonaxisplaces}[5]{%
+  \ensuremath{\inparens{#1}\frac{2\inparens{#2}\inparens{#3}}{\inparens{#4}^3}%
+  {{\ifblank{#5}{\mivector{\_ , \_ , \_}}{#5}}}}}
+\newcommand*{\gfieldofparticle}{\ensuremath{\universalgravmathsymbol\frac{M}%
+  {\magsquaredvect{r}}\inparens{-\dirvect{r}}}}
+\newcommand*{\gravitationalinteractionplaces}[4]{%
+  \genericinteractionplaces{\universalgrav}{#1}{#2}{#3}{#4}}
+\newcommand*{\gfieldofparticleplaces}[3]{%
+  \genericfieldofparticleplaces{\universalgrav}{#1}{#2}{#3}}
+\newcommand*{\electricinteractionplaces}[4]{%
+  \genericinteractionplaces{\oofpez}{#1}{#2}{#3}{#4}}
+\newcommand*{\Efieldofparticleplaces}[3]{%
+  \genericfieldofparticleplaces{\oofpez}{#1}{#2}{#3}}
+\newcommand*{\Bfieldofparticleplaces}[5]{\ensuremath{\inparens{\mzofp}%
+  \frac{\inparens{#1}\inparens{#2}}{\inparens{#3}^2}{{\ifblank{#4}{%
+  \mivector{\_ , \_ , \_}}{#4}}}\times{{\ifblank{#5}{\mivector{\_ , \_ , \_}}{#5}}}}}
+\newcommand*{\springinteractionplaces}[3]{\ensuremath{\inparens{#1}
+  \inparens{#2}{{\ifblank{#3}{\mivector{\_ , \_ , \_}}{#3}}}}}
+\newcommand*{\gravitationalpotentialenergyplaces}[3]{%
+  -\genericpotentialenergyplaces{\universalgrav}{#1}{#2}{#3}}
+\newcommand*{\electricpotentialenergyplaces}[3]{%
+  \genericpotentialenergyplaces{\oofpez}{#1}{#2}{#3}}
+\newcommand*{\springpotentialenergyplaces}[2]{\ensuremath{%
+  \onehalf\inparens{#1}\inparens{#2}^2}}
+\newcommand*{\electricdipoleonaxisplaces}[4]{%
+  \genericelectricdipoleonaxisplaces{\oofpez}{\absof{#1}}{#2}{#3}{{\ifblank{#4}{%
+  \mivector{\_ , \_ , \_}}{#4}}}}
+\newcommand*{\electricdipoleonbisectorplaces}[4]{%
+  \genericelectricdipoleplaces{\oofpez}{\absof{#1}}{#2}{#3}{{\ifblank{#4}{%
+  \mivector{\_ , \_ , \_}}{#4}}}}
+\newcommand{\define}[2]{\newcommand{#1}{#2}}
 \newcommand*{\momentumprinciple}{\ensuremath{%
   \vectsub{p}{sys,final}=\vectsub{p}{sys,initial}+\Fnetsys\Delta t}}
 \newcommand*{\LHSmomentumprinciple}{\ensuremath{\vectsub{p}{sys,final}}}
@@ -1702,10 +1772,10 @@
   \dirvectsub{r}{12}}}
 \newcommand*{\springinteraction}{\ensuremath{\ks\magvect{s}(-\dirvect{s})}}
 \newcommand*{\Bfieldofparticle}{\ensuremath{%
-  \mzofpmathsymbol\frac{Q\magvect{v}}{\magvect{r}\squared}\dirvect{v}\times
+  \mzofpmathsymbol\frac{Q\magvect{v}}{\magsquaredvect{r}}\dirvect{v}\times
   \dirvect{r}}}
 \newcommand*{\Efieldofparticle}{\ensuremath{%
-  \oofpezmathsymbol\frac{Q}{\magvect{r}\squared}\dirvect{r}}}
+  \oofpezmathsymbol\frac{Q}{\magsquaredvect{r}}\dirvect{r}}}
 \newcommandx{\Esys}[1][1]{\ifthenelse{%
   \equal{#1}{}}{\ssub{E}{sys}}{\ssub{E}{sys,#1}}}
 \newcommandx{\Us}[1][1]{\ifthenelse{%
@@ -1882,8 +1952,12 @@
 \newcommandx{\Eulerlagrange}[1][1={q_i},usedefault]{\ensuremath{%
   \DbyD{\mathcal{L}}{#1}-\DbyDt\inparens{\DbyD{\mathcal{L}}{\dot{#1}}} = 0}}
 \newcommand*{\vpythonline}{\lstinline[style=vpython]}
+\newcommand*{\glowscriptline}{\lstinline[style=vpython]}
 \lstnewenvironment{vpythonblock}[1][]{\lstset{style=vpython,caption={#1}}}{}
+\lstnewenvironment{glowscriptblock}[1][]{\lstset{style=vpython,caption={#1}}}{}
 \newcommand*{\vpythonfile}[1][]{\newpage\lstinputlisting[style=vpython,caption={#1}]}
+\newcommand*{\glowscriptfile}[1][]{%
+  \newpage\lstinputlisting[style=vpython,caption={#1}]}
 \newcommandx{\emptyanswer}[2][1=0.80,2=0.1,usedefault]
   {\begin{minipage}{#1\textwidth}\hfill\vspace{#2\textheight}\end{minipage}}
 \newenvironmentx{activityanswer}[5][1=white,2=black,3=black,4=0.90,%
@@ -2259,6 +2333,13 @@
     \BODY
   \end{align*}
 }%
+\newenvironment{problem}[1]{%
+  \newpage%
+  \section*{#1}%
+  \newlist{parts}{enumerate}{2}%
+  \setlist[parts]{label=(\alph*)}}{\newpage}
+\newcommand{\problempart}{\item}%
+\newcommand{\reason}[1]{\parbox{2cm}{#1}}
 \newcommand*{\checkpoint}{%
   \vspace{1cm}\begin{center}%
     \colorbox{yellow!80}{|--------- CHECKPOINT ---------|}%
@@ -2272,6 +2353,7 @@
     \end{center}%
   \end{figure}}
 \newcommand*{\sneakyone}[1]{\ensuremath{\cancelto{1}{#1}}}
+\newcommand*{\qed}{\ensuremath{\text{ Q.E.D.}}}
 \newcommand*{\chkquantity}[1]{%
   \begin{center}
     \begin{tabular}{C{4.5cm} C{4cm} C{4cm} C{4cm}}
@@ -2281,7 +2363,6 @@
     \end{tabular}
   \end{center}
 }%
-\newcommand*{\qed}{\ensuremath{\text{ Q.E.D.}}}
 \newcommand*{\chkconstant}[1]{%
   \begin{center}
     \begin{tabular}{C{4cm} C{2cm} C{3cm} C{3cm} C{3cm} C{3cm}}

Modified: trunk/Master/tlpkg/bin/tlpkg-ctan-check
===================================================================
--- trunk/Master/tlpkg/bin/tlpkg-ctan-check	2016-06-30 18:16:10 UTC (rev 41579)
+++ trunk/Master/tlpkg/bin/tlpkg-ctan-check	2016-06-30 21:01:17 UTC (rev 41580)
@@ -702,6 +702,7 @@
   "metafont",		# binary
   "metapost",		# binary
   "mex",		# gust, requested 2013
+  "mflua",		# binary
   "mfware",		# binary
   "mltex",		# binary
   "omega",		# binary

Modified: trunk/Master/tlpkg/tlpsrc/oldstandardt1.tlpsrc
===================================================================
--- trunk/Master/tlpkg/tlpsrc/oldstandardt1.tlpsrc	2016-06-30 18:16:10 UTC (rev 41579)
+++ trunk/Master/tlpkg/tlpsrc/oldstandardt1.tlpsrc	2016-06-30 21:01:17 UTC (rev 41580)
@@ -0,0 +1 @@
+execute addMap OldStandard.map



More information about the tex-live-commits mailing list