diff options
author | Karl Berry <karl@freefriends.org> | 2012-12-31 23:17:17 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2012-12-31 23:17:17 +0000 |
commit | f7d44df0c7bc9939ac13ff254fe97b47af0b16b9 (patch) | |
tree | 38c5af534c6e3040c10c3d03694ee7f6f26bdcf6 | |
parent | 3c0d257b00b36e468d76902fa2e37b97b490afba (diff) |
new latex package mandi (31dec12)
git-svn-id: svn://tug.org/texlive/trunk@28677 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Master/texmf-dist/doc/latex/mandi/README | 10 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/mandi/README.txt | 10 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/mandi/mandi.pdf | bin | 0 -> 907395 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/mandi/vdemo.py | 22 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/mandi/mandi.dtx | 8262 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/mandi/mandi.ins | 83 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/mandi/mandi.sty | 1371 | ||||
-rwxr-xr-x | Master/tlpkg/bin/tlpkg-ctan-check | 2 | ||||
-rw-r--r-- | Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc | 1 | ||||
-rw-r--r-- | Master/tlpkg/tlpsrc/mandi.tlpsrc | 0 |
10 files changed, 9760 insertions, 1 deletions
diff --git a/Master/texmf-dist/doc/latex/mandi/README b/Master/texmf-dist/doc/latex/mandi/README new file mode 100644 index 00000000000..eaa43321f25 --- /dev/null +++ b/Master/texmf-dist/doc/latex/mandi/README @@ -0,0 +1,10 @@ +The mandi package provides commands for typesetting symbols, expressions, and +quantities used in introductory physics and astronomy. Many of the commands are +inspired by Matter & Interactions by Ruth Chabay and Bruce Sherwood. Many of +the astronomical commands were inspired by my own classroom needs. It must be +understood that mandi does not do any computations! It only provides commands +for typesetting. + +Run the file mandi.dtx through (pdf)LaTeX to generate README (this file), +mandi.ins, mandi.sty, vdemo.py, and mandi.pdf (user documentation). I assume +a TeXLive2011 or later distribution is installed. diff --git a/Master/texmf-dist/doc/latex/mandi/README.txt b/Master/texmf-dist/doc/latex/mandi/README.txt new file mode 100644 index 00000000000..eaa43321f25 --- /dev/null +++ b/Master/texmf-dist/doc/latex/mandi/README.txt @@ -0,0 +1,10 @@ +The mandi package provides commands for typesetting symbols, expressions, and +quantities used in introductory physics and astronomy. Many of the commands are +inspired by Matter & Interactions by Ruth Chabay and Bruce Sherwood. Many of +the astronomical commands were inspired by my own classroom needs. It must be +understood that mandi does not do any computations! It only provides commands +for typesetting. + +Run the file mandi.dtx through (pdf)LaTeX to generate README (this file), +mandi.ins, mandi.sty, vdemo.py, and mandi.pdf (user documentation). I assume +a TeXLive2011 or later distribution is installed. diff --git a/Master/texmf-dist/doc/latex/mandi/mandi.pdf b/Master/texmf-dist/doc/latex/mandi/mandi.pdf Binary files differnew file mode 100644 index 00000000000..07cbcbcb0fd --- /dev/null +++ b/Master/texmf-dist/doc/latex/mandi/mandi.pdf diff --git a/Master/texmf-dist/doc/latex/mandi/vdemo.py b/Master/texmf-dist/doc/latex/mandi/vdemo.py new file mode 100644 index 00000000000..b50f0c35eea --- /dev/null +++ b/Master/texmf-dist/doc/latex/mandi/vdemo.py @@ -0,0 +1,22 @@ +from __future__ import print_function, division +from visual import * + +giant = sphere(pos=vector(-1e11,0,0),radius=2e10,mass=2e30,color=color.red) +giant.p = vector(0, 0, -1e4) * giant.mass + +dwarf = sphere(pos=vector(1.5e11,0,0),radius=1e10,mass=1e30,color=color.yellow) +dwarf.p = -giant.p + +for a in [giant, dwarf]: + a.orbit = curve(color=a.color, radius=2e9) + +dt = 86400 +while 1: + rate(100) + dist = dwarf.pos - giant.pos + force = 6.7e-11 * giant.mass * dwarf.mass * dist / mag(dist)**3 + giant.p = giant.p + force*dt + dwarf.p = dwarf.p - force*dt + for a in [giant, dwarf]: + a.pos = a.pos + a.p/a.mass * dt + a.orbit.append(pos=a.pos) diff --git a/Master/texmf-dist/source/latex/mandi/mandi.dtx b/Master/texmf-dist/source/latex/mandi/mandi.dtx new file mode 100644 index 00000000000..20b03d7c31b --- /dev/null +++ b/Master/texmf-dist/source/latex/mandi/mandi.dtx @@ -0,0 +1,8262 @@ +% \iffalse meta-comment +% !TEX TS-program = dtxmk +% +% Copyright (C) 2011,2012 by Paul J. Heafner <heafnerj@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 +% +% and includes the derived files README +% mandi.ins +% mandi.sty +% vdemo.py and +% mandi.pdf. +% --------------------------------------------------------------------------- +% +% \fi +% +% \iffalse +% +%<*internal> +\iffalse +%</internal> +% +%<*package> +\ProvidesPackage{mandi}[2012/12/31 2.0.0 Macros for intro physics and astronomy] +\NeedsTeXFormat{LaTeX2e}[1999/12/01] +%</package> +% +%<*readme> +The mandi package provides commands for typesetting symbols, expressions, and +quantities used in introductory physics and astronomy. Many of the commands are +inspired by Matter & Interactions by Ruth Chabay and Bruce Sherwood. Many of +the astronomical commands were inspired by my own classroom needs. It must be +understood that mandi does not do any computations! It only provides commands +for typesetting. + +Run the file mandi.dtx through (pdf)LaTeX to generate README (this file), +mandi.ins, mandi.sty, vdemo.py, and mandi.pdf (user documentation). I assume +a TeXLive2011 or later distribution is installed. +%</readme> +% +%<*vdemo> +from __future__ import print_function, division +from visual import * + +giant = sphere(pos=vector(-1e11,0,0),radius=2e10,mass=2e30,color=color.red) +giant.p = vector(0, 0, -1e4) * giant.mass + +dwarf = sphere(pos=vector(1.5e11,0,0),radius=1e10,mass=1e30,color=color.yellow) +dwarf.p = -giant.p + +for a in [giant, dwarf]: + a.orbit = curve(color=a.color, radius=2e9) + +dt = 86400 +while 1: + rate(100) + dist = dwarf.pos - giant.pos + force = 6.7e-11 * giant.mass * dwarf.mass * dist / mag(dist)**3 + giant.p = giant.p + force*dt + dwarf.p = dwarf.p - force*dt + for a in [giant, dwarf]: + a.pos = a.pos + a.p/a.mass * dt + a.orbit.append(pos=a.pos) +%</vdemo> +% +%<*internal> +\fi +\def\nameofplainTeX{plain} +\ifx\fmtname\nameofplainTeX\else + \expandafter\begingroup +\fi +%</internal> +% +%<*install> +\input docstrip.tex +\keepsilent +\askforoverwritefalse +\usedir{tex/latex/mandi} +\preamble + +Copyright (C) 2011,2012 by Paul J. Heafner <heafnerj@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 + +and includes the derived files README + mandi.ins + mandi.sty + mandi.pdf 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}}} +\generate{\usepreamble\empty\usepostamble\empty + \file{README.txt}{\from{\jobname.dtx}{readme}}} + +\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}}} +\generate{\usepreamble\empty\usepostamble\empty + \file{README.txt}{\from{\jobname.dtx}{readme}}} +\ifx\fmtname\nameofplainTeX + \expandafter\endbatchfile +\else + \expandafter\endgroup +\fi +%</internal> +% +%<*driver> +\ProvidesFile{mandi.dtx} +%</driver> +% +%<*driver> +\documentclass{ltxdoc} +\usepackage{\jobname} +\usepackage{array} +\usepackage[textwidth=1.0cm]{todonotes} +\setlength{\marginparwidth}{1.0in} % proper placement of todonotes in left margin +\usepackage{rotating} +\usepackage{listings} +\usepackage{microtype} +%\usepackage[noprint]{dox} +\usepackage{hypdoc} +\usepackage[left=1.75in,right=0.5in]{geometry} +\usepackage[listings]{tcolorbox} +\EnableCrossrefs +\PageIndex +\RecordChanges +\parindent 0.0mm +%\OnlyDescription % only print user documentation +\newcommandx{\ntodo}[2][1,usedefault]{% + \ifthenelse{\equal{#1}{}} + {\todo[size=\footnotesize,fancyline,caption={#2},color=yellow!40]{\begin{sideways} + #2\end{sideways}}} + {\todo[size=\footnotesize,fancyline,caption={#1},color=yellow!40]{\begin{sideways} + #2\end{sideways}}}} +\tcbset{enlarge left by=1cm, enlarge right by=2cm,enlarge top by=-3mm, + enlarge bottom by=3mm,width=\linewidth-2cm} +\tcbset{coltitle=blue!50!black,colframe=blue!25,colback=blue!15} +%\DeclareMathSizes{10}{18}{12}{8} +%\DeclareMathSizes{11}{19}{13}{9} +%\DeclareMathSizes{12}{20}{14}{10} +\everymath{\displaystyle} +\begin{document} + \DocInput{\jobname.dtx} + \PrintIndex +\end{document} +%</driver> +% \fi +% +% \newcommand{\pkgname}[1]{\texttt{#1}} +% \newcommand{\mandi}{\pkgname{mandi}} +% \newcommand{\mi}{\textit{Matter \& Interactions}} +% \hyphenation{Matter Interactions} +% \newcommand{\opt}[1]{\textsf{\textbf{#1}}} +% \newcommand{\baseunits}{\textit{baseunits}} +% \newcommand{\drvdunits}{\textit{drvdunits}} +% \newcommand{\tradunits}{\textit{tradunits}} +% +% \IndexPrologue{\section{Index}Numbers written in italic refer to the page/codeline +% where the corresponding entry is described; numbers/codelines +% underlined refer to the definition; numbers in roman refer to the +% pages/codelines where the entry is used.} +% +% \CheckSum{4386} +% +% \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 +% Lower-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 +% Digits \0\1\2\3\4\5\6\7\8\9 +% Exclamation \! Double quote \" Hash (number) \# +% Dollar \$ Percent \% Ampersand \& +% Acute accent \' Left paren \( Right paren \) +% Asterisk \* Plus \+ Comma \, +% Minus \- Point \. Solidus \/ +% Colon \: Semicolon \; Less than \< +% Equals \= Greater than \> Question mark \? +% Commercial at \@ Left bracket \[ Backslash \\ +% Right bracket \] Circumflex \^ Underscore \_ +% Grave accent \` Left brace \{ Vertical bar \| +% Right brace \} Tilde \~} +% +% \DoNotIndex{\,,\!,\;,\\,\{,\},\(,\),\[, +% \active,\advance,\AtBeginOfPackageFile,\baselineskip,\begin,\begingroup,\Big,\Bigg, +% \boolean,\bullet,\boldsymbol,\BODY,\box,\cancelto,\caption,\catcode,\cbcolor,\cbend, +% \cbstart,\centerline,\color,\changebarsep,\changebarwidth,\char,\clist,\cr,\cs, +% \csname,\csundef, +% \DeclareFontShape,\DeclareGraphicsRule,\DeclareMathAlphabet,\DeclareMathOperator, +% \DeclareOption,\def,\definecolor,\dimen,\displaystyle,\dp,\else,\end,\endcsname, +% \endgroup,\ensuremath,\equal,\ExecuteOptions,\expandafter,\ExplSyntaxOff, +% \ExplSyntaxOn,\fbox,\fcolorbox,\fi,\frac,\global,\halign,\hat,\hbox,\hfil,\hfill, +% \hline,\hspace,\ht,\iffalse,\ifnum,\ifthenelse,\IfValueT,\ifx,\includegraphics,\l, +% \label,\langle,\left,\let,\LetLtxMacro,\linewidth,\long,\lower,\lstinline, +% \lstinputlisting,\lstnewenvironment,\lstset,\lVert,\lvert,\mathbf,\mathcal, +% \mathchardef,\mathcode,\mathpzc,\mathrel,\mathrm,\mbox,\meaning,\mdfdefinestyle, +% \mi,\mskip,\newboolean,\newcommand,\newcommandx,\newcount,\NewDocumentCommand, +% \NewEnviron,\newenvironment,\newenvironmentx,\noalign,\noexpand,\nolimits,\odot, +% \offinterlineskip,\parbox,\partial,\phantom,\ProcessOptions,\protect,\rangle,\relax, +% \renewcommand,\right,\romannumeral,\RequirePackage,\rVert,\rvert,\scriptstyle, +% \seq,\setboolean,\setbox,\setcounter,\setlength,\skipper,\smart,\space,\string, +% \sqrt,\stackrel,\sum,\text,\textbf,\textfont,\textheight,\textsf,\texttt,\textwidth, +% \the,\tiny,\tl,\typeout,\upshape,\usetikzlibrary,\usebox,\vcenter,\vector,\vrule, +% \vskip,\vspace,\widehat,\WithSuffix,\xdef,\xLongleftarrow,\xLongleftrightarrow, +% \xLongrightarrow,\xrightarrow,\xspace} +% +% \DoNotIndex{\activity@fbox,\@eolst,\@firstofone,\@firstoftwo,\Mathstrutbox@,\mi@delim, +% \mi@exchangeargs,\mi@forkifnull,\mi@innername,\mi@name,\mi@vector,\oldr@@t,\rc@delim, +% \rc@vector,\response@fbox,\resetMathstrut@,\r@@t,\@tempa,\@tempb,\@tempboxa, +% \@secondoftwo,\z@} +% +% \DoNotIndex{\selectbaseunit,\selectdrvdunit,\selecttradunit,\selectunit, +% \redefinephysicsquantity,\redefinephysicsconstant,\definephysicsquantity, +% \definephysicsconstant,\innerdefinewhatsoeverquantity, +% \innerdefinewhatsoeverquantityfork,} +% +% \DoNotIndex{\alpha,\beta,\chi,\delta,\Delta,\epsilon,\eta,\gamma,\Gamma,\iota,\kappa, +% \lambda,\Lambda,\mu,\nu,\omega,\Omega,\phi,\Phi,\pi,\Pi,\psi,\Psi,\rho,\sigma,\Sigma, +% \tau,\theta,\Theta,\upsilon,\Upsilon,\varepsilon,\varphi,\varpi,\varrho,\varsigma, +% \vartheta\xi,\Xi,\zeta} +% +% \DoNotIndex{\approx,\bigint,\bigoint,\cos,\cosh,\cot,\coth,\csc,\csch,\ell,\hbar,\int, +% \ldots,\ln,\log,\mathcalligra,\nabla,\oint,\oldsqrt,\prime,\pm,\sec,\sech,\sin,\sinh, +% \sqrt,\star,\tan,\tanh,\times,\vec} +% +% \DoNotIndex{\ampere,\arcminute,\arcsecond,\candela,\coulomb,\coulombbase,\cubed,\cubic, +% \degree,\derjoule,\electronvolt,\farad,\fourth,\henry,\hertz,\hertzbase,\hour,\joule, +% \jouleperkelvin,\kelvin,\kilogram,\kilogrammetrepersecond,\kilogrampermetre, +% \kilogrammetrepersecondnp,\kilogrammetrepersquaresecondnp,\kilogrampermetrenp, +% \kilogrampersquaremetre,\kilogrampersquaremetrenp,\kilogrampercubicmetre, +% \kilogrampercubicmetrenp,\kilogramsquaremetrepersecondnp,\kilogramsquaremetre, +% \kilogramsquaremetrepersecond,\metre,\metrepersecond,\metrepersecondnp, +% \metrepersquaresecond,\metrepersquaresecondnp,\mole,\nano,\newton,\newtonpermetre, +% \newtonperkilogram,\newtonpersquaremetre,\newtonsecond,\pascal,\pascalbase,\per, +% \radian,\radianpersecond,\radianpersecondnp,\radianpersquaresecond, +% \radianpersquaresecondnp,\reciprocal,\rp,\rpsquare,\rpsquared,\rpcubed,\rpcubic, +% \rpfourth,\second,\SIminus,\sipower,\square,\squared,\squaremetre,\steradian,\tesla, +% \unit,\usk,\volt,\watt,\wattbase} +% +% \providecommand*{\url}{\texttt} +% \GetFileInfo{\jobname.sty} +% \title{The \textsf{mandi} package} +% \author{Paul J. Heafner \\ +% \href{mailto:heafnerj@gmail.com?subject=[Heafner]\%20mandi} +% {\nolinkurl{heafnerj@gmail.com}}} +% \date{Version \fileversion~dated \filedate} +% +% \maketitle +% +% ^^A \centerline{\textbf{PLEASE DO NOT DISTRIBUTE THIS VERSION.}} +% +% \changes{v2.0.0beta}{\today}{First public release} +% +% \tableofcontents +% \newpage +% \PrintChanges +% \addcontentsline{toc}{section}{Change History} +% \addcontentsline{toc}{section}{Possible Future Enhancements} +% \listoftodos[Possible Future Enhancements] +% \newpage +% +% \section{Introduction} +% This package provides a collection of commands useful in introductory physics +% and astronomy. The underlying philosophy is that the user, potentially an +% introductory student, should just type the name of a physical quantity, with a +% numerical value if needed, without having to think about the units. \mandi\ +% will typeset everything correctly. For symbolic quantities, the user should +% type only what is necessary to get the desired result. What one types should +% correspond as closely as possible to what one thinks when writing. The package +% name derives from \mi +% \footnote{See the \mi\ home page at \url{http://www.matterandinteractions.org/} +% for more information about this innovative introductory calculus-based physics +% curriculum.} by Ruth Chabay and Bruce Sherwood. The package certainly is rather +% tightly tied to that textbook but can be used for typesetting any document that +% requires consistent physics notation. With \mandi\ many complicated expressions +% can be typeset with just a single command. Great thought has been given to command +% names and I hope users find the conventions logical and easy to remember.\medskip +% +% There are other underlying philosophies and goals embedded within \mandi, all of +% which are summarized here. They are +% \begin{itemize} +% \item to employ a \textit{type what you think} model for remembering commands +% \item to relieve the user of having to explicitly worry about typesetting SI units +% \item to enforce certain concepts that are too frequently merged, which causes +% confusion, such as the distinction between a vector quantity and its magnitude +% (e.g.\ we often use the same name for both) +% \item to enforce consistent terminology in the naming of quantities, with names +% that are both meaningful to introductory students and accurate +% (e.g.\ \textit{duration} vs.\ \textit{time}) +% \item to enforce consistent notation, especially for vector quantities +% \end{itemize} +% +% I hope that using \mandi\ will cause users to form good habits that benefit +% physics students. +% +% \section{Building From Source} +% I am assuming the user will use pdf\LaTeX, which creates PDF files as output, to +% build the documentation. I have not tested the build with with standard \LaTeX, +% which creates DVI files. +% +% \newpage +% \section{Loading the Package} +% To load the \mandi\ package, simply put the line \medskip +% +% |\usepackage{mandi}| \medskip +% +% \noindent in your document's preamble to load \mandi\ with its default +% options. To use the package's available options, write \medskip +% +% |\usepackage|\textbf{[}\opt{options}\textbf{]}|{mandi}| \medskip +% +% There are five available options, with one option being based on the absence of two +% of the others. +% \begin{itemize} +% \item \opt{italicvectors} gives italic letters for the kernels of vector +% names. Otherwise, the letters are in Roman. +% \item \opt{doubleabsbars} gives double bars in symbols for vector magnitudes. +% Otherwise, single bars are used. Double bars may be more familiar to +% students from their calculus courses. +% \item \opt{baseunits} causes all units to be displayed in \baseunits\ form, with +% SI base units. No solidi (slashes) are used. Positive and negative exponents +% are used to denote powers of various base units. +% \item \opt{drvdunits} causes all units to be displayed, when possible, in +% \drvdunits\ form, with SI derived units. Students may already be familiar with +% many of these derived units. +% \item If neither \opt{baseunits} nor \opt{drvdunits} is specified (the +% default), units are displayed in what I call \tradunits\ form, which +% is typically the way they would traditionally appear in textbooks. Units in this +% form frequently hide the underlying physical meaning and are probably not best +% pedagogically but are familiar to students and teachers. In this document, the +% default is to use +% \ifthenelse{\boolean{@optbaseunits}} +% {base} +% {\ifthenelse{\boolean{@optdrvdunits}} +% {derived} +% {traditional}} +% units. As you will see later, there are ways to override these options either +% temporarily or permanently. +% \end{itemize} +% +% \newpage +% \section{Usage} +% So what does \mandi\ allow you to do? 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 +% +% \begin{center} +% |K \approx \frac{1}{2}\left(\unit{2}{\kg}\right)\left(\unit{2}{\m\per\s}\right)^2| +% \end{center} +% +% but it is more logical and more readable to use +% +% \begin{center} +% |K \approx \onehalf (\mass{2})(\velocity{2})^2| +% \end{center} +% +% given that they produce the same output. The second way is what \mandi\ lets you do. +% +% \[ K \approx \onehalf (\mass{2})(\velocity{2})^2 \] +% +% The second way is more readable if you come back to the document, perhaps having +% not looked at the source code for a while. Suppose you want to use vectors quantities. +% That's no problem because \mandi\ handles vector quantities. +% +% \begin{center} +% |Calculate the magnitude of \momentum{\mivector{3,2,5}}.| +% \end{center} +% +% produces +% +% \begin{center} +% Calculate the magnitude of \momentum{\mivector{3,2,5}}. +% \end{center} +% +% 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 +% SI units go with which physical quantities. You can define new quantities so that +% \mandi\ knows about them and in doing so, you give the new quantities the same +% names they would normally have. +% +% If you want to save time in writing out the energy principle, just use +% +% \begin{center} +% |\energyprinciple| +% \end{center} +% +% which gives +% +% \[ +% \energyprinciple +% \] +% +% with fewer keystrokes, and it's easier to remember. +% +% This barely scratches the surface in describing \mandi\ so continue reading this +% document to see everything this package can do. +% +% \newpage +% \section{Features and Commands} +% \subsection{Autosized Parentheses} +% An experimental feature of \mandi\ is autosized parentheses in math mode. This means +% you need never use |\left(| or |\right)|. Just use unadorned parentheses and they will +% size correctly. Note that this only works in math mode, only works for parentheses and +% not for other delimiters. +% +% To illustrate, |(\oofpezmathsymbol)| gives (\oofpezmathsymbol) but +% |\((\oofpezmathsymbol)\)| gives \((\oofpezmathsymbol)\). +% +% \subsection{SI Base Units} +% 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: +% \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 +% {thermodynamic temperature}, \textit{amount}, and \textit{luminous intensity}. +% These shortcuts are used internally and need not explicitly be invoked by the +% user.\medskip +% +% \DescribeMacro{\m} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=metre or SI unit of spatial displacement (length)} +\m +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\kg} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=kilogram or SI unit of mass} +\kg +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\s} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=second or SI unit of temporal displacement (duration)} +\s +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\A} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=ampere or SI unit of electric current} +\A +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\K} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=kelvin or SI unit of thermodynamic temperature} +\K +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\mol} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=mole or SI unit of amount} +\mol +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\cd} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=candela or SI unit of luminous intensity} +\cd +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% If \mandi\ was invoked 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.\medskip +% +% Certain combinations of the SI base units have nicknames and each such +% combination and nickname constitutes a \textit{derived unit}. Derived units are +% no more physically meaningful than the base units, they are merely nicknames for +% particular combinations of base units. An example of a derived unit is the +% newton, for which the symbol (it is not an abbreviation) is \newton. However, +% the symbol \newton\ is merely a nickname for a particular combination of base +% units, specifically \newtonbase. It is not the case that every unique combination +% of base units has a nickname, but those that do are usually named in honor of a +% scientist. Incidentally, in such cases, the symbol is capitalized but the +% \textit{name} of the unit is \textbf{never} capitalized. Thus we would write the +% name of the derived unit of force as newton and not Newton. Again, using these +% select nicknames for certain combinations of base units is what we mean by +% \drvdunits\ form. +% +% \newpage +% \subsection{Defining Physics Quantities} +% +% \DescribeMacro{\newphysicsquantity} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=define a physics quantity,listing only} +\newphysicsquantity\marg{foobar}\marg{\baseunits}\oarg{\drvdunits} + \oarg{\tradunits} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% Using this command causes several things to happen. +% \begin{itemize} +% \item A command |\yournewquantity|\marg{magnitude}, where |foobar| is the first +% argument passed to \\ +% |\newphysicsquantity|, is created that takes one mandatory +% argument, a numerical magnitude. Subsequent use of your defined scalar quantity +% can be invoked by typing \\ |\yournewquantity|\marg{magnitude} and the units will be +% typeset according to the options given when \mandi\ was loaded. Note that if the +% \drvdunits\ and \tradunits\ forms are not specified, they will be +% populated with the \baseunits\ form. +% \item A command |\yournewquantitybaseunit|\marg{magnitude} is created that expresses +% the quantity and its units in \baseunits\ form. +% \item A command |\yournewquantitydrvdunit|\marg{magnitude} is created that expresses +% the quantity and its units in \drvdunits\ form. This command is created whether +% or not the first optional argument is provided. +% \item A command |\yournewquantitytradunit|\marg{magnitude} is created that +% expresses the quantity and its units in \tradunits\ form. This command is +% created whether or not the first optional argument is provided. +% \item A command |\yournewquantityonlybaseunit|\marg{magnitude} is created that +% expresses +% \textbf{only} the quantity's units in \baseunits\ form. +% \item A command |\yournewquantityonlydrvdunit|\marg{magnitude} is created that +% expresses \textbf{only} the quantity's units in \drvdunits\ form. +% \item A command |\yournewquantityonlytradunit|\marg{magnitude} is created that +% expresses \textbf{only} the quantity's units in \tradunits\ form. +% \item A command |\yournewquantityvalue|\marg{magnitude} is created that expresses +% \textbf{only} the quantity's numerical value. +% \end{itemize} +% +% The following command defines the quantity |\displacement| and its +% associated commands containing its units. +% \begin{quotation} +% \begin{tabular}{l} +% |\newphysicsquantity{displacement}{\m}[\m][\m]| +% \end{tabular} +% \end{quotation} +% +% You would then invoke this quantity with |\displacement{3}| +% to get \displacement{3} in a calculation. +% +% \subsubsection{Defining Vector Quantities} +% +% Vector quantities are defined exactly like other quantities, except a formatted +% vector is used when invoking the value of that quantity. The following command defines +% a vector |\displacementvector| and its associated commands containing its units. +% +% \begin{quotation} +% \begin{tabular}{l} +% |\newphysicsquantity{displacementvector}{\m}[\m][\m]| +% \end{tabular} +% \end{quotation} +% +% \newphysicsquantity{displacementvector}{\m}[\m][\m] +% +% You would then invoke this quantity with |\displacementvector{\mivector{2,3,-5}}| +% to get \displacementvector{\mivector{2,3,-5}} in a calculation. +% +% \subsection{First Semester Physics} +% The first semester of \mi\ 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. +% +% \begin{center} +% \begin{tabular}{c c} +% |\displacement{3.14}| & \displacement{3.14} \\ +% |\mass{2.81}| & \mass{2.81} \\ +% |\duration{4.32}| & \duration{4.32} \\ +% |\current{5.19}| & \current{5.19} \\ +% |\temperature{273}| & \temperature{273} \\ +% |\amount{2.87}| & \amount{2.87} \\ +% |\luminous{5.64}| & \luminous{5.64} \\ +% \end{tabular} +% \end{center} +% +% Okay, so much for the base quantities. While we're at it, let's also go ahead and +% define plane angle, solid angle, and a few non-SI units of angular measure, energy, +% and distance. +% +% \begin{center} +% \begin{tabular}{c c} +% |\planeangle{2.88}| & \planeangle{2.88} \\ +% |\solidangle{4\pi}| & \solidangle{4\pi} \\ +% |\indegrees{30.1}| & \indegrees{30.1} \\ +% |\inarcminutes{30.1}| & \inarcminutes{30.1} \\ +% |\inarcseconds{30.1}| & \inarcseconds{30.1} \\ +% |\ineV{10.2}| & \ineV{10.2} \\ +% |\inAU{5.2}| & \inAU{5.2} +% \end{tabular} +% \end{center} +% +% 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.\medskip +% +% Now let us move on into first semester physics, defining quantities in the approximate +% order in which they appear in \mi. Use |\scin[]{}| to get +% scientific notation, with the mantissa as the optional first argument and the exponent +% as the required second argument. An optional third argument specifies a unit, but that +% is not needed in the following examples. +% +% \begin{center} +% \begin{tabular}{c c} +% |\velocityc{0.24}| & \velocityc{0.24} \\ +% |\velocity{2.99}| & \velocity{2.99} \\ +% |\gamman{4.32}| & \gamman{4.32} \\ +% |\momentum{\scin[2.44]{4}}| & \momentum{\scin[2.44]{4}} \\ +% |\acceleration{9.81}| & \acceleration{9.81} \\ +% |\impulse{3.56}| & \impulse{3.56} \\ +% |\force{2.84}| & \force{2.84} \\ +% |\springstiffness{6.92}| & \springstiffness{6.92} \\ +% |\springstretch{0.212}| & \springstretch{0.212} \\ +% |\area{0.125}| & \area{0.125} \\ +% |\volume{5.33}| & \volume{5.33} \\ +% |\linearmassdensity{2.33}| & \linearmassdensity{2.33} \\ +% |\areamassdensity{3.60}| & \areamassdensity{3.60} \\ +% |\volumemassdensity{27.4}| & \volumemassdensity{27.4} \\ +% |\youngsmodulus{\scin[2.12]{9}}| & \youngsmodulus{\scin[2.12]{9}} \\ +% |\work{4.04}| & \work{4.04} \\ +% |\energy{4.40}| & \energy{4.40} \\ +% |\power{100.2}| & \power{100.2} \\ +% |\angularvelocity{3.02}| & \angularvelocity{3.02} \\ +% |\angularacceleration{5.32}| & \angularacceleration{5.32} \\ +% |\angularmomentum{6.81}| & \angularmomentum{6.81} \\ +% |\momentofinertia{4.59}| & \momentofinertia{4.59} \\ +% |\torque{3.40}| & \torque{3.40} \\ +% |\entropy{5.95}| & \entropy{5.95} \\ +% |\wavelength{\scin[4.00]{-7}}| & \wavelength{\scin[4.00]{-7}} \\ +% |\wavenumber{\scin[2.50]{6}}| & \wavenumber{\scin[2.50]{6}} \\ +% |\frequency{\scin[7.50]{14}}| & \frequency{\scin[7.50]{14}} \\ +% |\angularfrequency{\scin[4.70]{15}}| & \angularfrequency{\scin[4.70]{15}} +% \end{tabular} +% \end{center} +% +% 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. +% +% \newpage +% \subsection{Second Semester Physics} +% The second semester of \mi\ focuses on electromagnetic theory, and there are many +% primary and secondary quantities. +% +% \subsubsection{Predefined Quantities} +% +% \begin{center} +% \begin{tabular}{c c} +% |\charge{\scin[2]{-9}}| & \charge{\scin[2]{-9}} \\ +% |\permittivity{\scin[9]{-12}}| & \permittivity{\scin[9]{-12}} \\ +% |\electricfield{\scin[2]{5}}| & \electricfield{\scin[2]{5}} \\ +% |\electricdipolemom{\scin[3]{-22}}| & \electricdipolemom{\scin[3]{-22}} \\ +% |\permeability{\scin[4\pi]{-7}}| & \permeability{\scin[4\pi]{-7}} \\ +% |\magneticfield{1.25}| & \magneticfield{1.25} \\ +% |\cmagneticfield{1.25}| & \cmagneticfield{1.25} +% \end{tabular} +% \end{center} +% +% \newpage +% \subsection{Further Words on Units} +% As you recall, when a new scalar or vector is defined, a host of other commands +% is also automatically defined. Consider momentum. The following commands are +% defined: +% +% \begin{quotation} +% \begin{tabular}{c c c} +% |\momentum{3}| & \momentum{3} & unit determined by global options\\ +% |\momentumbaseunit{3}| & \momentumbaseunit{3} & quantity with base unit \\ +% |\momentumdrvdunit{3}| & \momentumdrvdunit{3} & quantity with derived unit \\ +% |\momentumtradunit{3}| & \momentumtradunit{3} & quantity with traditional unit \\ +% |\momentumvalue{3}| & \momentumvalue{3} & numerical value of quantity \\ +% |\momentumonlybaseunit| & \momentumonlybaseunit & selects only base unit \\ +% |\momentumonlydrvdunit| & \momentumonlydrvdunit & selects only derived unit \\ +% |\momentumonlytradunit| & \momentumonlytradunit & selects only traditional unit +% \end{tabular} +% \end{quotation} +% +% 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|, |tradunit| to the +% quantity's name, and this will override the global options for that instance. +% +% \DescribeMacro{\hereusebaseunit} +% \DescribeMacro{\hereusedrvdunit} +% \DescribeMacro{\hereusetradunit} +% A second way is to use the commands |\hereusebaseunit{}|, |\hereusedrvdunit{}|, or +% |\hereusetradunit{}| with the quantity as the argument. +% +% \begin{quotation} +% \begin{tabular}{c c} +% |\hereusebaseunit{\momentum{3}}| & \hereusebaseunit{\momentum{3}} \\ +% |\hereusedrvdunit{\momentum{3}}| & \hereusedrvdunit{\momentum{3}} \\ +% |\hereusetradunit{\momentum{3}}| & \hereusetradunit{\momentum{3}} +% \end{tabular} +% \end{quotation} +% +% \DescribeEnv{usebaseunit} +% \DescribeEnv{usedrvdunit} +% \DescribeEnv{usetradunit} +% A third way is to use the |usebaseunit|, |usedrvdunit|, |usetradunit| +% environments. \\ +% +% \begin{quotation} +% \begin{tabular}{c c} +% |\begin{usebaseunit}| & \\ +% | \momentum{3} | & \begin{usebaseunit}\momentum{3}\end{usebaseunit}\\ +% |\end{usebaseunit} | & \\ +% |\begin{usedrvdunit}| & \\ +% | \momentum{3} | & \begin{usedrvdunit}\momentum{3}\end{usedrvdunit}\\ +% |\end{usedrvdunit} | & \\ +% |\begin{usetradunit}| & \\ +% | \momentum{3} | & \begin{usetradunit}\momentum{3}\end{usetradunit}\\ +% |\end{usetradunit} | & \\ +% \end{tabular} +% \end{quotation} +% +% \DescribeMacro{\perpusebaseunit} +% \DescribeMacro{\perpusedrvdunit} +% \DescribeMacro{\perpusetradunit} +% A fourth way is to use the global switches |\perpusebaseunit|, |\perpusedrvdunit|, +% and \\ +% |\perpusetradunit| (think \textit{perpetually use\ldots}). \textbf{It's important to +% remember that these switches override the global options for the rest of the document +% or until overridden by one of the other two switches.} +% +% \newpage +% \subsection{Expressions with Vectors} +% \subsubsection{Basic Vectors} +% +% \DescribeMacro{\vect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for a vector quantity\\ + \cs{vect}\marg{kernel}} +\vect{p} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\magvect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for a vector quantity's magnitude\\ + \cs{magvect}\marg{kernel}} +\magvect{p} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\dirvect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for a vector quantity's direction\\ + \cs{dirvect}\marg{kernel}} +\dirvect{p} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\ncompszerovect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for the zero vector expressed in components \\ + Deprecated. Use \cs{mivector} instead.\\ + \cs{ncompszerovect}} +\ncompszerovect +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +%\newpage +% \DescribeMacro{\symvect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for vector with expressions as components\\ + Deprecated. Use \cs{mivector} instead.\\ + \cs{symvect}\marg{listofcomps}} +\symvect{\magvect{E}\cos\theta,\magvect{E}\sin\theta,0} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\ncompsvect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=vector with numerical components and an + Deprecated. Use \cs{mivector} instead.\\ + optional unit\\ \cs{ncompsvect}\marg{listofcomps}\oarg{unit}} +\ncompsvect{3,4,6}[\m\per\s] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\magvectncomps} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=expression for a vector's magnitude with numerical + components and an optional unit\\ + \cs{magvectncomps}\marg{listofcomps}\oarg{unit}} +\magvectncomps{3.12,4.04,6.73}[\m\per\s] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\scompsvect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbolic components of a vector\\ + \cs{scompsvect}\marg{kernel}} +\scompsvect{E} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\compvect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbolic component of a vector\\ + \cs{compvect}\marg{kernel}\marg{comp}} +\compvect{E}{y} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\magvectscomps} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=expression for a vector's magnitude in + terms of its symbolic components\\ \cs{magvectscomps}\marg{kernel}} +\magvectscomps{B} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \subsubsection{Position Vectors} +% +% \DescribeMacro{\scompspos} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbolic components of a position vector\\ + \cs{scompspos}} +\scompspos +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\comppos} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=one component of a position vector\\ + \cs{comppos}\marg{comp}} +\comppos{y} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \subsubsection{Differentials and Derivatives of Vectors} +% \DescribeMacro{\dvect} +% \DescribeMacro{\Dvect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for the differential of a vector\\ + \cs{dvect}\marg{kernel} or \cs{Dvect}\marg{kernel}} +\dvect{E} or \Dvect{E} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\dirdvect} +% \DescribeMacro{\dirDvect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for the direction of the differential + of a vector\\ \cs{dirdvect}\marg{kernel} or \cs{dirDvect}\marg{kernel}} +\dirdvect{E} or \dirDvect{E} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\ddirvect} +% \DescribeMacro{\Ddirvect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for the differential of a vector's + direction\\ \cs{ddirvect}\marg{kernel} or \cs{Ddirvect}\marg{kernel}} +\ddirvect{E} or \Ddirvect{E} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\magdvect} +% \DescribeMacro{\magDvect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=magnitude of the differential of a vector\\ + \cs{magdvect}\marg{kernel} or \cs{magDvect}\marg{kernel}} +\magdvect{E} or \magDvect{E} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\dmagvect} +% \DescribeMacro{\Dmagvect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=differential of the magnitude of a vector\\ + \cs{dmagvect}\marg{kernel} or \cs{Dmagvect}\marg{kernel}} +\dmagvect{E} or \Dmagvect{E} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\scompsdvect} +% \DescribeMacro{\scompsDvect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbolic components of the differential + of a vector\\ \cs{scompsdvect}\marg{kernel} or \cs{scompsDvect}\marg{kernel}} +\scompsdvect{E} or \scompsDvect{E} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\compdvect} +% \DescribeMacro{\compDvect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=one symbolic component of the differential of + a vector\\ \cs{compdvect}\marg{kernel}\marg{comp} or \cs{compDvect}\marg{kernel} + \marg{comp}} +\compdvect{E}{z} or \compDvect{E}{y} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\scompsdpos} +% \DescribeMacro{\scompsDpos} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbolic components of the differential of a + position vector\\ \cs{scompsdpos} or \cs{scompsDpos}} +\scompsdpos\ or \scompsDpos +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\compdpos} +% \DescribeMacro{\compDpos} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=one component of the differential of a + position vector\\ \cs{compdpos}\marg{comp} or \cs{compDpos}\marg{comp}} +\compdpos{z} or \compDpos{y} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\dervect} +% \DescribeMacro{\Dervect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for the derivative of a vector\\ + \cs{dervect}\marg{kernel}\marg{indvar} or \cs{Dervect}\marg{kernel}\marg{indvar}} +\dervect{E}{t} or \Dervect{E}{t} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\dermagvect} +% \DescribeMacro{\Dermagvect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for the derivative of the magnitude of a + vector\\ \cs{dermagvect}\marg{kernel}\marg{indvar} or + \cs{Dermagvect}\marg{kernel}\marg{indvar}} +\dermagvect{E}{t} or \Dermagvect{E}{t} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\scompsdervect} +% \DescribeMacro{\scompsDervect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbolic components of the derivative of a + vector\\ \cs{scompsdervect}\marg{kernel}\marg{indvar} or\\ + \cs{scompsDervect}\marg{kernel}\marg{indvar}} +\scompsdervect{E}{t} or \scompsDervect{E}{t} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\compdervect} +% \DescribeMacro{\compDervect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=one component of the derivative of a vector\\ + \cs{compdervect}\marg{kernel}\marg{indvar}\marg{comp} or\\ + \cs{compDervect}\marg{kernel}\marg{indvar}\marg{comp}} +\compdervect{E}{t}{y} or \compDervect{E}{t}{y} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\magdervect} +% \DescribeMacro{\magDervect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=magnitude of the derivative of a vector\\ + \cs{magdervect}\marg{kernel}\marg{indvar} or \cs{magDervect}\marg{kernel}\marg{indvar}} +\magdervect{E}{t} or \magDervect{E}{t} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\scompsderpos} +% \DescribeMacro{\scompsDerpos} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbolic components of the derivative of a + position vector\\ \cs{scompsderpos}\marg{indvar} or \cs{scompsDerpos}\marg{indvar}} +\scompsderpos{t} or \scompsDerpos{t} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\compderpos} +% \DescribeMacro{\compDerpos} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=one component of the derivative of a position + vector\\ \cs{compderpos}\marg{comp}\marg{indvar} or\\ + \cs{compDerpos}\marg{comp}\marg{indvar}} +\compderpos{z}{t} or \compDerpos{z}{t} +\end{tcblisting} +%\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. \\ +% +% \newpage +% \subsubsection{Subscripted Vectors} +% Now we have commands for vectors that carry subscripts, usually to identify an +% object or something similar. Basically, |vect| becomes |vectsub| and |pos| +% becomes |possub|. 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. \\ +% +% \DescribeMacro{\vectsub} +% \DescribeMacro{\magvectsub} +% \DescribeMacro{\dirvectsub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=name magnitude and direction of a subscripted + vector\\ \cs{vectsub}\marg{kernel}\marg{sub}\\ + \cs{dirvectsub}\marg{kernel}\marg{sub}\\ + \cs{magvectsub}\marg{kernel}\marg{sub}} +\vectsub{p}{ball} and \magvectsub{p}{ball} and \dirvectsub{p}{ball} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\scompsvectsub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbolic components of a subscripted vector\\ + \cs{scompsvectsub}\marg{kernel}\marg{sub}} +\scompsvectsub{p}{ball} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\compvectsub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=one component of a subscripted vector\\ + \cs{compvectsub}\marg{kernel}\marg{sub}\marg{comp}} +\compvectsub{p}{ball}{z} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\magvectsubscomps} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=magnitude of a subscripted vector in terms of its + symbolic components\\ \cs{magvectsubscomps}\marg{kernel}\marg{sub}} +\magvectsubscomps{p}{ball} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\scompspossub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbolic components of a subscripted position + vector\\ \cs{scompspossub}\marg{sub}} +\scompspossub{ball} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\comppossub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=one component of a subscripted position vector\\ + \cs{comppossub}\marg{sub}\marg{comp}} +\comppossub{ball}{x} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\dvectsub} +% \DescribeMacro{\Dvectsub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=differential of a subscripted vector\\ + \cs{dvectsub}\marg{kernel}\marg{sub} or \cs{Dvectsub}\marg{kernel}\marg{sub}} +\dvectsub{p}{ball} or \Dvectsub{p}{ball} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\scompsdvectsub} +% \DescribeMacro{\scompsDvectsub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbolic components the differential of a + subscripted vector\\ \cs{scompsdvectsub}\marg{kernel}\marg{sub} or\\ + \cs{scompsDvectsub}\marg{kernel}\marg{sub}} +\scompsdvectsub{p}{ball} or \scompsDvectsub{p}{ball} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\compdvectsub} +% \DescribeMacro{\compDvectsub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=one component of the differential of a + subscripted vector\\ \cs{compdvectsub}\marg{kernel}\marg{sub}\marg{comp} or\\ + \cs{compDvectsub}\marg{kernel}\marg{sub}\marg{comp}} +\compdvectsub{p}{ball}{y} or \compDvectsub{p}{ball}{y} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\scompsdpossub} +% \DescribeMacro{\scompsDpossub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbolic components of the differential of a + subscripted position vector\\ \cs{scompsdpossub}\marg{sub} or\\ + \cs{scompsDpossub}\marg{sub}} +\scompsdpossub{ball} or \scompsDpossub{ball} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\compdpossub} +% \DescribeMacro{\compDpossub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=one component of the differential of a + subscripted position vector\\ \cs{compdpossub}\marg{sub}\marg{comp} or\\ + \cs{compDpossub}\marg{sub}\marg{comp}} +\compdpossub{ball}{x} or \compDpossub{ball}{x} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\dervectsub} +% \DescribeMacro{\Dervectsub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=derivative of a subscripted vector\\ + \cs{dervectsub}\marg{kernel}\marg{sub}\marg{indvar} or\\ + \cs{Dervectsub}\marg{kernel}\marg{sub}\marg{indvar}} +\dervectsub{p}{ball}{t} or \Dervectsub{p}{ball}{t} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\dermagvectsub} +% \DescribeMacro{\Dermagvectsub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for the derivative of the magnitude of a + subscripted vector\\ \cs{dermagvectsub}\marg{kernel}\marg{sub}\marg{indvar} or\\ + \cs{Dermagvectsub}\marg{kernel}\marg{sub}\marg{indvar}} +\dermagvectsub{E}{ball}{t} or \Dermagvectsub{E}{ball}{t} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\scompsdervectsub} +% \DescribeMacro{\scompsDervectsub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbolic components of the derivative of a + subscripted vector\\ \cs{scompsdervectsub}\marg{kernel}\marg{sub}\marg{indvar} or\\ + \cs{scompsDervectsub}\marg{kernel}\marg{sub}\marg{indvar}} +\scompsdervectsub{p}{ball}{t} or \scompsDervectsub{p}{ball}{t} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\compdervectsub} +% \DescribeMacro{\compDervectsub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=one component of the derivative of a subscripted + vector\\ \cs{compdervectsub}\marg{kernel}\marg{sub}\marg{indvar}\marg{comp} or\\ + \cs{compDervectsub}\marg{kernel}\marg{sub}\marg{indvar}\marg{comp}} +\compdervectsub{p}{ball}{t}{y} or \compDervectsub{p}{ball}{t}{y} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\magdervectsub} +% \DescribeMacro{\magDervectsub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=magnitude of the derivative of a subscripted + vector\\ \cs{magdervectsub}\marg{kernel}\marg{sub}\marg{indvar} or\\ + \cs{magDervectsub}\marg{kernel}\marg{sub}\marg{indvar}} +\magdervectsub{p}{ball}{t} or \magDervectsub{p}{ball}{t} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\scompsderpossub} +% \DescribeMacro{\scompsDerpossub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbolic components of the derivative of an indexed + position vector\\ \cs{scompsderpossub}\marg{sub}\marg{indvar} or\\ + \cs{scompsDerpossub}\marg{sub}\marg{indvar}} +\scompsderpossub{ball}{t} or \scompsDerpossub{ball}{t} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\compderpossub} +% \DescribeMacro{\compDerpossub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=one component of the derivative of a subscripted + position vector\\ \cs{compderpossub}\marg{sub}\marg{indvar}\marg{comp} or\\ + \cs{compDerpossub}\marg{sub}\marg{indvar}\marg{comp}} +\compderpossub{ball}{t}{z} or \compDerpossub{ball}{t}{z} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \subsubsection{Relative Vectors} +% Sometimes we need the position, velocity, momentum, or force of/on one thing +% relative to/due to another thing. \\ +% +% \DescribeMacro{\relpos} +% \DescribeMacro{\relvel} +% \DescribeMacro{\relmom} +% \DescribeMacro{\relfor} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=relative position or velocity or + momentum or force vectors for two objects\\ + \cs{relpos}\marg{sub} and \cs{relvel}\marg{sub} and \cs{relmom}\marg{sub}\\ + and \cs{relfor}\marg{sub}} +\relpos{12} and \relvel{12} and \relmom{12} and \relfor{12} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \subsubsection{Expressions Containing Dot Products} +% 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. \\ +% +% \newpage +% \DescribeMacro{\vectdotvect} +% \DescribeMacro{\vectdotsvect} +% \DescribeMacro{\vectdotevect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=dot product of two vectors as a single symbol or with + symbolic components or as an expanded sum\\ + \cs{vectdotvect}\marg{vector1}\marg{vector2}\\ + \cs{vectdotsvect}\marg{kernel1}\marg{kernel2}\\ + \cs{vectdotevect}\marg{kernel1}\marg{kernel2}} +\vectdotvect{\vect{F}}{\vect{v}} \\ +\vectdotsvect{F}{v} \\ +\vectdotevect{F}{v} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\vectdotspos} +% \DescribeMacro{\vectdotepos} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=dot product of a vector and a position vector with symbolic + components or as an expanded sum\\ + \cs{vectdotspos}\marg{kernel} or \cs{vectdotepos}\marg{kernel}} +\vectdotspos{F} \\ +\vectdotepos{F} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\vectdotsdvect} +% \DescribeMacro{\vectdotsDvect} +% \DescribeMacro{\vectdotedvect} +% \DescribeMacro{\vectdoteDvect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=dot product of a vector and the differential of a vector + with symbolic components or expanded as a sum \\ + \cs{vectdotsdvect}\marg{kernel1}\marg{kernel2}\\ + \cs{vectdotsDvect}\marg{kernel1}\marg{kernel2}\\ + \cs{vectdotedvect}\marg{kernel1}\marg{kernel2}\\ + \cs{vectdoteDvect}\marg{kernel1}\marg{kernel2}} +\vectdotsdvect{F}{r} or \vectdotsDvect{F}{r} \\ +\vectdotedvect{F}{r} or \vectdoteDvect{F}{r} \\ +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\vectdotsdpos} +% \DescribeMacro{\vectdotsDpos} +% \DescribeMacro{\vectdotedpos} +% \DescribeMacro{\vectdoteDpos} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=dot product of a vector and the differential position + vector with symbolic components or expanded as a sum \\ + \cs{vectdotsdpos}\marg{kernel} or \cs{vectdotsDpos}\marg{kernel}\\ + \cs{vectdotedpos}\marg{kernel} or \cs{vectdoteDpos}\marg{kernel}} +\vectdotsdpos{F} or \vectdotsDpos{F} \\ +\vectdotedpos{F} or \vectdoteDpos{F} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\vectsubdotsvectsub} +% \DescribeMacro{\vectsubdotevectsub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=dot product of two subscripted vectors with symbolic + components or expanded as a sum \\ + \cs{vectsubdotsvectsub}\marg{kernel1}\marg{sub1}\marg{kernel2}\marg{sub2}\\ + \cs{vectsubdotevectsub}\marg{kernel1}\marg{sub1}\marg{kernel2}\marg{sub2}} +\vectsubdotsvectsub{F}{grav}{r}{ball} \\ +\vectsubdotevectsub{F}{grav}{r}{ball} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\vectsubdotsdvectsub} +% \DescribeMacro{\vectsubdotsDvectsub} +% \DescribeMacro{\vectsubdotedvectsub} +% \DescribeMacro{\vectsubdoteDvectsub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=dot product of a subscripted vector and the differential + of a subscripted vector with symbolic components or expanded as a sum \\ + \cs{vectsubdotsdvectsub}\marg{kernel1}\marg{sub1}\marg{kernel2}\marg{sub2} \\ + \cs{vectsubdotsDvectsub}\marg{kernel1}\marg{sub1}\marg{kernel2}\marg{sub2} \\ + \cs{vectsubdotedvectsub}\marg{kernel1}\marg{sub1}\marg{kernel2}\marg{sub2} \\ + \cs{vectsubdoteDvectsub}\marg{kernel1}\marg{sub1}\marg{kernel2}\marg{sub2}} +\vectsubdotsdvectsub{A}{ball}{B}{car} \\ +\vectsubdotsDvectsub{A}{ball}{B}{car} \\ +\vectsubdotedvectsub{A}{ball}{B}{car} \\ +\vectsubdoteDvectsub{A}{ball}{B}{car} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\vectsubdotsdvect} +% \DescribeMacro{\vectsubdotsDvect} +% \DescribeMacro{\vectsubdotedvect} +% \DescribeMacro{\vectsubdoteDvect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=dot product of a subscripted vector and the differential + of a vector with symbolic components or expanded as a sum \\ + \cs{vectsubdotsdvect}\marg{kernel1}\marg{sub1}\marg{kernel2}\\ + \cs{vectsubdotsDvect}\marg{kernel1}\marg{sub1}\marg{kernel2}\\ + \cs{vectsubdotedvect}\marg{kernel1}\marg{sub1}\marg{kernel2}\\ + \cs{vectsubdoteDvect}\marg{kernel1}\marg{sub1}\marg{kernel2}} +\vectsubdotsdvect{A}{ball}{B} \\ +\vectsubdotsDvect{A}{ball}{B} \\ +\vectsubdotedvect{A}{ball}{B} \\ +\vectsubdoteDvect{A}{ball}{B} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\vectsubdotsdpos} +% \DescribeMacro{\vectsubdotsDpos} +% \DescribeMacro{\vectsubdotedpos} +% \DescribeMacro{\vectsubdoteDpos} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=dot product of a subscripted vector and a differential + position vector with symbolic components or expanded as a sum \\ + \cs{vectsubdotsdpos}\marg{kernel}\marg{sub} \\ + \cs{vectsubdotsDpos}\marg{kernel}\marg{sub} \\ + \cs{vectsubdotedpos}\marg{kernel}\marg{sub} \\ + \cs{vectsubdoteDpos}\marg{kernel}\marg{sub}} +\vectsubdotsdpos{A}{ball}\\ +\vectsubdotsDpos{A}{ball}\\ +\vectsubdotedpos{A}{ball}\\ +\vectsubdoteDpos{A}{ball} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\dervectdotsvect} +% \DescribeMacro{\Dervectdotsvect} +% \DescribeMacro{\dervectdotevect} +% \DescribeMacro{\Dervectdotevect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=dot product of the derivative of a vector and a vector + with symbolic components or expanded as a sum\\ + \cs{dervectdotsvect}\marg{kernel1}\marg{indvar}\marg{kernel2}\\ + \cs{Dervectdotsvect}\marg{kernel1}\marg{indvar}\marg{kernel2}\\ + \cs{dervectdotevect}\marg{kernel1}\marg{indvar}\marg{kernel2}\\ + \cs{Dervectdotevect}\marg{kernel1}\marg{indvar}\marg{kernel2}} +\dervectdotsvect{A}{t}{B} \\ +\Dervectdotsvect{A}{t}{B} \\ +\dervectdotevect{A}{t}{B} \\ +\Dervectdotevect{A}{t}{B} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\vectdotsdervect} +% \DescribeMacro{\vectdotsDervect} +% \DescribeMacro{\vectdotedervect} +% \DescribeMacro{\vectdoteDervect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=dot product of a vector and the derivative of a vector with \\ + symbolic components or expanded as a sum \\ + \cs{vectdotsdervect}\marg{kernel1}\marg{kernel2}\marg{indvar}\\ + \cs{vectdotsDervect}\marg{kernel1}\marg{kernel2}\marg{indvar}\\ + \cs{vectdotedervect}\marg{kernel1}\marg{kernel2}\marg{indvar}\\ + \cs{vectdoteDervect}\marg{kernel1}\marg{kernel2}\marg{indvar}} +\vectdotsdervect{A}{B}{t} \\ +\vectdotsDervect{A}{B}{t} \\ +\vectdotedervect{A}{B}{t} \\ +\vectdoteDervect{A}{B}{t} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\dervectdotspos} +% \DescribeMacro{\Dervectdotspos} +% \DescribeMacro{\dervectdotepos} +% \DescribeMacro{\Dervectdotepos} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=dot product of the derivative of a vector and a position + vector using symbolic components or expanded as a sum \\ + \cs{dervectdotspos}\marg{kernel}\marg{indvar}\\ + \cs{Dervectdotspos}\marg{kernel}\marg{indvar}\\ + \cs{dervectdotepos}\marg{kernel}\marg{indvar}\\ + \cs{Dervectdotepos}\marg{kernel}\marg{indvar}} +\dervectdotspos{A}{t} \\ +\Dervectdotspos{A}{t} \\ +\dervectdotepos{A}{t} \\ +\Dervectdotepos{A}{t} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\dervectdotsdvect} +% \DescribeMacro{\DervectdotsDvect} +% \DescribeMacro{\dervectdotedvect} +% \DescribeMacro{\DervectdoteDvect} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=dot product of the derivative of a vector and the + differential of a vector using symbolic components or expanded as a sum \\ + \cs{dervectdotsdvect}\marg{kernel1}\marg{indvar}\marg{kernel2}\\ + \cs{DervectdotsDvect}\marg{kernel1}\marg{indvar}\marg{kernel2}\\ + \cs{dervectdotedvect}\marg{kernel1}\marg{indvar}\marg{kernel2}\\ + \cs{DervectdoteDvect}\marg{kernel1}\marg{indvar}\marg{kernel2}} +\dervectdotsdvect{A}{t}{B} \\ +\DervectdotsDvect{A}{t}{B} \\ +\dervectdotedvect{A}{t}{B} \\ +\DervectdoteDvect{A}{t}{B} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\dervectdotsdpos} +% \DescribeMacro{\DervectdotsDpos} +% \DescribeMacro{\dervectdotedpos} +% \DescribeMacro{\DervectdoteDpos} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=dot product of the derivative of a vector and the + differential of a position vector using symbolic components or expanded as a sum \\ + \cs{dervectdotsdpos}\marg{kernel}\marg{indvar}\\ + \cs{DervectdotsDpos}\marg{kernel}\marg{indvar}\\ + \cs{dervectdotedpos}\marg{kernel}\marg{indvar}\\ + \cs{DervectdoteDpos}\marg{kernel}\marg{indvar}} +\dervectdotsdpos{A}{t} \\ +\DervectdotsDpos{A}{t} \\ +\dervectdotedpos{A}{t} \\ +\DervectdoteDpos{A}{t} +\end{tcblisting} +%\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. \\ +% +% \DescribeMacro{\ezero} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=basis vectors with lower indices 0 to 4 + (use \cs{ek} or \cs{e} for indices > 4)\\ \cs{zero}} +\ezero \(\cdots\) \efour +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\uezero} +%\if false +%<*example> +%\fi +\begin{tcblisting}{title=normalized basis vectors with lower + indices 0 to 4 (use \cs{uek} or \cs{ue} for indices > 4)\\ \cs{uezero}} +\uezero \(\cdots\) \uefour +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\ezerozero} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=basis bivectors with lower indices + (use \cs{ek} or \cs{e} for indices > 4)\\ \cs{ezerozero}} +\ezerozero \(\cdots\) \efourfour +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\euzero} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=basis vectors with upper indices 0 to 4 + (use \cs{euk} or \cs{eu} for indices > 4)\\ \cs{euzero}} +\euzero \(\cdots\) \eufour +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\euzerozero} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=basis bivectors with upper indices + (use \cs{euk} or \cs{eu} for indices > 4)\\ \cs{euzerozero}} +\euzerozero \(\cdots\) \eufourfour +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\gzero} +% \DescribeMacro{\guzero} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=basis vectors with \(\gamma\) as the kernel + (use \cs{guk} or \cs{gu} for indices > 4)\\ \cs{gzero} or \cs{guzero}} +\gzero \(\cdots\) \gfour \\ +\guzero \(\cdots\) \gufour +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\gzerozero} +% \DescribeMacro{\guzerozero} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=basis bivectors with \(\gamma\) as the kernel + (use \cs{guk} or \cs{gu} for indices > 4)\\ \cs{gzerozero} or \cs{guzerozero}} +\gzerozero \(\cdots\) \gfourfour \\ +\guzerozero \(\cdots\) \gufourfour +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\mivector} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=generic command for vectors formatted as in \mi \\ + \cs{mivector}\oarg{printeddelimiter}\marg{commadelimitedlistofcomps}\oarg{unit}} +\begin{align*} + \msub{u}{\mu} &= \mivector{\ezero,\eone,\etwo,\ethree} \\ + \vect{v} &= \mivector{1,3,5}[\m\per\s] \\ + \vect{E} &= \mivector{\oofpezmathsymbol \frac{Q}{\msup{x}{2}},0,0} +\end{align*} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\colvector} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=typesets column vectors\\ + \cs{colvect}\marg{commadelimitedlistofcomps}} +\colvector{\msup{x}{0},\msup{x}{1},\msup{x}{2},\msup{x}{3}} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\rowvector} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=typesets row vectors\\ + \cs{rowvect}\marg{commadelimitedlistofcomps}} +\rowvector{\msup{x}{0},\msup{x}{1},\msup{x}{2},\msup{x}{3}} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\scompscvect} +% \ntodo[Suggestion]{Allow for superscripts.} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=typesets symbolic components of column 3- or 4-vectors +(use any nonzero value for the optional argument to typeset a 4-vector\\ + \cs{scompscvect}\oarg{anynonzero}\marg{kernel}} +\begin{align*} + \vect{p} &= \scompscvect{p} \\ + \vect{p} &= \scompscvect[4]{p} +\end{align*} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\scompsrvect} +% \ntodo[Suggestion]{Allow for superscripts.} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=typesets symbolic components of row 3- or 4-vectors +(use any nonzero value for the optional argument to typeset a 4-vector\\ + \cs{scompscvect}\oarg{anynonzero}\marg{kernel}} +\begin{align*} + \vect{p} &= \scompsrvect{p} \\ + \vect{p} &= \scompsrvect[4]{p} +\end{align*} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \subsection{Physical Constants} +% \subsubsection{Defining Physical Constants} +% \DescribeMacro{\newphysicsconstant} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{listing only,title=define a physical constant\\ + \cs{newphysicsconstant}\marg{symbol}\marg{value}\marg{foobar}\marg{\baseunits} + \oarg{\drvdunits}\oarg{\tradunits}} +Here is how \oofpez (the Coulomb constant) is defined internally. +\newphysicsconstant{oofpez} +{\ensuremath{\frac{1}{\phantom{_o}4\pi\ssub{\epsilon}{o}}}} +{\scin[9]{9}} +{\ensuremath{\m\cubed\usk\kg\usk\s^{-4}\usk\A\rpsquared}} +[\m\per\farad] +[\newton\usk\m\squared\per\coulomb\squared] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% Using this command causes several things to happen. +% \begin{itemize} +% \item A command |\physconstantmathsymbol| is created that expresses +% \textbf{only} the constant's mathematical symbol. +% \item A command |\physconstantvalue| is created that expresses +% \textbf{only} the constant's numerical value. +% \item A command |\physconstant| is created and contains the constant and units +% typeset according to the options given when \mandi\ was loaded. +% \item A command |\physconstantbaseunit| is created that expresses +% the constant and its units in \baseunits\ form. +% \item A command |\physconstantdrvdunit| is created that expresses +% the constant and its units in \drvdunits\ form. +% \item A command |\physconstanttradunit| is created that +% expresses the constant and its units in \tradunits\ form. +% \item A command |\physconstantonlybaseunit| is created that expresses +% \textbf{only} the constant's units in \baseunits\ form. +% \item A command |\physconstantonlydrvdunit| is created that +% expresses \textbf{only} the constant's units in \drvdunits\ form. +% \item A command |\physconstantonlytradunit| is created that +% expresses \textbf{only} the constant's units in \tradunits\ form. +% \end{itemize} +% None of these commands takes any arguments. +% +% \subsubsection{Predefined Physical Constants} +% \DescribeMacro{\oofpez} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Coulomb constant\\ \cs{oofpez}} +\(\oofpezmathsymbol \approx \oofpez\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\oofpezcs} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=alternate form for Coulomb constant\\ \cs{oofpezcs}} +\(\oofpezcsmathsymbol = \oofpezcs\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\epsz} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=vacuum permittivity\\ \cs{epsz}} +\(\epszmathsymbol = \epsz\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\mzofp} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Biot-Savart constant\\ \cs{mzofp}} +\(\mzofpmathsymbol = \mzofp\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\muz} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=vacuum permeability\\ \cs{muz}} +\(\muzmathsymbol = \muz\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\kboltz} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Boltzmann constant\\ \cs{kboltz}} +\(\kboltzmathsymbol \approx \kboltz\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\kboltznev} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=anternate Boltzmann constant\\ \cs{kboltznev}} +\(\kboltzmathsymbol \approx \kboltznev\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\stefan} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Stefan-Boltzmann constant\\ \cs{stefan}} +\(\stefanmathsymbol \approx \stefan\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\planck} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Planck constant\\ \cs{planck}} +\(\planckmathsymbol \approx \planck\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\plancknev} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=alternate Planck constant\\ \cs{plancknev}} +\(\planckmathsymbol \approx \plancknev\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\planckbar} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=reduced Planck constant (Dirac constant)\\ \cs{planckbar}} +\(\planckbarmathsymbol \approx \planckbar\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\planckbarnev} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=alternate reduced Planck constant (Dirac constant)\\ + \cs{planckbarnev}} +\(\planckbarmathsymbol \approx \planckbarnev\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Navogadro} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Avogadro constant\\ \cs{Navogadro}} +\(\planckbarmathsymbol \approx \Navogadro\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\bigG} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=gravitational constant\\ \cs{bigG}} +\(\bigGmathsymbol \approx \bigG\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\littleg} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Earth's surface gravitational field strength\\ \cs{littleg}} +\(\littlegmathsymbol \approx \littleg\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\clight} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=magnitude of light's velocity\\ \cs{clight}} +\(\clightmathsymbol \approx \clight\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\clightnfn} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=magnitude of light's velocity (alternate)\\ \cs{clightnfn}} +\(\clightnfn\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Ratom} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=approximate atomic radius\\ \cs{Ratom}} +\(\Ratommathsymbol \approx \Ratom\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Mproton} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=proton's mass\\ \cs{Mproton}} +\(\Mprotonmathsymbol \approx \Mproton\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\Mneutron} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=neutron's mass\\ \cs{Mneutron}} +\(\Mneutronmathsymbol \approx \Mneutron\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Mhydrogen} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=hydrogen atom's mass\\ \cs{Mhydrogen}} +\(\Mhydrogenmathsymbol \approx \Mhydrogen\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Melectron} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=electron's mass\\ \cs{Melectron}} +\(\Melectronmathsymbol \approx \Melectron\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\echarge} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=elementary charge quantum\\ \cs{echarge}} +\(\echargemathsymbol \approx \echarge\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Qelectron} +% \DescribeMacro{\qelectron} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=electron's charge\\ \cs{Qelectron} or \cs{qelectron}} +\(\qelectronmathsymbol \approx \qelectron\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\Qproton} +% \DescribeMacro{\qproton} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=proton's charge\\ \cs{Qproton} or \cs{qproton}} +\(\qprotonmathsymbol \approx \qproton\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\MEarth} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Earth's mass\\ \cs{MEarth}} +\(\MEarthmathsymbol \approx \MEarth\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\MMoon} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Moon's mass\\ \cs{MMoon}} +\(\MMoonmathsymbol \approx \MMoon\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\MSun} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Sun's mass\\ \cs{MSun}} +\(\MSunmathsymbol \approx \MSun\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\REarth} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Earth's radius\\ \cs{REarth}} +\(\REarthmathsymbol \approx \REarth\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\RMoon} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Moon's radius\\ \cs{RMoon}} +\(\RMoonmathsymbol \approx \RMoon\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\RSun} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Sun's radius\\ \cs{RSun}} +\(\RSunmathsymbol \approx \RSun\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\ESdist} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Sun-Earth distance or Earth-Sun distance\\ \cs{ESdist} or + \cs{SEdist}} +\(\ESdistmathsymbol \approx \SEdist\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\EMdist} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Earth-Moon distance or Moon-Earth distance\\ \cs{EMdist} or + \cs{MEdist}} +\(\EMdistmathsymbol \approx \EMdist\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \subsection{Astronomical Constants and Quantities} +% \DescribeMacro{\lightyear} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=various ways of denoting light years and years and parsecs + as units} +\lightyear\ or \Lightyear\ or \cyear\ or \cyr\ or \yyear\ or \yr \\ +\parsec +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\LSun} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Sun's luminosity\\ + \cs{LSun}} +\(\LSunmathsymbol \approx \LSun\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\TSun} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Sun's effective temperature\\ + \cs{TSun}} +\(\TSunmathsymbol \approx \TSun\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\MagSun} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Sun's absolute magnitude\\ + \cs{MagSun}} +\(\MagSunmathsymbol \approx \MagSun\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\magSun} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Sun's apparent magnitude\\ + \cs{magSun}} +\(\magSunmathsymbol \approx \magSun\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\Lstar} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=stellar luminosity\\ + \cs{Lstar}\oarg{object}} +\Lstar or \Lstar[Sirius] or \Lsolar +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Tstar} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=stellar and solar temperature\\ + \cs{Tstar}\oarg{object}} +\Tstar or \Tstar[Sirius] or \Tsolar +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Rstar} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=stellar and solar radius\\ + \cs{Rstar}\oarg{object}} +\Rstar or \Rstar[Sirius] or \Rsolar +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Mstar} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=stellar and solar mass\\ + \cs{Mstar}\oarg{object}} +\Mstar or \Mstar[Sirius] or \Msolar +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Fstar} +% \DescribeMacro{\fstar} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=stellar and solar flux\\ + \cs{Fstar}\oarg{object} or \cs{fstar}\oarg{object}} +\Fstar or \Fstar[Sirius] or \FSun or \Fsolar or \fstar or +\fstar[Sirius] or \fSun or \fsolar +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\Magstar} +% \DescribeMacro{\magstar} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=stellar and solar magnitude\\ + \cs{Magstar}\oarg{object} or \cs{magstar}\oarg{object}} +\Magstar or \Magstar[Sirius] or \magstar or \magstar[Sirius] or +\Magsolar or \magsolar +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Dstar} +% \DescribeMacro{\dstar} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=stellar and solar distance (or diameter)\\ + \cs{Dstar}\oarg{object} or \cs{dstar}\oarg{object}} +\Dstar or \Dstar[Sirius] or \Dsolar or \dstar or \dstar[Sirius] or +\dsolar +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \subsection{Frequently Used Fractions} +% +% \DescribeMacro{\onehalf} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=small fractions with numerator 1\\ + \cs{onehalf}} +\(\onehalf \cdots \onetenth\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\twothirds} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=small fractions with numerator 2\\ + \cs{twothirds}} +\(\twothirds \cdots \twoninths\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\threehalves} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=small fractions with numerator 3\\ + \cs{threehalves}} +\(\threehalves \cdots \threetenths\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\fourthirds} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=small fractions with numerator 4\\ + \cs{fourthirds}} +\fourthirds +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \subsection{Calculus} +% +% \DescribeMacro{\dx} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=properly typesets variables of integration (the d should + not be in italics and should be properly spaced relative to the integrand)\\ + \cs{dx}\marg{integrationvariable}} +\[ \int y^{2}\dx{y} \] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\evalfromto} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=properly typesets evaluation of definite integrals\\ + \cs{evalfromto}\marg{antiderivative}\marg{lowerlimit}\marg{upperlimit}} +\[ \evalfromto{\onethird y^3}{0}{3} \] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\evalat} +% \ntodo[Suggestion]{Combine with \cs{evaluatedat}?} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=properly typesets quantities evaluated at a + particular point or value\\ \cs{evalat}\marg{expression}\marg{evaluationpoint}} +\[ \evalat{\dbydt[x]}{t=1} \] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\evaluatedat} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=properly indicates evaluation at a particular point or + value without specifying the quantity\\ + \cs{evaluatedat}\marg{evaluationpoint}} +\[ \mbox{LMST}\evaluatedat{\longitude{0}} \] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\integral} +% \DescribeMacro{\Integral} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=typesets indefinite and definite integrals\\ + \cs{integral}\oarg{lowerlimit}\oarg{upperlimit}\marg{integrand}\marg{variable}\\ + \cs{Integral}\oarg{lowerlimit}\oarg{upperlimit}\marg{integrand}\marg{variable}} +\[ \integral{y^2}{y} \] +\[ \integral[0][3]{y^2}{y} \] +\[ \Integral{y^2}{y} \] +\[ \Integral[0][3]{y^2}{y} \] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\opensurfintegral} +% \DescribeMacro{\opensurfIntegral} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=integral over an open surface of the normal component of + a vector field\\ + \cs{opensurfintegral}\marg{surfacename}\marg{vectorname}\\ + \cs{opensurfIntegral}\marg{surfacename}\marg{vectorname}} +\[ \opensurfintegral{S}{E} \] +\[ \opensurfIntegral{S}{E} \] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\closedsurfintegral} +% \DescribeMacro{\closedsurfIntegral} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=integral over a closed surface of the normal component of + a vector field\\ + \cs{closedsurfintegral}\marg{surfacename}\marg{vectorname}\\ + \cs{closedsurfIntegral}\marg{surfacename}\marg{vectorname}} +\[ \closedsurfintegral{S}{E} \] +\[ \closedsurfIntegral{S}{E} \] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\openlineintegral} +% \DescribeMacro{\openlineIntegral} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=integral over an open path of the tangential component of + a vector field\\ + \cs{openlineintegral}\marg{pathname}\marg{vectorname}\\ + \cs{openlineIntegral}\marg{pathname}\marg{vectorname}} +\[ \openlineintegral{C}{E} \] +\[ \openlineIntegral{C}{E} \] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\closedlineintegral} +% \DescribeMacro{\closedlineIntegral} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=integral over a closed path of the tangential component of + a vector field\\ + \cs{closedlineintegral}\marg{pathname}\marg{vectorname}\\ + \cs{closedlineIntegral}\marg{pathname}\marg{vectorname}} +\[ \closedlineintegral{C}{E} \] +\[ \closedlineIntegral{C}{E} \] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% For line integrals, I have not employed the common \dx{\vect{\ell}} symbol. +% Instead, I use \(\hat{t}\dx{\ell}\) for two main reason. The first is that +% line integrals require the component of a vector that is tangent to a curve, +% and I use \(\hat{t}\) to denote a unit tangent. The second is that the new +% notation looks more like that for surface integrals. \\ +% +% \newpage +% \DescribeMacro{\dbydt} +% \DescribeMacro{\DbyDt} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=first time derivative operator with optional operand\\ + \cs{dbydt}\oarg{operand} or \cs{DbyDt}\oarg{operand}} +\[ \dbydt \] +\[ \dbydt x \] +\[ \dbydt[x] \] +\[ \DbyDt \] +\[ \DbyDt x \] +\[ \DbyDt[x] \] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\ddbydt} +% \DescribeMacro{\DDbyDt} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=second time derivative operator with optional operand\\ + \cs{ddbydt}\oarg{operand} or \cs{DDbyDt}\oarg{operand}} +\[ \ddbydt \] +\[ \ddbydt x \] +\[ \ddbydt[x] \] +\[ \DDbyDt \] +\[ \DDbyDt x \] +\[ \DDbyDt[x] \] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\pbypt} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=first time partial derivative operator with optional operand\\ + \cs{pbypt}\oarg{operand}} +\[ \pbypt \] +\[ \pbypt x \] +\[ \pbypt[x] \] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\ppbypt} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=second time partial derivative operator with optional operand\\ + \cs{ppbypt}\oarg{operand}} +\[ \ppbypt \] +\[ \ppbypt x \] +\[ \ppbypt[x] \] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\dbyd} +% \DescribeMacro{\DbyD} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=generic first derivative operator\\ + \cs{dbyd}\marg{dependentvariable}\marg{indvar} or \cs{dbyd}\marg{dependentvariable} + \marg{indvar}} +\[ \dbyd{f}{y} \] +\[ \DbyD{f}{y} \] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\ddbyd} +% \DescribeMacro{\DDbyD} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=generic second derivative operator\\ + \cs{ddbyd}\marg{dependentvariable}\marg{indvar} or \cs{ddbyd}\marg{dependentvariable} + \marg{indvar}} +\[ \ddbyd{f}{y} \] +\[ \DDbyD{f}{y} \] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\pbyp} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=generic first partial derivative operator\\ + \cs{pbyp}\marg{dependentvariable}\marg{indvar}} +\[ \pbyp{f}{y} \] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\ppbyp} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=generic second partial derivative operator\\ + \cs{ppbyp}\marg{dependentvariable}\marg{indvar}} +\[ \ppbyp{f}{y} \] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\divergence} +% \DescribeMacro{\curl} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=divergence and curl of a quantity (you must explicitly + provide an arrow with \cs{vect} if you want one)\\ + \cs{divergence}\marg{vector} and \cs{curl}\marg{vector}} +\divergence{\vect{E}} and \curl{\vect{E}} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\seriesfofx} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=series expansion of \(f(x)\) \\ + \cs{seriesfofx}} +\seriesfofx +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\seriesexpx} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=series expansion of \msup{e}{x} \\ + \cs{seriesexpx}} +\seriesexpx +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\seriessinx} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=series expansion of \(\sin x\) \\ + \cs{seriessinx}} +\seriessinx +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\seriescosx} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=series expansion of \(\cos x\) \\ + \cs{seriescosx}} +\seriescosx +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\seriestanx} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=series expansion of \(\tan x\) \\ + \cs{seriestanx}} +\seriestanx +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\seriesatox} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=series expansion of \msup{a}{x} \\ + \cs{seriesatox}} +\seriesatox +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\serieslnoneplusx} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=series expansion of \(\ln\quant{1+x}\) \\ + \cs{serieslnoneplusx}} +\serieslnoneplusx +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\binomialseries} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=series expansion of \msup{\quant{1+x}}{n} \\ + \cs{binomialseries}} +\binomialseries +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\diracdelta} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Dirac delta function\\ + \cs{diracdelta}\marg{arg}} +\diracdelta{x} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \subsection{Other Useful Commands} +% +% \DescribeMacro{\asin} +% \DescribeMacro{\acos} +% \DescribeMacro{\atan} +% \DescribeMacro{\asec} +% \DescribeMacro{\acsc} +% \DescribeMacro{\acot} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=trigonometric and inverse trigonometric functions + not defined in \LaTeX\\ + \cs{asin} and \cs{acos} and \cs{atan} and \cs{asec} and \cs{acsc} and \cs{acot}} +\(\asin\) and \(\acos\) and \(\atan\) and \(\asec\) and \(\acsc\) and \(\acot\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\sech} +% \DescribeMacro{\csch} +% \DescribeMacro{\asinh} +% \DescribeMacro{\acosh} +% \DescribeMacro{\atanh} +% \DescribeMacro{\asech} +% \DescribeMacro{\acsch} +% \DescribeMacro{\acoth} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=hyperbolic and inverse hyperbolic functions + not defined in \LaTeX\\ + \cs{sech} and \cs{csch} and \cs{asinh} and \cs{acosh} \\ + \cs{atanh} and \cs{asech} and \cs{acsch} and \cs{acoth}} +\(\sech\) and \(\csch\) and \(\asinh\) and \(\acosh\) \\ +\(\atanh\) and \(\asech\) and \(\acsch\) and \(\acoth\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\sgn} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=signum function\\ + \cs{sgn}} +\(\sgn\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\dex} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=decimal exponentiation function (used in astrophysics)\\ + \cs{dex}} +\(\dex\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\eV} +% \DescribeMacro{\ev} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=shortcuts for \cs{electronvolt}\\ + \cs{eV} or \cs{ev}} +\eV\ or \eV +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\emf} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for electromotive force\\ + \cs{emf}} +\emf +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\logb} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=logarithms to arbitrary bases \\ + \cs{logb}\oarg{base}} +\logb 8 or \logb[2] 8 +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\cB} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=alternate symbol for magnetic field inspired by + Tom Moore \\ + \cs{cB}} +\cB\ or \vect{\cB} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\newpi} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Bob Palais' symbol for \(2\pi\) \\ + \cs{newpi}} +\newpi +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\scripty} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=use to get fonts in Griffith's electrodynamics textbook \\ + \cs{scripty}\marg{kernel}} +\scripty{r} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\flux} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for flux of a vector field\\ + \cs{flux}\oarg{label}} +\flux or \flux[E] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\abs} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=absolute value function\\ + \cs{abs}\marg{arg}} +\abs{-4} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\magof} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=magnitude of a quantity (lets you selectively use + double bars without setting the \opt{doubleabsbars} option)\\ + \cs{magof}\marg{arg}} +\magof{\vect{E}} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\dimsof} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=notation for showing the dimensions of a quantity\\ + \cs{dimsof}\marg{arg}} +\(\dimsof{\vect{v}} = L \cdot T^{-1}\) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\unitsof} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=notation for showing the units of a quantity (I propose + this notation and hope to propagate it because I could not find any standard + notation for this same idea in other sources)\\ + \cs{unitsof}\marg{arg}} +\unitsof{\vect{v}} = \m\per\s +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\quant} +% \DescribeMacro{\bquant} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=surrounds the argument with variable sized parentheses + (use \cs{bquant} to get square brackets)\\ + \cs{quant}\marg{arg} or \cs{bquant}\marg{arg}} +\quant{\oofpez} or \bquant{\oofpez} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Changein} +% \DescribeMacro{\changein} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=notation for \textit{the change in a quantity}\\ + \cs{Changein}\marg{quantity} or \cs{changein}\marg{quantity}} +\Changein{\vect{E}} or \changein{\vect{E}} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\scin} +% \DescribeMacro{\ee} +% \DescribeMacro{\EE} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=scientific notation (use \cs{ee} or \cs{EE} for computer code)\\ + \cs{scin}\oarg{mantissa}\marg{exponent}\oarg{unit}\\ + \cs{ee}\marg{mantissa}\marg{exponent}\\ + \cs{EE}\marg{mantissa}\marg{exponent}} +\scin[2.99]{8}[\m\per\s] \\ +\ee{2.99}{8} \\ +\EE{2.99}{8} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\dms} +% \DescribeMacro{\hms} +% \DescribeMacro{\clockreading} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=formatted angles and times\\ + \cs{dms}\marg{deg}\marg{min}\marg{sec}\\ + \cs{hms}\marg{hour}\marg{min}\marg{sec}\\ + \cs{clock reading}\marg{hour}\marg{minute}\marg{second}} +\dms{23}{34}{10.27} \\ +\hms{23}{34}{10.27} \\ +\clockreading{23}{34}{10.27} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\latitude} +% \DescribeMacro{\latitudeN} +% \DescribeMacro{\latitudeS} +% \DescribeMacro{\longitude} +% \DescribeMacro{\longitudeE} +% \DescribeMacro{\longitudeW} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=formatted latitude and longitude} +\latitude{+35} or \latitudeN{35} or \latitudeS{35} \\ +\longitude{-81} or \longitudeE{81} or \longitudeW{81} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\ssub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=text subscripts\\ + \cs{ssub}\marg{kernel}\marg{sub}} +\ssub{N}{AB} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\ssup} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=text superscripts\\ + \cs{ssup}\marg{kernel}\marg{sup}} +\ssup{N}{contact} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\ssud} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=text superscripts and subscripts\\ + \cs{ssud}\marg{kernel}\marg{sup}\marg{sub}} +\ssud{N}{contact}{AB} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\msub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=mathematical subscripts\\ + \cs{msub}\marg{kernel}\marg{sub}} +\msub{R}{\alpha\beta} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\msup} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=mathematical superscripts\\ + \cs{msup}\marg{kernel}\marg{sup}} +\msup{R}{\gamma} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\msud} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=mathematical superscripts and subscripts\\ + \cs{msud}\marg{kernel}\marg{sup}\marg{sub}} +\msud{\Gamma}{\gamma}{\alpha\beta} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\levicivita} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=Levi-Civita symbol\\ + \cs{levicivita}\marg{indices}} +\levicivita{ijk} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\xaxis} +% \DescribeMacro{\yaxis} +% \DescribeMacro{\zaxis} +% \DescribeMacro{\naxis} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=shortcuts for coordinate axes\\ + \cs{xaxis} or \cs{yaxis} or \cs{zaxis} or \cs{naxis}\marg{axis}} +\xaxis or \yaxis or \zaxis or \naxis{t} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\xyplane} +% \DescribeMacro{\yzplane} +% \DescribeMacro{\zxplane} +% \DescribeMacro{\yxplane} +% \DescribeMacro{\zyplane} +% \DescribeMacro{\xzplane} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=shortcuts for coordinate planes\\ + \cs{xyplane} or \cs{yzplane} or \cs{zxplane} or \cs{yzplane} or \cs{zyplane} + or \cs{xzplane}} +\xyplane or \yzplane or \zxplane or \yxplane or \zyplane or \xzplane +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\cuberoot} +% \DescribeMacro{\fourthroot} +% \DescribeMacro{\fifthroot} +% \DescribeMacro{\fsqrt} +% \DescribeMacro{\fcuberoot} +% \DescribeMacro{\ffourthroot} +% \DescribeMacro{\ffifthroot} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=frequently used roots as radicals\\ + \cs{cuberoot}\marg{arg} or \cs{fourthroot}\marg{arg} or \cs{fifthroot}\marg{arg} + or \cs{fsqrt}\marg{arg} or \cs{fcuberoot}\marg{arg} or \cs{ffourthroot}\marg{arg} + or \cs{ffifthroot}\marg{arg}} +\cuberoot{x} or \fourthroot{x} or \fifthroot{x} or \fsqrt{x} +or \fcuberoot{x} or \ffourthroot{x} or \ffifthroot{x} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\relgamma} +% \DescribeMacro{\frelgamma} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=expressions for relativistic gamma factor\\ + \cs{relgamma}\marg{arg} or \cs{frelgamma}\marg{arg}} +\relgamma{\magvect{v}} or \relgamma{(0.5c)} \\ +\frelgamma{\magvect{v}} or \frelgamma{(0.5c)} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\oosqrtomxs} +% \DescribeMacro{\oosqrtomx} +% \DescribeMacro{\ooomx} +% \DescribeMacro{\ooopx} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=expressions convenient for numerically evaluating \(\gamma\)\\ + \cs{oosqrtomxs}\marg{arg} (\textit{one over square root of one minus x squared})\\ + \cs{oosqrtomx}\marg{arg} (\textit{one over square root of one minus x})\\ + \cs{ooomx}\marg{arg} (\textit{one over one minus x})\\ + \cs{ooopx}\marg{arg} (\textit{one over one plus x})} +\oosqrtomxs{0.22} \\ +\oosqrtomx{0.22} \\ +\ooomx{0.22} \\ +\ooopx{0.11} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \subsection{Custom Operators} +% +% \DescribeMacro{\isequals} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=typesets \textit{test-for-equality} operator \\ + \cs{isequals}} +5 \isequals 3 +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\wordoperator} +% \DescribeMacro{\pwordoperator} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=typesets two lines of tiny text to be use as an + operator without using mathematical symbols\\ + \cs{wordoperator}\marg{firstline}\marg{secondline}\\ + \cs{pwordoperator}\marg{firstline}\marg{secondline}} +\wordoperator{added}{to} \\ +\pwordoperator{added}{to} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\definedas} +% \DescribeMacro{\associated} +% \DescribeMacro{\adjustedby} +% \DescribeMacro{\earlierthan} +% \DescribeMacro{\laterthan} +% \DescribeMacro{\forevery} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=frequently used word operators \\ + \cs{definedas} or \cs{associated} or \cs{adjustedby} or \cs{earlierthan} or + \cs{laterthan} or \cs{forevery}} +\definedas or \associated or \adjustedby \\ +\earlierthan or \laterthan or \forevery +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\pdefinedas} +% \DescribeMacro{\passociated} +% \DescribeMacro{\padjustedby} +% \DescribeMacro{\pearlierthan} +% \DescribeMacro{\platerthan} +% \DescribeMacro{\pforevery} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=frequently used word operators with parentheses \\ + \cs{pdefinedas} or \cs{passociated} or \cs{padjustedby} or \cs{pearlierthan} or + \cs{platerthan} or \cs{pforevery}} +\pdefinedas or \passociated or \padjustedby \\ +\pearlierthan or \platerthan or \pforevery +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\defines} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=\textit{defines} or \textit{defined by} operator \\ + \cs{defines}} +\vect{p} \defines \(\gamma m\)\vect{v} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\inframe} +% \ntodo[Suggestion]{Make the arrow's length fixed.} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=operator for indicating the coordinate representation of + a vector in a particular reference frame denoted by a capital letter\\ + \cs{inframe}\oarg{frame}} +\vect{p} \inframe[S] \momentum{\mivector{1,2,3}} \\ +\vect{p} \inframe[S'] \momentum{\mivector{\sqrt{14},0,0}} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\associates} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=\textit{associated with} or \textit{associates with} + operator (for verbal concepts) \\ + \cs{associates}} +kinetic energy \associates velocity +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\becomes} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=\textit{becomes} operator \\ + \cs{becomes}} +\(\gamma m\)\vect{v} \becomes \(m\)\vect{v} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\rrelatedto} +% \DescribeMacro{\lrelatedto} +% \DescribeMacro{\brelatedto} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=operators for directional mathematical relationships + without mathematical notation \\ + \cs{rrelatedto}\marg{loperation} \\ + \cs{lrelatedto}\marg{roperation} \\ + \cs{brelatedto}\marg{loperation}\marg{roperation}} +(flux ratio) \rrelatedto{taking logarithm} (mag diff) \\ +(flux ratio) \lrelatedto{exponentiation} (mag diff) \\ +(mag diff) \brelatedto{taking logarithm}{exponentiation}(flux ratio) +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \subsection{Commands Specific to \mi} +% +% \DescribeMacro{\momprinciple} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=momentum principle \\ + \cs{LHSmomprinciple} or \cs{RHSmomprinciple} or \cs{momprinciple}} +\LHSmomprinciple \\ +\RHSmomprinciple \\ +\momprinciple +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\energyprinciple} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=energy principle \\ + \cs{LHSenergyprinciple} or \cs{RHSenergyprinciple} or \cs{energyprinciple}} +\LHSenergyprinciple \\ +\RHSenergyprinciple \\ +\energyprinciple +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\angularmomprinciple} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=angular momentum principle \\ + \cs{LHSangularmomprinciple} or \cs{RHSangularmomprinciple} or \cs{angularmomprinciple}} +\LHSangularmomprinciple \\ +\RHSangularmomprinciple \\ +\angularmomprinciple +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\gravinteraction} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=expression for gravitational interaction \\ + \cs{gravinteraction}} +\gravinteraction +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\elecinteraction} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=xxpression for electric interaction \\ + \cs{elecinteraction}} +\elecinteraction +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Efieldofparticle} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=expression for electric field of a particle \\ + \cs{Efieldofparticle}} +\Efieldofparticle +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Bfieldofparticle} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=expression for magnetic field of a particle \\ + \cs{Bfieldofparticle}} +\Bfieldofparticle +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\Esys} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for energy of system \\ + \cs{Esys}} +\Esys +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Us} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for spring potential energy \\ + \cs{Us}} +\Us +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Ug} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for gravitational potential energy \\ + \cs{Ug}} +\Ug +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Ue} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for electric potential energy \\ + \cs{Ue}} +\Ue +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Ktrans} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for translational kinetic energy \\ + \cs{Ktrans}} +\Ktrans +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\Krot} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for rotational kinetic energy \\ + \cs{Krot}} +\Krot +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Eparticle} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for particle energy \\ + \cs{Eparticle}} +\Eparticle +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Einternal} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for internal energy \\ + \cs{Einternal}} +\Einternal +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Erest} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for rest energy \\ + \cs{Erest}} +\Erest +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Echem} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for chemical energy \\ + \cs{Echem}} +\Echem +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\Etherm} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for thermal energy \\ + \cs{Etherm}} +\Etherm +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Evib} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for vibrational energy \\ + \cs{Evib}} +\Evib +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Ephoton} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for photon energy \\ + \cs{Ephoton}} +\Ephoton +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\DUs} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for change in spring potential energy \\ + \cs{DUs}} +\DUs +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\DUg} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for change in gravitational potential energy \\ + \cs{DUg}} +\DUg +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\DUe} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for change in electric potential energy \\ + \cs{DUe}} +\DUe +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\DKtrans} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for change in translational kinetic energy \\ + \cs{DKtrans}} +\DKtrans +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\DKrot} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for change in rotational kinetic energy \\ + \cs{DKrot}} +\DKrot +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\DEparticle} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for change in particle energy \\ + \cs{DEparticle}} +\DEparticle +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\DEinternal} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for change in internal energy \\ + \cs{DEinternal}} +\DEinternal +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\DErest} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for change in rest energy \\ + \cs{DErest}} +\DErest +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\DEchem} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for change in chemical energy \\ + \cs{DEchem}} +\DEchem +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\DEtherm} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for change in thermal energy \\ + \cs{DEtherm}} +\DEtherm +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\DEvib} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for change in vibrational energy \\ + \cs{DEvib}} +\DEvib +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\DEphoton} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for change in photon energy \\ + \cs{DEphoton}} +\DEphoton +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\Usfinal} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=expression for final spring potential energy \\ + \cs{Usfinal}} +\Usfinal +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Usinitial} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=expression for initial spring potential energy \\ + \cs{Usinitial}} +\Usfinal +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Ugfinal} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=expression for final gravitational potential energy \\ + \cs{Ugfinal}} +\Ugfinal +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Uginitial} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=expression for initial gravitational potential energy \\ + \cs{Uginitial}} +\Ugfinal +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\Uefinal} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=expression for final electric potential energy \\ + \cs{Uefinal}} +\Uefinal +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Ueinitial} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=expression for initial electric potential energy \\ + \cs{Ueinitial}} +\Uefinal +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\ks} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=symbol for spring stiffness \\ + \cs{ks}} +\ks +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\Fnet} +% \DescribeMacro{\Fnetext} +% \DescribeMacro{\Fnetsys} +% \DescribeMacro{\Fsub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=various symbols for net force \\ + \cs{Fnet} or \cs{Fnetext} or \cs{Fnetsys} or \cs{Fsub}\marg{label}} +\Fnet or \Fnetext or \Fnetsys or \Fsub{ball,bat} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% +% \DescribeMacro{\Tnet} +% \DescribeMacro{\Tnetext} +% \DescribeMacro{\Tnetsys} +% \DescribeMacro{\Tsub} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=various symbols for net torque \\ + \cs{Tnet} or \cs{Tnetext} or \cs{Tnetsys} or \cs{Tsub}\marg{label}} +\Tnet or \Tnetext or \Tnetsys or \Tsub{ball,bat} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\vpythonline} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=single line of VPython code used inline\\ + \cs{vpythonline}\marg{vpythoncode}} +\vpythonline{from visual import *} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeEnv{vpythonblock} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=environment for a block of VPython code\\ + \cs{begin\{vpythonblock\}}\\ + \meta{vpythoncode}\\ + \cs{end\{vpythonblock\}}} +\begin{vpythonblock} + from visual import * + sphere(center=pos(1,2,3),color=color.green) + MyArrow=arrow(pos=earth.pos, axis=fscale*Fnet, color=color.green) + print ("arrow.pos = "), arrow.pos +\end{vpythonblock} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\vpythonfile} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=file in the current directory containing VPython code\\ + \cs{vpythonfile}\meta{filename}} +\vpythonfile{vdemo.py} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \subsection{Boxes and Environments} +% +% \DescribeMacro{\emptyanswer} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{listing only, title=empty space for filling answer boxes so + there is nothing to see\\ \cs{emptyanswer}\oarg{wdth}\oarg{hght}} +\emptyanswer[0.75][0.2] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeEnv{activityanswer} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=main environment for typesetting boxed answers\\ + \cs{begin\{activityanswer\}}\oarg{bgclr}\oarg{frmclr}\oarg{txtclr}\oarg{wdth}\oarg{hght} + \\ + \meta{content}\\ + \cs{end\{activityanswer\}}} +\begin{activityanswer} + Lorem ipsum dolor sit amet, consectetuer adipiscing elit. + Morbi commodo, ipsum sed pharetra gravida, orci magna + rhoncus neque, id pulvinar odio lorem non turpis. Nullam + sit amet enim. +\end{activityanswer} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeEnv{adjactivityanswer} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=like \cs{activityanswer} but adjusts vertically to + tightly surround text\\ +\cs{begin\{adjactivityanswer\}} +\oarg{bgclr}\oarg{frmclr}\oarg{txtclr}\oarg{wdth}\oarg{hght} \\ + \meta{content}\\ + \cs{end\{adjactivityanswer\}}} +\begin{adjactivityanswer} + Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi + commodo, ipsum sed pharetra gravida, orci magna rhoncus neque, + id pulvinar odio lorem non turpis. Nullam sit amet enim. + Suspendisse id velit vitae ligula volutpat condimentum. Aliquam + erat volutpat. Sed quis velit. Nulla facilisi. Nulla libero. + Vivamus pharetra posuere sapien. Nam consectetuer. Sed aliquam, + nunc eget euismod ullamcorper, lectus nunc ullamcorper orci, + fermentum bibendum enim nibh eget ipsum. Donec porttitor ligula + eu dolor. Maecenas vitae nulla consequat libero cursus venenatis. + Nam magna enim, accumsan eu, blandit sed, blandit a, eros. +\end{adjactivityanswer} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\emptybox} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=provides a fixed-size box with optional text\\ + \cs{emptybox}\oarg{txt}\oarg{bgclr}\oarg{frmclr}\oarg{txtclr}\oarg{wdth}\oarg{hght}} +\emptybox[Lorem ipsum dolor sit amet, consectetuer adipiscing elit. +Morbi commodo, ipsum sed pharetra gravida, orci magna rhoncus neque, +id pulvinar odio lorem non turpis. Nullam sit amet enim.] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\adjemptybox} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=like \cs{emptybox} but adjusts vertically to tightly surround + text\\ +\cs{adjemptybox}\oarg{txt}\oarg{bgclr}\oarg{frmclr}\oarg{txtclr}\oarg{wdth}\oarg{hght}} +\adjemptybox[Lorem ipsum dolor sit amet, consectetuer adipiscing +elit. Morbi commodo, ipsum sed pharetra gravida, orci magna rhoncus +neque, id pulvinar odio lorem non turpis. Nullam sit amet enim.] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\answerbox} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=wrapper for \cs{emptybox}\\ +\cs{answerbox}\oarg{txt}\oarg{bgclr}\oarg{frmclr}\oarg{txtclr}\oarg{wdth}\oarg{hght}} +\answerbox[Lorem ipsum dolor sit amet, consectetuer adipiscing elit. +Morbi commodo, ipsum sed pharetra gravida, orci magna rhoncus neque, +id pulvinar odio lorem non turpis. Nullam sit amet enim.] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\adjanswerbox} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=wrapper for \cs{adjemptybox}\\ +\cs{adjanswerbox}\oarg{txt}\oarg{bgclr}\oarg{frmclr}\oarg{txtclr}\oarg{wdth}\oarg{hght}} +\adjanswerbox[Lorem ipsum dolor sit amet, consectetuer adipiscing +elit. Morbi commodo, ipsum sed pharetra gravida, orci magna rhoncus +neque, id pulvinar odio lorem non turpis. Nullam sit amet enim.] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\smallanswerbox} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=answer box with height 0.10 that of current \cs{textheight} + and width 0.90 that of current \cs{linewidth}\\ + \cs{smallanswerbox}\oarg{txt}\oarg{bgclr}} +\smallanswerbox[][red] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\mediumanswerbox} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=answer box with height 0.20 that of current \cs{textheight} + and width 0.90 that of current \cs{linewidth}\\ + \cs{mediumanswerbox}\oarg{txt}\oarg{bgclr}} +\mediumanswerbox[][lightgray] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\largeanswerbox} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{listing only,title=answer box with height 0.25 that of current +\cs{textheight} and width 0.90 that of current \cs{linewidth} (too large to show here)\\ + \cs{largeanswerbox}\oarg{txt}\oarg{bgclr}} +\largeanswerbox[][lightgray] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeMacro{\largeranswerbox} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{listing only,title=answer box with height 0.33 that of current +\cs{textheight} and width 0.90 that of current \cs{linewidth} (too large to show here)\\ + \cs{largreanswerbox}\oarg{txt}\oarg{bgclr}} +\largreanswerbox[][lightgray] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\hugeanswerbox} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{listing only,title=answer box with height 0.50 that of current +\cs{textheight} and width 0.90 that of current \cs{linewidth} (too large to show here)\\ + \cs{hugeanswerbox}\oarg{txt}\oarg{bgclr}} +\hugeanswerbox[][lightgray] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\hugeranswerbox} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{listing only,title=answer box with height 0.75 that of current +\cs{textheight} and width 0.90 that of current \cs{linewidth} (too large to show here)\\ + \cs{hugeranswerbox}\oarg{txt}\oarg{bgclr}} +\hugeranswerbox[][lightgray] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\fullpageanswerbox} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{listing only,title=answer box with height 1.00 that of current +\cs{textheight} and width 0.90 that of current \cs{linewidth} (too large to show here)\\ + \cs{fullpageanswerbox}\oarg{txt}\oarg{bgclr}} +\fullpageanswerbox[][lightgray] +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeEnv{miinstructornote} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=environment for highlighting notes to instructors\\ + \cs{begin\{miinstructornote\}}\\ + \meta{content}\\ + \cs{end\{{miinstructornote}\}}} +\begin{miinstructornote} + Nunc auctor bibendum eros. Maecenas porta accumsan mauris. Etiam + enim enim, elementum sed, bibendum quis, rhoncus non, metus. Fusce + neque dolor, adipiscing sed, consectetuer et, lacinia sit amet, + quam. Suspendisse wisi quam, consectetuer in, blandit sed, + suscipit eu, eros. Etiam ligula enim, tempor ut, blandit nec, + mollis eu, lectus. Nam cursus. Vivamus iaculis. Aenean risus + purus, pharetra in, blandit quis, gravida a, turpis. Donec nisl. + Aenean eget mi. Fusce mattis est id diam. Phasellus faucibus + interdum sapien. +\end{miinstructornote} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeEnv{mistudentnote} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=environment for highlighting notes to students\\ + \cs{begin\{studentnote\}}\\ + \meta{content}\\ + \cs{end\{{studentnote}\}}} +\begin{mistudentnote} + Nunc auctor bibendum eros. Maecenas porta accumsan mauris. Etiam + enim enim, elementum sed, bibendum quis, rhoncus non, metus. Fusce + neque dolor, adipiscing sed, consectetuer et, lacinia sit amet, + quam. Suspendisse wisi quam, consectetuer in, blandit sed, + suscipit eu, eros. Etiam ligula enim, tempor ut, blandit nec, + mollis eu, lectus. Nam cursus. Vivamus iaculis. Aenean risus + purus, pharetra in, blandit quis, gravida a, turpis. Donec nisl. + Aenean eget mi. Fusce mattis est id diam. Phasellus faucibus + interdum sapien. +\end{mistudentnote} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeEnv{miderivation} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=fancy environment for mathematical derivations based on + |align| environment\\ + \cs{begin\{miderivation\}}\\ + \meta{content}\\ + \cs{end\{miderivation\}}} +\begin{miderivation} + \gamma &= \relgamma{\magvect{v}} + && \text{given} \\ + \msup{\gamma}{2}&= \ooomx{\msup{(\frac{\magvect{v}}{c})}{2}} + &&\text{square both sides}\\ + \frac{1}{\msup{\gamma}{2}}&=1-\msup{(\frac{\magvect{v}}{c})}{2} + &&\text{reciprocal of + both sides} \\ + \msup{(\frac{\magvect{v}}{c})}{2}&=1-\frac{1}{\msup{\gamma}{2}} + &&\text{rearrange} \\ + \frac{\magvect{v}}{c}&=\sqrt{1-\frac{1}{\msup{\gamma}{2}}} + &&\text{square root of both sides} +\end{miderivation} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeEnv{bwinstructornote} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=environment for highlighting notes to instructors\\ + \cs{begin\{bwinstructornote\}}\\ + \meta{content}\\ + \cs{end\{{bwinstructornote}\}}} +\begin{bwinstructornote} + Nunc auctor bibendum eros. Maecenas porta accumsan mauris. Etiam + enim enim, elementum sed, bibendum quis, rhoncus non, metus. Fusce + neque dolor, adipiscing sed, consectetuer et, lacinia sit amet, + quam. Suspendisse wisi quam, consectetuer in, blandit sed, + suscipit eu, eros. Etiam ligula enim, tempor ut, blandit nec, + mollis eu, lectus. Nam cursus. Vivamus iaculis. Aenean risus + purus, pharetra in, blandit quis, gravida a, turpis. Donec nisl. + Aenean eget mi. Fusce mattis est id diam. Phasellus faucibus + interdum sapien. +\end{bwinstructornote} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeEnv{bwstudentnote} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=environment for highlighting notes to students\\ + \cs{begin\{bwstudentnote\}}\\ + \meta{content}\\ + \cs{end\{{bwstudentnote}\}}} +\begin{bwstudentnote} + Nunc auctor bibendum eros. Maecenas porta accumsan mauris. Etiam + enim enim, elementum sed, bibendum quis, rhoncus non, metus. Fusce + neque dolor, adipiscing sed, consectetuer et, lacinia sit amet, + quam. Suspendisse wisi quam, consectetuer in, blandit sed, + suscipit eu, eros. Etiam ligula enim, tempor ut, blandit nec, + mollis eu, lectus. Nam cursus. Vivamus iaculis. Aenean risus + purus, pharetra in, blandit quis, gravida a, turpis. Donec nisl. + Aenean eget mi. Fusce mattis est id diam. Phasellus faucibus + interdum sapien. +\end{bwstudentnote} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \DescribeEnv{bwderivation} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=fancy environment for mathematical derivations based on + |align| environment\\ + \cs{begin\{bwderivation\}}\\ + \meta{content}\\ + \cs{end\{bwderivation\}}} +\begin{bwderivation} + \gamma &= \relgamma{\magvect{v}} + && \text{given} \\ + \msup{\gamma}{2}&= \ooomx{\msup{(\frac{\magvect{v}}{c})}{2}} + &&\text{square both sides}\\ + \frac{1}{\msup{\gamma}{2}}&=1-\msup{(\frac{\magvect{v}}{c})}{2} + &&\text{reciprocal of + both sides} \\ + \msup{(\frac{\magvect{v}}{c})}{2}&=1-\frac{1}{\msup{\gamma}{2}} + &&\text{rearrange} \\ + \frac{\magvect{v}}{c}&=\sqrt{1-\frac{1}{\msup{\gamma}{2}}} + &&\text{square root of both sides} +\end{bwderivation} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \subsection{Miscellaneous Commands} +% +% \DescribeMacro{\checkpoint} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=centered checkpoint for student discussion\\ + \cs{checkpoint}} +\checkpoint +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\image} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{listing only,title=centered figure displayed actual size with + caption\\ \cs{image}\marg{imagefilename}\marg{caption}} +\image{satellite.pdf}{Photograph of satellite} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \DescribeMacro{\sneakyone} +%\iffalse +%<*example> +%\fi +\begin{tcblisting}{title=shows factors dividing to a sneaky one\\ + \cs{sneakyone}\marg{thing}} +\sneakyone{\m} +\end{tcblisting} +%\iffalse +%</example> +%\fi +% +% \newpage +% \subsection{Experimental Commands} +% Commands defined in this section are not guaranteed to work consistently and are +% included for experimental uses only. They may or may not exist in future releases. +% Most are an attempt to simplify existing commands +% \ntodo[Question]{Should the subscript or component come first?} +% for subscripted vectors. +% +%\begin{center} +%\begin{tabular}{ccc} +% \multicolumn{2}{l}{Experimental Syntax} & Existing Syntax \\ +% \hline \\ +% \verb|\vecto{E}| & \vecto{E} & \verb|\vect{E}| \\ +% \verb|\vecto{E}[ball]| & \vecto{E}[ball] & \verb|\vectsub{E}{ball}| \\ +% \verb|\compvecto{E}{y}| & \compvecto{E}{y} & \verb|\compvect{E}{y}| \\ +% \verb|\compvecto{E}[ball]{x}|&\compvecto{E}[ball]{x}&\verb|\compvectsub{E}{ball}{x}| \\ +% \verb|\scompsvecto{E}| & \scompsvecto{E} & \verb|\scompsvect{E}| \\ +% \verb|\scompsvecto{E}[ball]|&\scompsvecto{E}[ball] & \verb|\scompsvectsub{E}{ball}| \\ +% \verb|\compposo{y}| & \compposo{y} & \verb|\comppos{y}| \\ +% \verb|\compposo[ball]{y}| & \compposo[ball]{y} & \verb|\comppossub{ball}{y}| \\ +% \verb|\scompsposo| & \scompsposo & \verb|\scompspos| \\ +% \verb|\scompsposo[ball]| & \scompsposo[ball] & \verb|\scompspossub{ball}| +%\end{tabular} +%\end{center} +% +% \StopEventually{} +% +% \newpage +% \section{Source Code} +% +% \iffalse +%<*package> +% \fi +% Note the packages that must be present. +% \begin{macrocode} +\RequirePackage[intlimits]{amsmath} +\RequirePackage{amssymb} +\RequirePackage{bigints} +\RequirePackage{cancel} +\RequirePackage[leftbars,color]{changebar} +\RequirePackage[dvipsnames]{xcolor} +\RequirePackage{environ} +\RequirePackage{etoolbox} +\RequirePackage{extarrows} +\RequirePackage{filehook} +\RequirePackage[T1]{fontenc} +\RequirePackage{graphicx} +\RequirePackage{epstopdf} +\RequirePackage{textcomp} +\RequirePackage{letltxmacro} +\RequirePackage{listings} +\RequirePackage[framemethod=TikZ]{mdframed} +\RequirePackage[amssymb,cdot,derivedinbase,derived,thickqspace]{SIunits} +\RequirePackage{suffix} +\RequirePackage{xargs} +\RequirePackage{xparse} +\RequirePackage{xspace} +\RequirePackage{ifthen} +\RequirePackage{calligra} +\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} +\DeclareMathAlphabet{\mathpzc}{OT1}{pzc}{m}{it} +\usetikzlibrary{shadows} +\definecolor{vpythoncolor}{rgb}{0.95,0.95,0.95} +\newcommand{\lstvpython}{\lstset{language=Python,numbers=left,numberstyle=\tiny, + backgroundcolor=\color{vpythoncolor},upquote=true,breaklines}} +\newboolean{@optitalicvectors} +\newboolean{@optdoubleabsbars} +\newboolean{@optbaseunits} +\newboolean{@optdrvdunits} +\setboolean{@optitalicvectors}{false} +\setboolean{@optdoubleabsbars}{false} +\setboolean{@optbaseunits}{false} +\setboolean{@optdrvdunits}{false} +\DeclareOption{italicvectors}{\setboolean{@optitalicvectors}{true}} +\DeclareOption{doubleabsbars}{\setboolean{@optdoubleabsbars}{true}} +\DeclareOption{baseunits}{\setboolean{@optbaseunits}{true}} +\DeclareOption{drvdunits}{\setboolean{@optdrvdunits}{true}} +\ProcessOptions\relax +% \end{macrocode} +% +% \newpage +% \noindent This block of code corrects conflicts with SIunits. +% \begin{macrocode} +\AtBeginOfPackageFile*{SIunits}{% + \csundef{power} + \csundef{square} + \newcommand*{\square}[1]{\ensuremath{\mathrm{#1}^{2}}} + \renewcommand*{\squared}{\ensuremath{^{\mathrm{2}}}} + \renewcommand*{\cubic}[1]{\ensuremath{\mathrm{#1}^{3}}} + \renewcommand*{\cubed}{\ensuremath{^{\mathrm{3}}}} + \renewcommand*{\fourth}[1]{\ensuremath{\mathrm{#1}^{4}}} + \renewcommand*{\reciprocal}[1]{\ensuremath{\mathrm{#1}^{\SIminus1}}} + \renewcommand*{\rp}{\ensuremath{^{\mathrm{\SIminus1}}}} + \renewcommand*{\rpsquare}[1]{\ensuremath{\mathrm{#1}^{\SIminus2}}} + \renewcommand*{\rpsquared}{\ensuremath{^{\mathrm{\SIminus2}}}} + \renewcommand*{\rpcubic}[1]{\ensuremath{\mathrm{#1}^{\SIminus3}}} + \renewcommand*{\rpcubed}{\ensuremath{^{\mathrm{\SIminus3}}}} + \renewcommand*{\rpfourth}[1]{\ensuremath{\mathrm{#1}^{\SIminus4}}} + \typeout{mandi: SIunits conflicts fixed, but don't use \protect\square\space.} +}% +% \end{macrocode} +% +% \begin{macro}{\newphysicsquantity} +% \begin{macro}{\newphysicsconstant} +% \begin{macro}{\hereusebaseunit} +% \begin{macro}{\hereusedrvdunit} +% \begin{macro}{\hereusetradunit} +% \begin{macro}{\usebaseunit} +% \begin{macro}{\usedrvdunit} +% \begin{macro}{\usetradunit} +% \begin{macro}{\perpusebaseunit} +% \begin{macro}{\perpusedrvdunit} +% \begin{macro}{\perpusetradunit} +% Define a new named physics quantity or physical constant and commands for +% selecting units. My thanks to Ulrich Diez for contributing this code. +% \begin{macrocode} +\newcommand\mi@exchangeargs[2]{#2#1}% +\newcommand\mi@name{}% +\long\def\mi@name#1#{\romannumeral0\mi@innername{#1}}% +\newcommand\mi@innername[2]{% + \expandafter\mi@exchangeargs\expandafter{\csname#2\endcsname}{#1}}% +\begingroup +\@firstofone{% + \endgroup + \newcommand\mi@forkifnull[3]{% + \romannumeral\iffalse{\fi\expandafter\@secondoftwo\expandafter + {\expandafter{\string#1}\expandafter\@secondoftwo\string}% + \expandafter\@firstoftwo\expandafter{\iffalse}\fi0 #3}{0 #2}}}% +\newcommand\selectbaseunit[3]{#1} +\newcommand\selectdrvdunit[3]{#2} +\newcommand\selecttradunit[3]{#3} +\newcommand\selectunit{} +\newcommand\perpusebaseunit{\let\selectunit=\selectbaseunit} +\newcommand\perpusedrvdunit{\let\selectunit=\selectdrvdunit} +\newcommand\perpusetradunit{\let\selectunit=\selecttradunit} +\newcommand\hereusebaseunit[1]{% + \begingroup\perpusebaseunit#1\endgroup}% +\newcommand\hereusedrvdunit[1]{% + \begingroup\perpusedrvdunit#1\endgroup}% +\newcommand\hereusetradunit[1]{% + \begingroup\perpusetradunit#1\endgroup}% +\newenvironment{usebaseunit}{\perpusebaseunit}{}% +\newenvironment{usedrvdunit}{\perpusedrvdunit}{}% +\newenvironment{usetradunit}{\perpusetradunit}{}% +\newcommand*\newphysicsquantity{\definephysicsquantity{\newcommand}} +\newcommand*\redefinephysicsquantity{\definephysicsquantity{\renewcommand}} +\newcommandx\definephysicsquantity[5][4=,5=]{% + \innerdefinewhatsoeverquantityfork{#3}{#4}{#5}{#1}{#2}{}{[1]}{##1}}% +\newcommand*\newphysicsconstant{\definephysicsconstant{\newcommand}} +\newcommand*\redefinephysicsconstant{\definephysicsconstant{\renewcommand}} +\newcommandx\definephysicsconstant[7][6=,7=]{% + \innerdefinewhatsoeverquantityfork{#5}{#6}{#7}{#1}{#2}{#3}{}{#4}}% +\newcommand\innerdefinewhatsoeverquantityfork[3]{% + \expandafter\innerdefinewhatsoeverquantity\romannumeral0% + \mi@forkifnull{#3}{\mi@forkifnull{#2}{{#1}}{{#2}}{#1}}% + {\mi@forkifnull{#2}{{#1}}{{#2}}{#3}}{#1}}% +\newcommand\innerdefinewhatsoeverquantity[8]{% + \mi@name#4{#5}#7{\ensuremath{\unit{#8}{\selectunit{#3}{#1}{#2}}}}% + \mi@name#4{#5baseunit}#7{\ensuremath{\unit{#8}{#3}}}% + \mi@name#4{#5drvdunit}#7{\ensuremath{\unit{#8}{#1}}}% + \mi@name#4{#5tradunit}#7{\ensuremath{\unit{#8}{#2}}}% + \mi@name#4{#5onlyunit}{\ensuremath{\selectunit{#3}{#1}{#2}}}% + \mi@name#4{#5onlybaseunit}{\ensuremath{#3}}% + \mi@name#4{#5onlydrvdunit}{\ensuremath{#1}}% + \mi@name#4{#5onlytradunit}{\ensuremath{#2}}% + \mi@name#4{#5value}#7{\ensuremath{#8}}% + \mi@forkifnull{#7}{% + \ifx#4\renewcommand\mi@name\let{#5mathsymbol}=\relax\fi + \mi@name\newcommand{#5mathsymbol}{\ensuremath{#6}}}{}}% +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \noindent This block of code processes the options. +% \begin{macrocode} +\ifthenelse{\boolean{@optitalicvectors}} + {\typeout{mandi: You'll get italic vector kernels.}} + {\typeout{mandi: You'll get Roman vector kernels.}} +\ifthenelse{\boolean{@optdoubleabsbars}} + {\typeout{mandi: You'll get double absolute value bars.}} + {\typeout{mandi: You'll get single absolute value bars.}} +\ifthenelse{\boolean{@optbaseunits}} + {\perpusebaseunit % + \typeout{mandi: You'll get base units.}} + {\ifthenelse{\boolean{@optdrvdunits}} + {\perpusedrvdunit % + \typeout{mandi: You'll get derived units.}} + {\perpusetradunit % + \typeout{mandi: You'll get traditional units.}}} +% \end{macrocode} +% +% \noindent This block of code makes parentheses adjustable. +% \begin{macrocode} +\def\resetMathstrut@{% + \setbox\z@\hbox{% + \mathchardef\@tempa\mathcode`\[\relax + \def\@tempb##1"##2##3{\the\textfont"##3\char"}% + \expandafter\@tempb\meaning\@tempa \relax + }% + \ht\Mathstrutbox@\ht\z@ \dp\Mathstrutbox@\dp\z@} +\begingroup + \catcode`(\active \xdef({\left\string(} + \catcode`)\active \xdef){\right\string)} +\endgroup +\mathcode`(="8000 \mathcode`)="8000 +\typeout{mandi: parentheses made adjustable in math mode.} +% \end{macrocode} +% +% \noindent This block of code fixes square root symbol. +% \begin{macrocode} +\let\oldr@@t\r@@t +\def\r@@t#1#2{% +\setbox0=\hbox{\(\oldr@@t#1{#2\,}\)}\dimen0=\ht0 +\advance\dimen0-0.2\ht0 +\setbox2=\hbox{\vrule height\ht0 depth -\dimen0}% +{\box0\lower0.4pt\box2}} +\LetLtxMacro{\oldsqrt}{\sqrt} +\renewcommand*{\sqrt}[2][\relax]{\oldsqrt[#1]{#2}} +\typeout{mandi: square root symbol fixed.} +% \end{macrocode} +% +% \begin{macro}{\m} +% SI base unit of length or spatial displacement +% \begin{macrocode} +\newcommand{\m}{\metre} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\kg} +% SI base unit of mass +% \begin{macrocode} +\newcommand{\kg}{\kilogram} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\s} +% SI base unit of time or temporal displacement +% \begin{macrocode} +\newcommand{\s}{\second} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\A} +% SI base unit of electric current +% \begin{macrocode} +\newcommand{\A}{\ampere} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\K} +% SI base unit of thermodynamic temperature +% \begin{macrocode} +\newcommand{\K}{\kelvin} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\mol} +% SI base unit of amount +% \begin{macrocode} +\newcommand{\mol}{\mole} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\cd} +% SI base unit of luminous intensity +% \begin{macrocode} +\newcommand{\cd}{\candela} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\displacement} +% \begin{macrocode} +\newphysicsquantity{displacement}{\m}[\m][\m] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\mass} +% \begin{macrocode} +\newphysicsquantity{mass}{\kg}[\kg][\kg] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\duration} +% \begin{macrocode} +\newphysicsquantity{duration}{\s}[\s][\s] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\current} +% \begin{macrocode} +\newphysicsquantity{current}{\A}[\A][\A] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\temperature} +% \begin{macrocode} +\newphysicsquantity{temperature}{\K}[\K][\K] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\amount} +% \begin{macrocode} +\newphysicsquantity{amount}{\mol}[\mol][\mol] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\luminous} +% \begin{macrocode} +\newphysicsquantity{luminous}{\cd}[\cd][\cd] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\planeangle} +% \begin{macrocode} +\newphysicsquantity{planeangle}{\m\usk\reciprocal\m}[\radian][\radian] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\solidangle} +% \begin{macrocode} +\newphysicsquantity{solidangle}{\m\squared\usk\rpsquare\m}[\steradian][\steradian] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\indegrees} +% \begin{macrocode} +\newcommand{\indegrees}[1]{\ensuremath{\unit{#1}{\degree}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\inarcminutes} +% \begin{macrocode} +\newcommand{\inarcminutes}[1]{\ensuremath{\unit{#1}{\arcminute}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\inarcseconds} +% \begin{macrocode} +\newcommand{\inarcseconds}[1]{\ensuremath{\unit{#1}{\arcsecond}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\ineV} +% \begin{macrocode} +\newcommand{\ineV}[1]{\ensuremath{\unit{#1}{\electronvolt}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\inAU} +% \begin{macrocode} +\newcommand{\inAU}[1]{\ensuremath{\unit{#1}{AU}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\velocityc} +% \begin{macrocode} +\newcommand{\velocityc}[1]{\ensuremath{#1c}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\velocity} +% \begin{macrocode} +\newphysicsquantity{velocity}{\m\usk\reciprocal\s}[\m\usk\reciprocal\s][\m\per\s] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\acceleration} +% \begin{macrocode} +\newphysicsquantity{acceleration}{\m\usk\s\rpsquared}[\newton\per\kg][\m\per\s\squared] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\gamman} +% \begin{macrocode} +\newcommand{\gamman}[1]{\ensuremath{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\momentum} +% \begin{macrocode} +\newphysicsquantity{momentum}{\m\usk\kg\usk\reciprocal\s}[\newton\usk\s][\kg\usk\m\per\s] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\impulse} +% \begin{macrocode} +\newphysicsquantity{impulse}{\m\usk\kg\usk\reciprocal\s}[\newton\usk\s][\kg\usk\m\per\s] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\force} +% \begin{macrocode} +\newphysicsquantity{force}{\m\usk\kg\usk\s\rpsquared}[\newton][\newton] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\springstiffness} +% \begin{macrocode} +\newphysicsquantity{springstiffness}{\kg\usk\s\rpsquared}[\newton\per\m][\newton\per\m] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\springstretch} +% \begin{macrocode} +\newphysicsquantity{springstretch}{\m} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\area} +% \begin{macrocode} +\newphysicsquantity{area}{\m\squared} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\volume} +% \begin{macrocode} +\newphysicsquantity{volume}{\cubic\m} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\linearmassdensity} +% \begin{macrocode} +\newphysicsquantity{linearmassdensity}{\reciprocal\m\usk\kg}[\kg\per\m][\kg\per\m] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\areamassdensity} +% \begin{macrocode} +\newphysicsquantity{areamassdensity}{\m\rpsquared\usk\kg}[\kg\per\m\squared] +[\kg\per\m\squared] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\volumemassdensity} +% \begin{macrocode} +\newphysicsquantity{volumemassdensity}{\m\rpcubed\usk\kg}[\kg\per\m\cubed] +[\kg\per\m\cubed] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\youngsmodulus} +% \begin{macrocode} +\newphysicsquantity{youngsmodulus}{\reciprocal\m\usk\kg\usk\s\rpsquared} +[\newton\per\m\squared][\pascal] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\work} +% \begin{macrocode} +\newphysicsquantity{work}{\m\squared\usk\kilogram\usk\s\rpsquared}[\joule] +[\newton\usk\m] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\energy} +% \begin{macrocode} +\newphysicsquantity{energy}{\m\squared\usk\kilogram\usk\s\rpsquared}[\joule] +[\newton\usk\m] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\power} +% \begin{macrocode} +\newphysicsquantity{power}{\m\squared\usk\kg\usk\s\rpcubed}[\watt][\joule\per\s] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\angularvelocity} +% \begin{macrocode} +\newphysicsquantity{angularvelocity}{\radian\usk\reciprocal\s}[\radian\per\s] +[\radian\per\s] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\angularacceleration} +% \begin{macrocode} +\newphysicsquantity{angularacceleration}{\radian\usk\s\rpsquared}[\radian\per\s\squared] +[\radian\per\s\squared] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\angularmomentum} +% \begin{macrocode} +\newphysicsquantity{angularmomentum}{\m\squared\usk\kg\usk\reciprocal\s}[\joule\usk\s] +[\kg\usk\m\squared\per\s] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\momentofinertia} +% \begin{macrocode} +\newphysicsquantity{momentofinertia}{\m\squared\usk\kg}[\joule\usk\s\squared] +[\kg\usk\m\squared] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\torque} +% \begin{macrocode} +\newphysicsquantity{torque}{\m\squared\usk\kg\usk\s\rpsquared}[\joule\per\radian] +[\newton\usk\m] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\entropy} +% \begin{macrocode} +\newphysicsquantity{entropy}{\m\squared\usk\kilogram\usk\s\rpsquared\usk\reciprocal\K} +[\joule\per\K][\joule\per\K] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\wavelength} +% \begin{macrocode} +\newphysicsquantity{wavelength}{\m}[\m][\m] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\wavenumber} +% \begin{macrocode} +\newphysicsquantity{wavenumber}{\reciprocal\m}[\per\m][\per\m] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\frequency} +% \begin{macrocode} +\newphysicsquantity{frequency}{\reciprocal\s}[\hertz][\hertz] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\angularfrequency} +% \begin{macrocode} +\newphysicsquantity{angularfrequency}{\radian\usk\reciprocal\s}[\radian\per\s] +[\radian\per\s] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\charge} +% \begin{macrocode} +\newphysicsquantity{charge}{\A\usk\s}[\coulomb][\coulomb] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\permittivity} +% \begin{macrocode} +\newphysicsquantity{permittivity}{\m\rpcubed\usk\reciprocal\kg\usk\s^{4}\usk\A\squared} +[\farad\per\m][\coulomb\squared\per\newton\usk\m\squared] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\permeability} +% \begin{macrocode} +\newphysicsquantity{permeability}{\m\usk\kg\usk\s\rpsquared\usk\A\rpsquared} +[\henry\per\m][\tesla\usk\m\per\A] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\electricfield} +% \begin{macrocode} +\newphysicsquantity{electricfield}{\m\usk\kg\usk\s\rpcubed\usk\reciprocal\A}[\volt\per\m] +[\newton\per\coulomb] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\electricdipolemom} +% \begin{macrocode} +\newphysicsquantity{electricdipolemom}{\m\usk\s\usk\A}[\coulomb\usk\m][\coulomb\usk\m] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\magneticfield} +% \begin{macrocode} +\newphysicsquantity{magneticfield}{\kg\usk\s\rpsquared\usk\reciprocal\A}[\tesla] +[\newton\per\coulomb\usk(\m\per\s)] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\cmagneticfield} +% \begin{macrocode} +\newphysicsquantity{cmagneticfield}{\m\usk\kg\usk\s\rpcubed\usk\reciprocal\A}[\volt\per\m] +[\newton\per\coulomb] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\lv} +% \begin{macro}{\rv} +% \begin{macrocode} +\newcommand{\lv}{\ensuremath{\left\langle}} +\newcommand{\rv}{\ensuremath{\right\rangle}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\symvect} +% \begin{macrocode} +\newcommand{\symvect}{\mivector} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\ncompsvect} +% \begin{macrocode} +\newcommand{\ncompsvect}{\mivector} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\magvectncomps} +% Written in LaTeX3 +% \begin{macrocode} +\ExplSyntaxOn +\NewDocumentCommand{\magvectncomps}{ m O{} } + {% + \sum_of_squares:nn { #1 }{ #2 } + }% + +\cs_new:Npn \sum_of_squares:nn #1 #2 + {% + \tl_if_empty:nTF { #2 } + {% + \clist_set:Nn \l_tmpa_clist { #1 } + \ensuremath{% + \sqrt{(\clist_use:Nnnn \l_tmpa_clist { )^2+( } { )^2+( } { )^2+( } )^2 } + }% + }% + {% + \clist_set:Nn \l_tmpa_clist { #1 } + \ensuremath{% + \sqrt{(\clist_use:Nnnn \l_tmpa_clist {\;{ #2 })^2+(} {\;{ #2 })^2+(} + {\;{ #2 })^2+(} \;{ #2 })^2} + }% + }% + }% +\ExplSyntaxOff +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\zerovect} +% \begin{macro}{\ncompszerovect} +% \begin{macrocode} +\newcommand{\zerovect}{\vect{0}} +\newcommand{\ncompszerovect}{\mivector{0,0,0}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\vect} +% \begin{macrocode} +\ifthenelse{\boolean{@optitalicvectors}} + {\newcommand{\vect}[1]{\ensuremath{\vec{#1}}}} + {\newcommand{\vect}[1]{\ensuremath{\vec{\mathrm{#1}}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\magvect} +% \begin{macrocode} +\ifthenelse{\boolean{@optdoubleabsbars}} + {\newcommand{\magvect}[1]{\ensuremath{\magof{\vect{#1}}}}} + {\newcommand{\magvect}[1]{\ensuremath{\abs{\vect{#1}}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\dmagvect} +% \begin{macro}{\Dmagvect} +% \begin{macrocode} +\newcommand{\dmagvect}[1]{\ensuremath{\dx{\magvect{#1}}}} +\newcommand{\Dmagvect}[1]{\ensuremath{\Delta\!\magvect{#1}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\dirvect} +% \begin{macrocode} +\ifthenelse{\boolean{@optitalicvectors}} + {\newcommand{\dirvect}[1]{\ensuremath{\widehat{{#1}}}}} + {\newcommand{\dirvect}[1]{\ensuremath{\widehat{\mathrm{#1}}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\compvect} +% \begin{macrocode} +\ifthenelse{\boolean{@optitalicvectors}} + {\newcommand{\compvect}[2]{\ensuremath{\ssub{#1}{\(#2\)}}}} + {\newcommand{\compvect}[2]{\ensuremath{\ssub{\mathrm{#1}}{\(#2\)}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\scompsvect} +% \begin{macrocode} +\newcommand{\scompsvect}[1]{\ensuremath{\lv + \compvect{#1}{x}, + \compvect{#1}{y}, + \compvect{#1}{z}\rv}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\magvectscomps} +% \begin{macrocode} +\newcommand{\magvectscomps}[1]{\ensuremath{\sqrt{ + \msup{\compvect{#1}{x}}{2}+ + \msup{\compvect{#1}{y}}{2}+ + \msup{\compvect{#1}{z}}{2}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\dvect} +% \begin{macro}{\Dvect} +% \begin{macrocode} +\newcommand{\dvect}[1]{\ensuremath{\mathrm{d}\vect{#1}}} +\newcommand{\Dvect}[1]{\ensuremath{\Delta\vect{#1}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\dirdvect} +% \begin{macro}{\dirDvect} +% \begin{macrocode} +\newcommand{\dirdvect}[1]{\ensuremath{\widehat{\dvect{#1}}}} +\newcommand{\dirDvect}[1]{\ensuremath{\widehat{\Dvect{#1}}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\ddirvect} +% \begin{macro}{\Ddirvect} +% \begin{macrocode} +\newcommand{\ddirvect}[1]{\ensuremath{\mathrm{d}\dirvect{E}}} +\newcommand{\Ddirvect}[1]{\ensuremath{\Delta\dirvect{E}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\magdvect} +% \begin{macro}{\magDvect} +% \begin{macrocode} +\ifthenelse{\boolean{@optdoubleabsbars}} + {\newcommand{\magdvect}[1]{\ensuremath{\magof{\dvect{#1}}}} + \newcommand{\magDvect}[1]{\ensuremath{\magof{\Dvect{#1}}}}} + {\newcommand{\magdvect}[1]{\ensuremath{\abs{\dvect{#1}}}} + \newcommand{\magDvect}[1]{\ensuremath{\abs{\Dvect{#1}}}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\compdvect} +% \begin{macro}{\compDvect} +% \begin{macrocode} +\newcommand{\compdvect}[2]{\ensuremath{\mathrm{d}\compvect{#1}{#2}}} +\newcommand{\compDvect}[2]{\ensuremath{\Delta\compvect{#1}{#2}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\scompsdvect} +% \begin{macro}{\scompsDvect} +% \begin{macrocode} +\newcommand{\scompsdvect}[1]{\ensuremath{\lv + \compdvect{#1}{x}, + \compdvect{#1}{y}, + \compdvect{#1}{z}\rv}} +\newcommand{\scompsDvect}[1]{\ensuremath{\lv + \compDvect{#1}{x}, + \compDvect{#1}{y}, + \compDvect{#1}{z}\rv}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\dervect} +% \begin{macro}{\Dervect} +% \begin{macrocode} +\newcommand{\dervect}[2]{\ensuremath{\frac{\dvect{#1}}{\mathrm{d}{#2}}}} +\newcommand{\Dervect}[2]{\ensuremath{\frac{\Dvect{#1}}{\Delta{#2}}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\compdervect} +% \begin{macro}{\compDervect} +% \begin{macrocode} +\newcommand{\compdervect}[3]{\ensuremath{\dbyd{\compvect{#1}{#3}}{#2}}} +\newcommand{\compDervect}[3]{\ensuremath{\DbyD{\compvect{#1}{#3}}{#2}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\scompsdervect} +% \begin{macro}{\scompsDervect} +% \begin{macrocode} +\newcommand{\scompsdervect}[2]{\ensuremath{\lv + \compdervect{#1}{#2}{x}, + \compdervect{#1}{#2}{y}, + \compdervect{#1}{#2}{z}\rv}} +\newcommand{\scompsDervect}[2]{\ensuremath{\lv + \compDervect{#1}{#2}{x}, + \compDervect{#1}{#2}{y}, + \compDervect{#1}{#2}{z}\rv}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\magdervect} +% \begin{macro}{\magDervect} +% \begin{macrocode} +\ifthenelse{\boolean{@optdoubleabsbars}} + {\newcommand{\magdervect}[2]{\ensuremath{\magof{\dervect{#1}{#2}}}} + \newcommand{\magDervect}[2]{\ensuremath{\magof{\Dervect{#1}{#2}}}}} + {\newcommand{\magdervect}[2]{\ensuremath{\abs{\dervect{#1}{#2}}}} + \newcommand{\magDervect}[2]{\ensuremath{\abs{\Dervect{#1}{#2}}}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\dermagvect} +% \begin{macro}{\Dermagvect} +% \begin{macrocode} +\newcommand{\dermagvect}[2]{\ensuremath{\dbyd{\magvect{#1}}{#2}}} +\newcommand{\Dermagvect}[2]{\ensuremath{\DbyD{\magvect{#1}}{#2}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\scompspos} +% \begin{macrocode} +\newcommand{\scompspos}{\mivector{x,y,z}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\comppos} +% \begin{macrocode} +\newcommand{\comppos}[1]{\ensuremath{{#1}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\scompsdpos} +% \begin{macro}{\scompsDpos} +% \begin{macrocode} +\newcommand{\scompsdpos}{\mivector{\mathrm{d}x,\mathrm{d}y,\mathrm{d}z}} +\newcommand{\scompsDpos}{\mivector{\Delta x,\Delta y,\Delta z}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\compdpos} +% \begin{macro}{\compDpos} +% \begin{macrocode} +\newcommand{\compdpos}[1]{\ensuremath{\mathrm{d}{#1}}} +\newcommand{\compDpos}[1]{\ensuremath{\Delta{#1}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\scompsderpos} +% \begin{macro}{\scompsDerpos} +% \begin{macrocode} +\newcommand{\scompsderpos}[1]{\ensuremath{\lv + \frac{\mathrm{d}x}{\mathrm{d}{#1}},\frac{\mathrm{d}y}{\mathrm{d}{#1}}, + \frac{\mathrm{d}z}{\mathrm{d}{#1}}\rv}} +\newcommand{\scompsDerpos}[1]{\ensuremath{\lv + \frac{\Delta x}{\Delta{#1}},\frac{\Delta y}{\Delta{#1}}, + \frac{\Delta z}{\Delta{#1}}\rv}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\compderpos} +% \begin{macro}{\compDerpos} +% \begin{macrocode} +\newcommand{\compderpos}[2]{\ensuremath{\frac{\mathrm{d}{#1}}{\mathrm{d}{#2}}}} +\newcommand{\compDerpos}[2]{\ensuremath{\frac{\Delta{#1}}{\Delta{#2}}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\vectsub} +% \begin{macrocode} +\newcommand{\vectsub}[2]{\ensuremath{\ssub{\vect{#1}}{#2}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\compvectsub} +% \begin{macrocode} +\ifthenelse{\boolean{@optitalicvectors}} + {\newcommand{\compvectsub}[3]{\ensuremath{\ssub{#1}{#2,\(#3\)}}}} + {\newcommand{\compvectsub}[3]{\ensuremath{\ssub{\mathrm{#1}}{#2,\(#3\)}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\scompsvectsub} +% \begin{macrocode} +\newcommand{\scompsvectsub}[2]{\ensuremath{\lv + \compvectsub{#1}{#2}{x}, + \compvectsub{#1}{#2}{y}, + \compvectsub{#1}{#2}{z}\rv}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\magvectsub} +% \begin{macrocode} +\ifthenelse{\boolean{@optdoubleabsbars}} + {\newcommand{\magvectsub}[2]{\ensuremath{\magof{\vectsub{#1}{#2}}}}} + {\newcommand{\magvectsub}[2]{\ensuremath{\abs{\vectsub{#1}{#2}}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\magvectsubscomps} +% \begin{macrocode} +\newcommand{\magvectsubscomps}[2]{\ensuremath{\sqrt{ + \msup{\compvectsub{#1}{#2}{x}}{2}+ + \msup{\compvectsub{#1}{#2}{y}}{2}+ + \msup{\compvectsub{#1}{#2}{z}}{2}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\dirvectsub} +% \begin{macrocode} +\ifthenelse{\boolean{@optitalicvectors}} + {\newcommand{\dirvectsub}[2]{\ensuremath{\ssub{\widehat{#1}}{#2}}}} + {\newcommand{\dirvectsub}[2]{\ensuremath{\ssub{\widehat{\mathrm{#1}}}{#2}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\dvectsub} +% \begin{macro}{\Dvectsub} +% \begin{macrocode} +\newcommand{\dvectsub}[2]{\ensuremath{\mathrm{d}\vectsub{#1}{#2}}} +\newcommand{\Dvectsub}[2]{\ensuremath{\Delta\vectsub{#1}{#2}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\compdvectsub} +% \begin{macro}{\compDvectsub} +% \begin{macrocode} +\newcommand{\compdvectsub}[3]{\ensuremath{\mathrm{d}\compvectsub{#1}{#2}{#3}}} +\newcommand{\compDvectsub}[3]{\ensuremath{\Delta\compvectsub{#1}{#2}{#3}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\scompsdvectsub} +% \begin{macro}{\scompsDvectsub} +% \begin{macrocode} +\newcommand{\scompsdvectsub}[2]{\ensuremath{\lv + \compdvectsub{#1}{#2}{x}, + \compdvectsub{#1}{#2}{y}, + \compdvectsub{#1}{#2}{z}\rv}} +\newcommand{\scompsDvectsub}[2]{\ensuremath{\lv + \compDvectsub{#1}{#2}{x}, + \compDvectsub{#1}{#2}{y}, + \compDvectsub{#1}{#2}{z},\rv}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\dermagvectsub} +% \begin{macro}{\Dermagvectsub} +% \begin{macrocode} +\newcommand{\dermagvectsub}[3]{\ensuremath{\dbyd{\magvectsub{#1}{#2}}{#3}}} +\newcommand{\Dermagvectsub}[3]{\ensuremath{\DbyD{\magvectsub{#1}{#2}}{#3}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\dervectsub} +% \begin{macro}{\Dervectsub} +% \begin{macrocode} +\newcommand{\dervectsub}[3]{\ensuremath{\dbyd{\vectsub{#1}{#2}}{#3}}} +\newcommand{\Dervectsub}[3]{\ensuremath{\DbyD{\vectsub{#1}{#2}}{#3}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\magdervectsub} +% \begin{macro}{\magDervectsub} +% \begin{macrocode} +\ifthenelse{\boolean{@optdoubleabsbars}} + {\newcommand{\magdervectsub}[3]{\ensuremath{\magof{\dervectsub{#1}{#2}{#3}}}} + \newcommand{\magDervectsub}[3]{\ensuremath{\magof{\Dervectsub{#1}{#2}{#3}}}}} + {\newcommand{\magdervectsub}[3]{\ensuremath{\abs{\dervectsub{#1}{#2}{#3}}}} + \newcommand{\magDervectsub}[3]{\ensuremath{\abs{\Dervectsub{#1}{#2}{#3}}}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\compdervectsub} +% \begin{macro}{\compDervectsub} +% \begin{macrocode} +\newcommand{\compdervectsub}[4]{\ensuremath{\dbyd{\compvectsub{#1}{#2}{#4}}{#3}}} +\newcommand{\compDervectsub}[4]{\ensuremath{\DbyD{\compvectsub{#1}{#2}{#4}}{#3}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\scompsdervectsub} +% \begin{macro}{\scompsDervectsub} +% \begin{macrocode} +\newcommand{\scompsdervectsub}[3]{\ensuremath{\lv + \compdervectsub{#1}{#2}{#3}{x}, + \compdervectsub{#1}{#2}{#3}{y}, + \compdervectsub{#1}{#2}{#3}{z}\rv}} +\newcommand{\scompsDervectsub}[3]{\ensuremath{\lv + \compDervectsub{#1}{#2}{#3}{x}, + \compDervectsub{#1}{#2}{#3}{y}, + \compDervectsub{#1}{#2}{#3}{z}\rv}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\comppossub} +% \begin{macrocode} +\newcommand{\comppossub}[2]{\ensuremath{\ssub{#2}{#1}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\scompspossub} +% \begin{macrocode} +\newcommand{\scompspossub}[1]{\ensuremath{\lv + \comppossub{#1}{x}, + \comppossub{#1}{y}, + \comppossub{#1}{z}\rv}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\compdpossub} +% \begin{macro}{\compDpossub} +% \begin{macrocode} +\newcommand{\compdpossub}[2]{\ensuremath{\mathrm{d}\comppossub{#1}{#2}}} +\newcommand{\compDpossub}[2]{\ensuremath{\Delta\comppossub{#1}{#2}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\scompsdpossub} +% \begin{macro}{\scompsDpossub} +% \begin{macrocode} +\newcommand{\scompsdpossub}[1]{\ensuremath{\lv + \compdpossub{#1}{x}, + \compdpossub{#1}{y}, + \compdpossub{#1}{z}\rv}} +\newcommand{\scompsDpossub}[1]{\ensuremath{\lv + \compDpossub{#1}{x}, + \compDpossub{#1}{y}, + \compDpossub{#1}{z}\rv}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\compderpossub} +% \begin{macro}{\compDerpossub} +% \begin{macrocode} +\newcommand{\compderpossub}[3]{\ensuremath{\dbyd{\comppossub{#1}{#3}}{#2}}} +\newcommand{\compDerpossub}[3]{\ensuremath{\DbyD{\comppossub{#1}{#3}}{#2}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\scompsderpossub} +% \begin{macro}{\scompsDerpossub} +% \begin{macrocode} +\newcommand{\scompsderpossub}[2]{\ensuremath{\lv + \compderpossub{#1}{#2}{x}, + \compderpossub{#1}{#2}{y}, + \compderpossub{#1}{#2}{z}\rv}} +\newcommand{\scompsDerpossub}[2]{\ensuremath{\lv + \compDerpossub{#1}{#2}{x}, + \compDerpossub{#1}{#2}{y}, + \compDerpossub{#1}{#2}{z}\rv}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\relpos} +% \begin{macrocode} +\newcommand{\relpos}[1]{\ensuremath{\vectsub{r}{#1}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\relvel} +% \begin{macrocode} +\newcommand{\relvel}[1]{\ensuremath{\vectsub{v}{#1}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\relmom} +% \begin{macrocode} +\newcommand{\relmom}[1]{\ensuremath{\vectsub{p}{#1}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\relfor} +% \begin{macrocode} +\newcommand{\relfor}[1]{\ensuremath{\vectsub{F}{#1}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\vectdotvect} +% \begin{macrocode} +\newcommand{\vectdotvect}[2]{\ensuremath{{#1}\bullet{#2}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\vectdotsvect} +% \begin{macrocode} +\newcommand{\vectdotsvect}[2]{\ensuremath{\scompsvect{#1}\bullet\scompsvect{#2}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\vectdotevect} +% \begin{macrocode} +\newcommand{\vectdotevect}[2]{\ensuremath{ + \compvect{#1}{x}\compvect{#2}{x}+ + \compvect{#1}{y}\compvect{#2}{y}+ + \compvect{#1}{z}\compvect{#2}{z}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\vectdotspos} +% \begin{macrocode} +\newcommand{\vectdotspos}[1]{\ensuremath{\scompsvect{#1}\bullet\scompspos}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\vectdotepos} +% \begin{macrocode} +\newcommand{\vectdotepos}[1]{\ensuremath{ + \compvect{#1}{x}\comppos{x}+ + \compvect{#1}{y}\comppos{y}+ + \compvect{#1}{z}\comppos{z}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\vectdotsdvect} +% \begin{macro}{\vectdotsDvect} +% \begin{macrocode} +\newcommand{\vectdotsdvect}[2]{\ensuremath{\scompsvect{#1}\bullet\scompsdvect{#2}}} +\newcommand{\vectdotsDvect}[2]{\ensuremath{\scompsvect{#1}\bullet\scompsDvect{#2}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\vectdotedvect} +% \begin{macro}{\vectdoteDvect} +% \begin{macrocode} +\newcommand{\vectdotedvect}[2]{\ensuremath{ + \compvect{#1}{x}\compdvect{#2}{x}+ + \compvect{#1}{y}\compdvect{#2}{y}+ + \compvect{#1}{z}\compdvect{#2}{z}}} +\newcommand{\vectdoteDvect}[2]{\ensuremath{ + \compvect{#1}{x}\compDvect{#2}{x}+ + \compvect{#1}{y}\compDvect{#2}{y}+ + \compvect{#1}{z}\compDvect{#2}{z}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\vectdotsdpos} +% \begin{macro}{\vectdotsDpos} +% \begin{macrocode} +\newcommand{\vectdotsdpos}[1]{\ensuremath{\scompsvect{#1}\bullet\scompsdpos}} +\newcommand{\vectdotsDpos}[1]{\ensuremath{\scompsvect{#1}\bullet\scompsDpos}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\vectdotedpos} +% \begin{macro}{\vectdoteDpos} +% \begin{macrocode} +\newcommand{\vectdotedpos}[1]{\ensuremath{ + \compvect{#1}{x}\compdpos{x}+ + \compvect{#1}{y}\compdpos{y}+ + \compvect{#1}{z}\compdpos{z}}} +\newcommand{\vectdoteDpos}[1]{\ensuremath{ + \compvect{#1}{x}\compDpos{x}+ + \compvect{#1}{y}\compDpos{y}+ + \compvect{#1}{z}\compDpos{z}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\vectsubdotsvectsub} +% \begin{macrocode} +\newcommand{\vectsubdotsvectsub}[4]{\ensuremath{ + \scompsvectsub{#1}{#2}\bullet\scompsvectsub{#3}{#4}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\vectsubdotevectsub} +% \begin{macrocode} +\newcommand{\vectsubdotevectsub}[4]{\ensuremath{ + \compvectsub{#1}{#2}{x}\compvectsub{#3}{#4}{x}+ + \compvectsub{#1}{#2}{y}\compvectsub{#3}{#4}{y}+ + \compvectsub{#1}{#2}{z}\compvectsub{#3}{#4}{z}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\vectsubdotsdvectsub} +% \begin{macro}{\vectsubdotsDvectsub} +% \begin{macrocode} +\newcommand{\vectsubdotsdvectsub}[4]{\ensuremath{ + \scompsvectsub{#1}{#2}\bullet\scompsdvectsub{#3}{#4}}} +\newcommand{\vectsubdotsDvectsub}[4]{\ensuremath{ + \scompsvectsub{#1}{#2}\bullet\scompsDvectsub{#3}{#4}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\vectsubdotedvectsub} +% \begin{macro}{\vectsubdoteDvectsub} +% \begin{macrocode} +\newcommand{\vectsubdotedvectsub}[4]{\ensuremath{ + \compvectsub{#1}{#2}{x}\compdvectsub{#3}{#4}{x}+ + \compvectsub{#1}{#2}{y}\compdvectsub{#3}{#4}{y}+ + \compvectsub{#1}{#2}{z}\compdvectsub{#3}{#4}{z}}} +\newcommand{\vectsubdoteDvectsub}[4]{\ensuremath{ + \compvectsub{#1}{#2}{x}\compDvectsub{#3}{#4}{x}+ + \compvectsub{#1}{#2}{y}\compDvectsub{#3}{#4}{y}+ + \compvectsub{#1}{#2}{z}\compDvectsub{#3}{#4}{z}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\vectsubdotsdvect} +% \begin{macro}{\vectsubdotsDvect} +% \begin{macrocode} +\newcommand{\vectsubdotsdvect}[3]{\ensuremath{ + \scompsvectsub{#1}{#2}\bullet\scompsdvect{#3}}} +\newcommand{\vectsubdotsDvect}[3]{\ensuremath{ + \scompsvectsub{#1}{#2}\bullet\scompsDvect{#3}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\vectsubdotedvect} +% \begin{macro}{\vectsubdoteDvect} +% \begin{macrocode} +\newcommand{\vectsubdotedvect}[3]{\ensuremath{ + \compvectsub{#1}{#2}{x}\compdvect{#3}{x}+ + \compvectsub{#1}{#2}{y}\compdvect{#3}{y}+ + \compvectsub{#1}{#2}{z}\compdvect{#3}{z}}} +\newcommand{\vectsubdoteDvect}[3]{\ensuremath{ + \compvectsub{#1}{#2}{x}\compDvect{#3}{x}+ + \compvectsub{#1}{#2}{y}\compDvect{#3}{y}+ + \compvectsub{#1}{#2}{z}\compDvect{#3}{z}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\vectsubdotsdpos} +% \begin{macro}{\vectsubdotsDpos} +% \begin{macrocode} +\newcommand{\vectsubdotsdpos}[2]{\ensuremath{ + \scompsvectsub{#1}{#2}\bullet\scompsdpos}} +\newcommand{\vectsubdotsDpos}[2]{\ensuremath{ + \scompsvectsub{#1}{#2}\bullet\scompsDpos}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\vectsubdotedpos} +% \begin{macro}{\vectsubdoteDpos} +% \begin{macrocode} +\newcommand{\vectsubdotedpos}[2]{\ensuremath{ + \compvectsub{#1}{#2}{x}\compdpos{x}+ + \compvectsub{#1}{#2}{y}\compdpos{y}+ + \compvectsub{#1}{#2}{z}\compdpos{z}}} +\newcommand{\vectsubdoteDpos}[2]{\ensuremath{ + \compvectsub{#1}{#2}{x}\compDpos{x}+ + \compvectsub{#1}{#2}{y}\compDpos{y}+ + \compvectsub{#1}{#2}{z}\compDpos{z}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\dervectdotsvect} +% \begin{macro}{\Dervectdotsvect} +% \begin{macrocode} +\newcommand{\dervectdotsvect}[3]{\ensuremath{ + \scompsdervect{#1}{#2}\bullet\scompsvect{#3}}} +\newcommand{\Dervectdotsvect}[3]{\ensuremath{ + \scompsDervect{#1}{#2}\bullet\scompsvect{#3}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\dervectdotevect} +% \begin{macro}{\Dervectdotevect} +% \begin{macrocode} +\newcommand{\dervectdotevect}[3]{\ensuremath{ + \compdervect{#1}{#2}{x}\compvect{#3}{x}+ + \compdervect{#1}{#2}{y}\compvect{#3}{y}+ + \compdervect{#1}{#2}{z}\compvect{#3}{z}}} +\newcommand{\Dervectdotevect}[3]{\ensuremath{ + \compDervect{#1}{#2}{x}\compvect{#3}{x}+ + \compDervect{#1}{#2}{y}\compvect{#3}{y}+ + \compDervect{#1}{#2}{z}\compvect{#3}{z}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\vectdotsdervect} +% \begin{macro}{\vectdotsDervect} +% \begin{macrocode} +\newcommand{\vectdotsdervect}[3]{\ensuremath{ + \scompsvect{#1}\bullet\scompsdervect{#2}{#3}}} +\newcommand{\vectdotsDervect}[3]{\ensuremath{ + \scompsvect{#1}\bullet\scompsDervect{#2}{#3}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\vectdotedervect} +% \begin{macro}{\vectdoteDervect} +% \begin{macrocode} +\newcommand{\vectdotedervect}[3]{\ensuremath{ + \compvect{#1}{x}\compdervect{#2}{#3}{x}+ + \compvect{#1}{y}\compdervect{#2}{#3}{y}+ + \compvect{#1}{z}\compdervect{#2}{#3}{z}}} +\newcommand{\vectdoteDervect}[3]{\ensuremath{ + \compvect{#1}{x}\compDervect{#2}{#3}{x}+ + \compvect{#1}{y}\compDervect{#2}{#3}{y}+ + \compvect{#1}{z}\compDervect{#2}{#3}{z}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\dervectdotspos} +% \begin{macro}{\Dervectdotspos} +% \begin{macrocode} +\newcommand{\dervectdotspos}[2]{\ensuremath{ + \scompsdervect{#1}{#2}\bullet\scompspos}} +\newcommand{\Dervectdotspos}[2]{\ensuremath{ + \scompsDervect{#1}{#2}\bullet\scompspos}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\dervectdotepos} +% \begin{macro}{\Dervectdotepos} +% \begin{macrocode} +\newcommand{\dervectdotepos}[2]{\ensuremath{ + \compdervect{#1}{#2}{x}\comppos{x}+ + \compdervect{#1}{#2}{y}\comppos{y}+ + \compdervect{#1}{#2}{z}\comppos{z}}} +\newcommand{\Dervectdotepos}[2]{\ensuremath{ + \compDervect{#1}{#2}{x}\comppos{x}+ + \compDervect{#1}{#2}{y}\comppos{y}+ + \compDervect{#1}{#2}{z}\comppos{z}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\dervectdotsdvect} +% \begin{macro}{\DervectdotsDvect} +% \begin{macrocode} +\newcommand{\dervectdotsdvect}[3]{\ensuremath{ + \scompsdervect{#1}{#2}\bullet\scompsdvect{#3}}} +\newcommand{\DervectdotsDvect}[3]{\ensuremath{ + \scompsDervect{#1}{#2}\bullet\scompsDvect{#3}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\dervectdotedvect} +% \begin{macro}{\DervectdoteDvect} +% \begin{macrocode} +\newcommand{\dervectdotedvect}[3]{\ensuremath{ + \compdervect{#1}{#2}{x}\compdvect{#3}{x}+ + \compdervect{#1}{#2}{y}\compdvect{#3}{y}+ + \compdervect{#1}{#2}{z}\compdvect{#3}{z}}} +\newcommand{\DervectdoteDvect}[3]{\ensuremath{ + \compDervect{#1}{#2}{x}\compDvect{#3}{x}+ + \compDervect{#1}{#2}{y}\compDvect{#3}{y}+ + \compDervect{#1}{#2}{z}\compDvect{#3}{z}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\dervectdotsdpos} +% \begin{macro}{\DervectdotsDpos} +% \begin{macrocode} +\newcommand{\dervectdotsdpos}[2]{\ensuremath{ + \scompsdervect{#1}{#2}\bullet\scompsdpos}} +\newcommand{\DervectdotsDpos}[2]{\ensuremath{ + \scompsDervect{#1}{#2}\bullet\scompsDpos}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\dervectdotedpos} +% \begin{macro}{\DervectdoteDpos} +% \begin{macrocode} +\newcommand{\dervectdotedpos}[2]{\ensuremath{ + \compdervect{#1}{#2}{x}\compdpos{x}+ + \compdervect{#1}{#2}{y}\compdpos{y}+ + \compdervect{#1}{#2}{z}\compdpos{z}}} +\newcommand{\DervectdoteDpos}[2]{\ensuremath{ + \compDervect{#1}{#2}{x}\compDpos{x}+ + \compDervect{#1}{#2}{y}\compDpos{y}+ + \compDervect{#1}{#2}{z}\compDpos{z}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\ezero} +% \begin{macro}{\eone} +% \begin{macro}{\etwo} +% \begin{macro}{\ethree} +% \begin{macro}{\efour} +% \begin{macro}{\ek} +% \begin{macro}{\e} +% \begin{macrocode} +\newcommand{\ezero}{\ensuremath{\msub{\mathbf{e}}{0}}} +\newcommand{\eone}{\ensuremath{\msub{\mathbf{e}}{1}}} +\newcommand{\etwo}{\ensuremath{\msub{\mathbf{e}}{2}}} +\newcommand{\ethree}{\ensuremath{\msub{\mathbf{e}}{3}}} +\newcommand{\efour}{\ensuremath{\msub{\mathbf{e}}{4}}} +\newcommand{\ek}[1]{\ensuremath{\msub{\mathbf{e}}{#1}}} +\newcommand{\e}{\ek} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\uezero} +% \begin{macro}{\ueone} +% \begin{macro}{\uetwo} +% \begin{macro}{\uethree} +% \begin{macro}{\uefour} +% \begin{macro}{\uek} +% \begin{macro}{\ue} +% \begin{macrocode} +\newcommand{\uezero}{\ensuremath{\msub{\widehat{\mathbf{e}}}{0}}} +\newcommand{\ueone}{\ensuremath{\msub{\widehat{\mathbf{e}}}{1}}} +\newcommand{\uetwo}{\ensuremath{\msub{\widehat{\mathbf{e}}}{2}}} +\newcommand{\uethree}{\ensuremath{\msub{\widehat{\mathbf{e}}}{3}}} +\newcommand{\uefour}{\ensuremath{\msub{\widehat{\mathbf{e}}}{4}}} +\newcommand{\uek}[1]{\ensuremath{\msub{\widehat{\mathbf{e}}}{#1}}} +\newcommand{\ue}{\uek} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\ezerozero} +% \begin{macro}{\eoneone} +% \begin{macro}{\eonetwo} +% \begin{macro}{\eonethree} +% \begin{macro}{\eonefour} +% \begin{macro}{\etwoone} +% \begin{macro}{\etwotwo} +% \begin{macro}{\etwothree} +% \begin{macro}{\etwofour} +% \begin{macro}{\ethreeone} +% \begin{macro}{\ethreetwo} +% \begin{macro}{\ethreethree} +% \begin{macro}{\ethreefour} +% \begin{macro}{\efourone} +% \begin{macro}{\efourtwo} +% \begin{macro}{\efourthree} +% \begin{macro}{\efourfour} +% \begin{macrocode} +\newcommand{\ezerozero}{\ek{00}} +\newcommand{\eoneone}{\ek{11}} +\newcommand{\eonetwo}{\ek{12}} +\newcommand{\eonethree}{\ek{13}} +\newcommand{\eonefour}{\ek{14}} +\newcommand{\etwoone}{\ek{21}} +\newcommand{\etwotwo}{\ek{22}} +\newcommand{\etwothree}{\ek{23}} +\newcommand{\etwofour}{\ek{24}} +\newcommand{\ethreeone}{\ek{31}} +\newcommand{\ethreetwo}{\ek{32}} +\newcommand{\ethreethree}{\ek{33}} +\newcommand{\ethreefour}{\ek{34}} +\newcommand{\efourone}{\ek{41}} +\newcommand{\efourtwo}{\ek{42}} +\newcommand{\efourthree}{\ek{43}} +\newcommand{\efourfour}{\ek{44}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\euzero} +% \begin{macro}{\euone} +% \begin{macro}{\eutwo} +% \begin{macro}{\euthree} +% \begin{macro}{\eufour} +% \begin{macro}{\euk} +% \begin{macro}{\eu} +% \begin{macrocode} +\newcommand{\euzero}{\ensuremath{\msup{\mathbf{e}}{0}}} +\newcommand{\euone}{\ensuremath{\msup{\mathbf{e}}{1}}} +\newcommand{\eutwo}{\ensuremath{\msup{\mathbf{e}}{2}}} +\newcommand{\euthree}{\ensuremath{\msup{\mathbf{e}}{3}}} +\newcommand{\eufour}{\ensuremath{\msup{\mathbf{e}}{4}}} +\newcommand{\euk}[1]{\ensuremath{\msup{\mathbf{e}}{#1}}} +\newcommand{\eu}{\euk} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \newpage +% \begin{macro}{\euzerozero} +% \begin{macro}{\euoneone} +% \begin{macro}{\euonetwo} +% \begin{macro}{\euonethree} +% \begin{macro}{\euonefour} +% \begin{macro}{\eutwoone} +% \begin{macro}{\eutwotwo} +% \begin{macro}{\eutwothree} +% \begin{macro}{\eutwofour} +% \begin{macro}{\euthreeone} +% \begin{macro}{\euthreetwo} +% \begin{macro}{\euthreethree} +% \begin{macro}{\euthreefour} +% \begin{macro}{\eufourone} +% \begin{macro}{\eufourtwo} +% \begin{macro}{\eufourthree} +% \begin{macro}{\eufourfour} +% \begin{macrocode} +\newcommand{\euzerozero}{\euk{00}} +\newcommand{\euoneone}{\euk{11}} +\newcommand{\euonetwo}{\euk{12}} +\newcommand{\euonethree}{\euk{13}} +\newcommand{\euonefour}{\euk{14}} +\newcommand{\eutwoone}{\euk{21}} +\newcommand{\eutwotwo}{\euk{22}} +\newcommand{\eutwothree}{\euk{23}} +\newcommand{\eutwofour}{\euk{24}} +\newcommand{\euthreeone}{\euk{31}} +\newcommand{\euthreetwo}{\euk{32}} +\newcommand{\euthreethree}{\euk{33}} +\newcommand{\euthreefour}{\euk{34}} +\newcommand{\eufourone}{\euk{41}} +\newcommand{\eufourtwo}{\euk{42}} +\newcommand{\eufourthree}{\euk{43}} +\newcommand{\eufourfour}{\euk{44}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\gzero} +% \begin{macro}{\gone} +% \begin{macro}{\gtwo} +% \begin{macro}{\gthree} +% \begin{macro}{\gfour} +% \begin{macro}{\gk} +% \begin{macro}{\g} +% \begin{macrocode} +\newcommand{\gzero}{\ensuremath{\msub{\mathbf{\gamma}}{0}}} +\newcommand{\gone}{\ensuremath{\msub{\mathbf{\gamma}}{1}}} +\newcommand{\gtwo}{\ensuremath{\msub{\mathbf{\gamma}}{2}}} +\newcommand{\gthree}{\ensuremath{\msub{\mathbf{\gamma}}{3}}} +\newcommand{\gfour}{\ensuremath{\msub{\mathbf{\gamma}}{4}}} +\newcommand{\gk}[1]{\ensuremath{\msub{\mathbf{\gamma}}{#1}}} +\newcommand{\g}{\gk} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\gzerozero} +% \begin{macro}{\goneone} +% \begin{macro}{\gonetwo} +% \begin{macro}{\gonethree} +% \begin{macro}{\gonefour} +% \begin{macro}{\gtwoone} +% \begin{macro}{\gtwotwo} +% \begin{macro}{\gtwothree} +% \begin{macro}{\gtwofour} +% \begin{macro}{\gthreeone} +% \begin{macro}{\gthreetwo} +% \begin{macro}{\gthreethree} +% \begin{macro}{\gthreefour} +% \begin{macro}{\gfourone} +% \begin{macro}{\gfourtwo} +% \begin{macro}{\gfourthree} +% \begin{macro}{\gfourfour} +% \begin{macrocode} +\newcommand{\gzerozero}{\gk{00}} +\newcommand{\goneone}{\gk{11}} +\newcommand{\gonetwo}{\gk{12}} +\newcommand{\gonethree}{\gk{13}} +\newcommand{\gonefour}{\gk{14}} +\newcommand{\gtwoone}{\gk{21}} +\newcommand{\gtwotwo}{\gk{22}} +\newcommand{\gtwothree}{\gk{23}} +\newcommand{\gtwofour}{\gk{24}} +\newcommand{\gthreeone}{\gk{31}} +\newcommand{\gthreetwo}{\gk{32}} +\newcommand{\gthreethree}{\gk{33}} +\newcommand{\gthreefour}{\gk{34}} +\newcommand{\gfourone}{\gk{41}} +\newcommand{\gfourtwo}{\gk{42}} +\newcommand{\gfourthree}{\gk{43}} +\newcommand{\gfourfour}{\gk{44}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \newpage +% \begin{macro}{\guzero} +% \begin{macro}{\guone} +% \begin{macro}{\gutwo} +% \begin{macro}{\guthree} +% \begin{macro}{\gufour} +% \begin{macro}{\guk} +% \begin{macro}{\gu} +% \begin{macrocode} +\newcommand{\guzero}{\ensuremath{\msup{\mathbf{\gamma}}{0}}} +\newcommand{\guone}{\ensuremath{\msup{\mathbf{\gamma}}{1}}} +\newcommand{\gutwo}{\ensuremath{\msup{\mathbf{\gamma}}{2}}} +\newcommand{\guthree}{\ensuremath{\msup{\mathbf{\gamma}}{3}}} +\newcommand{\gufour}{\ensuremath{\msup{\mathbf{\gamma}}{4}}} +\newcommand{\guk}[1]{\ensuremath{\msup{\mathbf{\gamma}}{#1}}} +\newcommand{\gu}{\guk} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\guzerozero} +% \begin{macro}{\guoneone} +% \begin{macro}{\guonetwo} +% \begin{macro}{\guonethree} +% \begin{macro}{\guonefour} +% \begin{macro}{\gutwoone} +% \begin{macro}{\gutwotwo} +% \begin{macro}{\gutwothree} +% \begin{macro}{\gutwofour} +% \begin{macro}{\guthreeone} +% \begin{macro}{\guthreetwo} +% \begin{macro}{\guthreethree} +% \begin{macro}{\guthreefour} +% \begin{macro}{\gufourone} +% \begin{macro}{\gufourtwo} +% \begin{macro}{\gufourthree} +% \begin{macro}{\gufourfour} +% \begin{macrocode} +\newcommand{\guzerozero}{\guk{00}} +\newcommand{\guoneone}{\guk{11}} +\newcommand{\guonetwo}{\guk{12}} +\newcommand{\guonethree}{\guk{13}} +\newcommand{\guonefour}{\guk{14}} +\newcommand{\gutwoone}{\guk{21}} +\newcommand{\gutwotwo}{\guk{22}} +\newcommand{\gutwothree}{\guk{23}} +\newcommand{\gutwofour}{\guk{24}} +\newcommand{\guthreeone}{\guk{31}} +\newcommand{\guthreetwo}{\guk{32}} +\newcommand{\guthreethree}{\guk{33}} +\newcommand{\guthreefour}{\guk{34}} +\newcommand{\gufourone}{\guk{41}} +\newcommand{\gufourtwo}{\guk{42}} +\newcommand{\gufourthree}{\guk{43}} +\newcommand{\gufourfour}{\guk{44}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\mivector} +% Vectors formated as in M\&I, written in LaTeX3 +% \begin{macrocode} +\ExplSyntaxOn +\NewDocumentCommand{\mivector}{ O{,} m o }% + {% + \mi_vector:nn { #1 } { #2 } + \IfValueT{#3}{\;{#3}} + }% +\seq_new:N \l__mi_list_seq +\cs_new_protected:Npn \mi_vector:nn #1 #2 +{% + \ensuremath{% + \seq_set_split:Nnn \l__mi_list_seq { , } { #2 } + \int_compare:nF { \seq_count:N \l__mi_list_seq = 1 } { \left\langle } + \seq_use:Nnnn \l__mi_list_seq { #1 } { #1 } { #1 } + \int_compare:nF { \seq_count:N \l__mi_list_seq = 1 } { \right\rangle } + }% +}% +\ExplSyntaxOff +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\colvector} +% \begin{macro}{\rowvector} +% Column and row vectors, written in LaTeX3 +% \begin{macrocode} +\ExplSyntaxOn +\seq_new:N \l__vector_arg_seq +\cs_new_protected:Npn \vector_main:nnnn #1 #2 #3 #4 + {% + \seq_set_split:Nnn \l__vector_arg_seq { #3 } { #4 } + \begin{#1matrix} + \seq_use:Nnnn \l__vector_arg_seq { #2 } { #2 } { #2 } + \end{#1matrix} + }% +\NewDocumentCommand{\rowvector}{ O{,} m } + {% + \ensuremath{ + \vector_main:nnnn { p } { \,\, } { #1 } { #2 } + }% + }% +\NewDocumentCommand{\colvector}{ O{,} m } + {% + \ensuremath{ + \vector_main:nnnn { p } { \\ } { #1 } { #2 } + }% + }% +\ExplSyntaxOff +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\scompscvect} +% \begin{macrocode} +\newcommandx{\scompscvect}[2][1,usedefault]{% + \ifthenelse{\equal{#1}{}}% + {% + \colvector{\msub{#2}{1},\msub{#2}{2},\msub{#2}{3}}% + }% + {% + \colvector{\msub{#2}{0},\msub{#2}{1},\msub{#2}{2},\msub{#2}{3}}% + }% +}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\scompsrvect} +% \begin{macrocode} +\newcommandx{\scompsrvect}[2][1,usedefault]{% + \ifthenelse{\equal{#1}{}}% + {% + \rowvector[,]{\msub{#2}{1},\msub{#2}{2},\msub{#2}{3}}% + }% + {% + \rowvector[,]{\msub{#2}{0},\msub{#2}{1},\msub{#2}{2},\msub{#2}{3}}% + }% +}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\oofpez} +% Coulomb constant +% \begin{macrocode} +\newphysicsconstant{oofpez}{\ensuremath{\frac{1}{\phantom{_o}4\pi\ssub{\epsilon}{o}}}} +{\scin[9]{9}}{\ensuremath{\m\cubed\usk\kg\usk\s^{-4}\usk\A\rpsquared}}[\m\per\farad] +[\newton\usk\m\squared\per\coulomb\squared] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\oofpezcs} +% Coulomb constant (alternate) +% \begin{macrocode} +\newphysicsconstant{oofpezcs}{\ensuremath{\frac{1}{\phantom{_o}4\pi\ssub{\epsilon}{o} +c^2\phantom{_o}}}}{\scin{-7}}{\m\usk\kg\usk\s\rpsquared\usk\A\rpsquared}[\tesla\usk\m +\squared][\newton\usk\s\squared\per\coulomb\squared] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\epsz} +% vacuum permittivity +% \begin{macrocode} +\newphysicsconstant{epsz}{\ensuremath{\ssub{\epsilon}{o}}}{\scin[9]{-12}} +{\m\rpcubed\usk\reciprocal\kg\usk\s^{4}\usk\A\squared}[\farad\per\m] +[\coulomb\squared\per\newton\usk\m\squared] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\mzofp} +% Biot-Savart constant +% \begin{macrocode} +\newphysicsconstant{mzofp}{\ensuremath{\frac{\phantom{_oo}\ssub{\mu}{o}\phantom{_o}} +{4\pi}}}{\scin{-7}}{\m\usk\kg\usk\s\rpsquared\usk\A\rpsquared}[\henry\per\m] +[\tesla\usk\m\per\A] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\muz} +% vacuum permeability +% \begin{macrocode} +\newphysicsconstant{muz}{\ensuremath{\ssub{\mu}{o}}}{\scin[4\pi]{-7}} +{\m\usk\kg\usk\s\rpsquared\usk\A\rpsquared}[\henry\per\m][\tesla\usk\m\per\A] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\kboltz} +% Boltzmann constant +% \begin{macrocode} +\newphysicsconstant{kboltz}{\ensuremath{\ssub{k}{B}}}{\scin[1.38]{-23}} +{\kg\usk\m\squared\usk\rpsquare\s\usk\reciprocal\K}[\joule\per\K][\joule\per\K] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\kboltznev} +% Boltzmann constant (alternate) +% \begin{macrocode} +\newcommand{\kboltznev}{\ensuremath{\scin[8.62]{-5}{\eV\per\K}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\stefan} +% Stefan-Boltzmann constant +% \begin{macrocode} +\newphysicsconstant{stefan}{\ensuremath{\sigma}}{\scin[5.67]{-8}}{\kg\usk\s\rpcubed\usk +\K^{-4}}[\watt\per\m\squared\usk\K^4][\watt\per\m\squared\usk\K^4] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\planck} +% Planck constant +% \begin{macrocode} +\newphysicsconstant{planck}{\ensuremath{h}}{\scin[6.62]{-34}} +{\m\squared\usk\kg\usk\reciprocal\s}[\joule\usk\s][\kg\usk\m\squared\per\s] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\plancknev} +% Planck constant (alternate) +% \begin{macrocode} +\newcommand{\plancknev}{\ensuremath{\scin[4.136]{-15}{\eV\usk\s}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\planckbar} +% reduced Planck constant (Dirac constant) +% \begin{macrocode} +\newphysicsconstant{planckbar}{\ensuremath{\hbar}}{\scin[1.05]{-34}} +{\m\squared\usk\kg\usk\reciprocal\s}[\joule\usk\s][\kg\usk\m\squared\per\s] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\planckbarnev} +% reduced Planck constant (alternate) +% \begin{macrocode} +\newcommand{\planckbarnev}{\ensuremath{\scin[4.136]{-15}{\eV\usk\s}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Navogadro} +% Avogadro constant +% \begin{macrocode} +\newphysicsconstant{Navogadro}{\ensuremath{\ssub{N}{A}}}{\scin[6.022]{23}}{\reciprocal +\mol}[\reciprocal\mol][\reciprocal\mol] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\bigG} +% universal gravitational constant +% \begin{macrocode} +\newphysicsconstant{bigG}{\ensuremath{G}}{\scin[6.67]{-11}} +{\m\cubed\usk\reciprocal\kg\usk\s\rpsquared}[\joule\usk\m\per\kg\squared] +[\newton\usk\m\squared\per\kg\squared] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\littleg} +% gravitational field strength at Earth's surface +% \begin{macrocode} +\newphysicsconstant{littleg}{\ensuremath{g}}{9.80}{\m\usk\s\rpsquared}[\newton\per\kg] +[\m\per\s\squared] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\clight} +% light's speed +% \begin{macrocode} +\newphysicsconstant{clight}{\ensuremath{c}}{\scin[3.00]{8}}{\m\usk\reciprocal\s} +[\m\usk\reciprocal\s][\m\per\s] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\clightnfn} +% light's speed (alternate) +% \begin{macrocode} +\newcommand{\clightnfn}{\ensuremath{\unit{1}{ft\per\nano\s}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Ratom} +% approximate atomic radius +% \begin{macrocode} +\newphysicsconstant{Ratom}{\ensuremath{\ssub{r}{atom}}}{\scin{-10}}{\m}[\m][\m] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Mproton} +% proton's mass +% \begin{macrocode} +\newphysicsconstant{Mproton}{\ensuremath{\ssub{m}{proton}}}{\scin[1.673]{-27}}{\kg} +[\kg][\kg] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Mneutron} +% neutron's mass +% \begin{macrocode} +\newphysicsconstant{Mneutron}{\ensuremath{\ssub{m}{neutron}}}{\scin[1.675]{-27}} +{\kg}[\kg][\kg] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Mhydrogen} +% hydrogen atom's mass +% \begin{macrocode} +\newphysicsconstant{Mhydrogen}{\ensuremath{\ssub{m}{hydrogen}}}{\scin[1.673]{-27}} +{\kg}[\kg][\kg] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Melectron} +% electron's mass +% \begin{macrocode} +\newphysicsconstant{Melectron}{\ensuremath{\ssub{m}{electron}}}{\scin[9.109]{-31}} +{\kg}[\kg][\kg] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\echarge} +% charge quantum +% \begin{macrocode} +\newphysicsconstant{echarge}{\ensuremath{e}}{\scin[1.602]{-19}}{\A\usk\s}[\coulomb] +[\coulomb] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Qelectron} +% \begin{macro}{\qelectron} +% electron's charge +% \begin{macrocode} +\newphysicsconstant{Qelectron}{\ensuremath{\ssub{Q}{electron}}}{-\echargevalue} +{\A\usk\s}[\coulomb][\coulomb] +\newphysicsconstant{qelectron}{\ensuremath{\ssub{q}{electron}}}{-\echargevalue} +{\A\usk\s}[\coulomb][\coulomb] +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\Qproton} +% \begin{macro}{\qproton} +% proton's charge +% \begin{macrocode} +\newphysicsconstant{Qproton}{\ensuremath{\ssub{Q}{proton}}}{+\echargevalue} +{\A\usk\s}[\coulomb][\coulomb] +\newphysicsconstant{qproton}{\ensuremath{\ssub{q}{proton}}}{+\echargevalue} +{\A\usk\s}[\coulomb][\coulomb] +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\MEarth} +% Earth's mass +% \begin{macrocode} +\newphysicsconstant{MEarth}{\ensuremath{\ssub{M}{Earth}}}{\scin[6]{24}}{\kg}[\kg][\kg] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\MMoon} +% Moon's mass +% \begin{macrocode} +\newphysicsconstant{MMoon}{\ensuremath{\ssub{M}{Moon}}}{\scin[7]{22}}{\kg}[\kg][\kg] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\MSun} +% Sun's mass +% \begin{macrocode} +\newphysicsconstant{MSun}{\ensuremath{\ssub{M}{Sun}}}{\scin[2]{30}}{\kg}[\kg][\kg] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\REarth} +% Earth's radius +% \begin{macrocode} +\newphysicsconstant{REarth}{\ensuremath{\ssub{R}{Earth}}}{\scin[6.4]{6}}{\m}[\m][\m] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\RMoon} +% Moon's radius +% \begin{macrocode} +\newphysicsconstant{RMoon}{\ensuremath{\ssub{R}{Moon}}}{\scin[1.75]{6}}{\m}[\m][\m] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\RSun} +% Sun's radius +% \begin{macrocode} +\newphysicsconstant{RSun}{\ensuremath{\ssub{R}{Sun}}}{\scin[7]{8}}{\m}[\m][\m] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\ESdist} +% \begin{macro}{\SEdist} +% Earth-Sun distance (Sun-Earth distance) +% \begin{macrocode} +\newphysicsconstant{ESdist}{\magvectsub{r}{ES}}{\scin[1.5]{11}}{\m}[\m][\m] +\newphysicsconstant{SEdist}{\magvectsub{r}{SE}}{\scin[1.5]{11}}{\m}[\m][\m] +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\EMdist} +% \begin{macro}{\MEdist} +% Earth-Moon distance (Moon-Earth distance) +% \begin{macrocode} +\newphysicsconstant{EMdist}{\magvectsub{r}{EM}}{\scin[4]{8}}{\m}[\m][\m] +\newphysicsconstant{MEdist}{\magvectsub{r}{ME}}{\scin[4]{8}}{\m}[\m][\m] +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\lightyear} +% \begin{macro}{\Lightyear} +% \begin{macro}{\cyear} +% \begin{macro}{\cyr} +% \begin{macro}{\yyear} +% \begin{macro}{\yr} +% \begin{macro}{\parsec} +% light year, year, and parsec +% \begin{macrocode} +\newcommand{\lightyear}{\ensuremath{\mathrm{ly}}} +\newcommand{\Lightyear}{\ensuremath{\mathrm{LY}}} +\newcommand{\cyear}{\ensuremath{c\usk\mathrm{year}}} +\newcommand{\cyr}{\ensuremath{c\usk\mathrm{yr}}} +\newcommand{\yyear}{\ensuremath{\mathrm{year}}} +\newcommand{\yr}{\ensuremath{\mathrm{yr}}} +\newcommand{\parsec}{\ensuremath{\mathrm{pc}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\LSun} +% Sun's luminosity +% \begin{macrocode} +\newphysicsconstant{LSun}{\ensuremath{\ssub{L}{Sun}}}{\scin[4]{26}} + {\m\squared\usk\kg\usk\s\rpcubed}[\watt][\joule\per\s] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\TSun} +% Sun's effective temperature +% \begin{macrocode} +\newphysicsconstant{TSun}{\ensuremath{\ssub{T}{Sun}}}{5800}{\K}[\K][\K] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\MagSun} +% Sun's absolute magnitude +% \begin{macrocode} +\newphysicsconstant{MagSun}{\ensuremath{\ssub{M}{Sun}}}{+4.83}{}[][] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\magSun} +% Sun's apparent magnitude +% \begin{macrocode} +\newphysicsconstant{magSun}{\ensuremath{\ssub{m}{Sun}}}{-26.74}{}[][] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Lstar} +% \begin{macro}{\Lsolar} +% stellar and solar luminosity +% \begin{macrocode} +\newcommand{\Lstar}[1][\(\star\)]{\ensuremath{\ssub{L}{#1}}} +\newcommand{\Lsolar}{\ensuremath{\Lstar[\(\odot\)]}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\Tstar} +% \begin{macro}{\Tsolar} +% stellar and solar temperature +% \begin{macrocode} +\newcommand{\Tstar}[1][\(\star\)]{\ensuremath{\ssub{T}{#1}}} +\newcommand{\Tsolar}{\ensuremath{\Tstar[\(\odot\)]}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\Rstar} +% \begin{macro}{\Rsolar} +% stellar and solar radius +% \begin{macrocode} +\newcommand{\Rstar}[1][\(\star\)]{\ensuremath{\ssub{R}{#1}}} +\newcommand{\Rsolar}{\ensuremath{\Rstar[\(\odot\)]}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\Mstar} +% \begin{macro}{\Msolar} +% stellar and solar mass +% \begin{macrocode} +\newcommand{\Mstar}[1][\(\star\)]{\ensuremath{\ssub{M}{#1}}} +\newcommand{\Msolar}{\ensuremath{\Mstar[\(\odot\)]}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\Fstar} +% \begin{macro}{\fstar} +% \begin{macro}{\FSun} +% \begin{macro}{\fSun} +% \begin{macro}{\Fsolar} +% \begin{macro}{\fsolar} +% stellar and solar fluxes +% \begin{macrocode} +\newcommand{\Fstar}[1][\(\star\)]{\ensuremath{\ssub{F}{#1}}} +\newcommand{\fstar}[1][\(\star\)]{\ensuremath{\ssub{f}{#1}}} +\newcommand{\FSun}{\ensuremath{\Fstar[Sun]}} +\newcommand{\fSun}{\ensuremath{\fstar[Sun]}} +\newcommand{\Fsolar}{\ensuremath{\Fstar[\(\odot\)]}} +\newcommand{\fsolar}{\ensuremath{\fstar[\(\odot\)]}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\Magstar} +% \begin{macro}{\magstar} +% \begin{macro}{\Magsolar} +% \begin{macro}{\magsolar} +% stellar and solar magnitudes +% \begin{macrocode} +\newcommand{\Magstar}[1][\(\star\)]{\ensuremath{\ssub{M}{#1}}} +\newcommand{\magstar}[1][\(\star\)]{\ensuremath{\ssub{m}{#1}}} +\newcommand{\Magsolar}{\ensuremath{\Magstar[\(\odot\)]}} +\newcommand{\magsolar}{\ensuremath{\magstar[\(\odot\)]}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\Dstar} +% \begin{macro}{\dstar} +% \begin{macro}{\Dsolar} +% \begin{macro}{\dsolar} +% stellar and solar distance +% \begin{macrocode} +\newcommand{\Dstar}[1][\(\star\)]{\ensuremath{\ssub{D}{#1}}} +\newcommand{\dstar}[1][\(\star\)]{\ensuremath{\ssub{d}{#1}}} +\newcommand{\Dsolar}{\ensuremath{\Dstar[\(\odot\)]}} +\newcommand{\dsolar}{\ensuremath{\dstar[\(\odot\)]}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\onehalf} +% \begin{macro}{\onethird} +% \begin{macro}{\onefourth} +% \begin{macro}{\onefifth} +% \begin{macro}{\onesixth} +% \begin{macro}{\oneseventh} +% \begin{macro}{\oneeighth} +% \begin{macro}{\oneninth} +% \begin{macro}{\onetenth} +% \begin{macro}{\twothirds} +% \begin{macro}{\twofifths} +% \begin{macro}{\twosevenths} +% \begin{macro}{\twoninths} +% \begin{macro}{\threehalves} +% \begin{macro}{\threefourths} +% \begin{macro}{\threefifths} +% \begin{macro}{\threesevenths} +% \begin{macro}{\threeeighths} +% \begin{macro}{\threetenths} +% \begin{macro}{\fourthirds} +% frequently used fractions +% \begin{macrocode} +\newcommand{\onehalf}{\ensuremath{\frac{1}{2}}\xspace} +\newcommand{\onethird}{\ensuremath{\frac{1}{3}}\xspace} +\newcommand{\onefourth}{\ensuremath{\frac{1}{4}}\xspace} +\newcommand{\onefifth}{\ensuremath{\frac{1}{5}}\xspace} +\newcommand{\onesixth}{\ensuremath{\frac{1}{6}}\xspace} +\newcommand{\oneseventh}{\ensuremath{\frac{1}{7}}\xspace} +\newcommand{\oneeighth}{\ensuremath{\frac{1}{8}}\xspace} +\newcommand{\oneninth}{\ensuremath{\frac{1}{9}}\xspace} +\newcommand{\onetenth}{\ensuremath{\frac{1}{10}}\xspace} +\newcommand{\twothirds}{\ensuremath{\frac{2}{3}}\xspace} +\newcommand{\twofifths}{\ensuremath{\frac{2}{5}}\xspace} +\newcommand{\twosevenths}{\ensuremath{\frac{2}{7}}\xspace} +\newcommand{\twoninths}{\ensuremath{\frac{2}{9}}\xspace} +\newcommand{\threehalves}{\ensuremath{\frac{3}{2}}\xspace} +\newcommand{\threefourths}{\ensuremath{\frac{3}{4}}\xspace} +\newcommand{\threefifths}{\ensuremath{\frac{3}{5}}\xspace} +\newcommand{\threesevenths}{\ensuremath{\frac{3}{7}}\xspace} +\newcommand{\threeeighths}{\ensuremath{\frac{3}{8}}\xspace} +\newcommand{\threetenths}{\ensuremath{\frac{3}{10}}\xspace} +\newcommand{\fourthirds}{\ensuremath{\frac{4}{3}}\xspace} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\dx} +% variable of integration +% \begin{macrocode} +\newcommand{\dx}[1]{\ensuremath{\,\mathrm{d}{#1}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\evalfromto} +% \begin{macrocode} +\newcommand{\evalfromto}[3]{\ensuremath{\Bigg.{#1}\Bigg\rvert_{#2}^{#3}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\evalat} +% \begin{macrocode} +\newcommand{\evalat}[2]{\ensuremath{\Bigg.{#1}\Bigg\rvert_{#2}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\evaluatedat} +% \begin{macrocode} +\newcommand{\evaluatedat}[1]{\ensuremath{\Bigg.\Bigg\rvert_{#1}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\integral} +% \begin{macro}{\Integral} +% \begin{macrocode} +\newcommandx{\integral}[4][1,2,usedefault]{\ensuremath{ + \int_{\ifthenelse{\equal{#1}{}}{}{#4=#1}}^{\ifthenelse{\equal{#2}{}}{}{#4=#2}}} + {#3}\dx{#4}} +\newcommandx{\Integral}[4][1,2,usedefault]{\ensuremath{ + \bigint_{\ifthenelse{\equal{#1}{}}{}{#4=#1}}^{\ifthenelse{\equal{#2}{}}{} + {#4=#2}}}{#3}\dx{#4}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\opensurfintegral} +% \begin{macro}{\opensurfIntegral} +% \begin{macrocode} +\newcommand{\opensurfintegral}[2]{\ensuremath{ + \int\nolimits_{#1}\vectdotvect{\vect{#2}}{\dirvect{n}}\dx{A}}} +\newcommand{\opensurfIntegral}[2]{\ensuremath{ + \bigint\nolimits_{\mskip -25.00mu\displaystyle\mathbf{#1}} + \vectdotvect{\vect{#2}}{\dirvect{n}} + \dx{A}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\closedsurfintegral} +% \begin{macro}{\closedsurfIntegral} +% \begin{macrocode} +\newcommand{\closedsurfintegral}[2]{\ensuremath{ + \oint\nolimits_{#1}\vectdotvect{\vect{#2}}{\dirvect{n}}\dx{A}}} +\newcommand{\closedsurfIntegral}[2]{\ensuremath{ + \bigoint\nolimits_{\mskip -25.00mu\displaystyle\mathbf{#1}}\;\; + \vectdotvect{\vect{#2}}{\dirvect{n}}\dx{A}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\openlineintegral} +% \begin{macro}{\openlineIntegral} +% \begin{macrocode} +\newcommand{\openlineintegral}[2]{\ensuremath{ + \int\nolimits_{#1}\vectdotvect{\vect{#2}}{\dirvect{t}} + \dx{\ell}}} +\newcommand{\openlineIntegral}[2]{\ensuremath{ + \bigint\nolimits_{\mskip -25.00mu\displaystyle\mathbf{#1}} + \vectdotvect{\vect{#2}}{\dirvect{t}}\dx{\ell}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\closedlineintegral} +% \begin{macro}{\closedlineIntegral} +% \begin{macrocode} +\newcommand{\closedlineintegral}[2]{\ensuremath{ + \oint\nolimits_{#1}\vectdotvect{\vect{#2}}{\dirvect{t}}\dx{\ell}}} +\newcommand{\closedlineIntegral}[2]{\ensuremath{ + \bigoint\nolimits_{\mskip -25.00mu\displaystyle\mathbf {#1}}\;\; + \vectdotvect{\vect{#2}}{\dirvect{t}}\dx{\ell}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\dbydt} +% \begin{macro}{\DbyDt} +% \begin{macrocode} +\newcommandx{\dbydt}[1][1]{\ensuremath{\frac{\mathrm{d}{#1}}{\mathrm{d}t}}} +\newcommandx{\DbyDt}[1][1]{\ensuremath{\frac{\Delta{#1}}{\Delta t}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\ddbydt} +% \begin{macro}{\DDbyDt} +% \begin{macrocode} +\newcommandx{\ddbydt}[1][1]{\ensuremath{\frac{\mathrm{d}^{2}{#1}}{\mathrm{d}t^{2}}}} +\newcommandx{\DDbyDt}[1][1]{\ensuremath{\frac{\Delta^{2}{#1}}{\Delta t^{2}}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\pbypt} +% \begin{macrocode} +\newcommandx{\pbypt}[1][1]{\ensuremath{\frac{\partial{#1}}{\partial t}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\ppbypt} +% \begin{macrocode} +\newcommandx{\ppbypt}[1][1]{\ensuremath{\frac{\partial^{2}{#1}}{\partial t^{2}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\dbyd} +% \begin{macro}{\DbyD} +% \begin{macrocode} +\newcommand{\dbyd}[2]{\ensuremath{\frac{\mathrm{d}{#1}}{\mathrm{d}{#2}}}} +\newcommand{\DbyD}[2]{\ensuremath{\frac{\Delta{#1}}{\Delta{#2}}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\ddbyd} +% \begin{macro}{\DDbyD} +% \begin{macrocode} +\newcommand{\ddbyd}[2]{\ensuremath{\frac{\mathrm{d}^{2}{#1}}{\mathrm{d}{#2}^{2}}}} +\newcommand{\DDbyD}[2]{\ensuremath{\frac{\Delta^{2}{#1}}{\Delta{#2}^{2}}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\pbyp} +% \begin{macrocode} +\newcommand{\pbyp}[2]{\ensuremath{\frac{\partial{#1}}{\partial{#2}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\ppbyp} +% \begin{macrocode} +\newcommand{\ppbyp}[2]{\ensuremath{\frac{\partial^{2}{#1}}{\partial{#2}^{2}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\seriesfofx} +% \begin{macro}{\seriesexpx} +% \begin{macro}{\seriessinx} +% \begin{macro}{\seriescosx} +% \begin{macro}{\seriestanx} +% \begin{macro}{\seriesatox} +% \begin{macro}{\serieslnoneplusx} +% \begin{macro}{\binomialseries} +% \begin{macrocode} +\newcommand{\seriesfofx}{\ensuremath{% +f(x) \approx f(a) + \frac{f^\prime (a)}{1!}(x-a) + \frac{f^{\prime\prime}(a)}{2!}(x-a)^2 ++ \frac{f^{\prime\prime\prime}(a)}{3!}(x-a)^3 + \ldots}\xspace} +\newcommand{\seriesexpx}{\ensuremath{% +e^x \approx 1 + x + \frac{x^2}{2!} + \frac{x^3}{3!} + \ldots}\xspace} +\newcommand{\seriessinx}{\ensuremath{% +\sin x \approx x - \frac{x^3}{3!} + \frac{x^5}{5!} - \ldots}\xspace} +\newcommand{\seriescosx}{\ensuremath{% +\cos x \approx 1 - \frac{x^2}{2!} + \frac{x^4}{4!} - \ldots}\xspace} +\newcommand{\seriestanx}{\ensuremath{% +\tan x \approx x + \frac{x^3}{3} + \frac{2x^5}{15} + \ldots}\xspace} +\newcommand{\seriesatox}{\ensuremath{% +a^x \approx 1 + x \ln{a} + \frac{(x \ln a)^2}{2!} + \frac{(x \ln a)^3}{3!} + \ldots} +\xspace} +\newcommand{\serieslnoneplusx}{\ensuremath{% +\ln(1 \pm x) \approx \pm\; x - \frac{x^2}{2} \pm \frac{x^3}{3} - \frac{x^4}{4} \pm \ldots} +\xspace} +\newcommand{\binomialseries}{\ensuremath{% +(1 + x)^n \approx 1 + nx + \frac{n(n-1)}{2!}x^2 + \ldots}\xspace} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\divergence} +% \begin{macro}{\curl} +% user must specify |\vect{}| around the argument to get arrows +% \begin{macrocode} +\newcommand{\divergence}[1]{\ensuremath{\vectdotvect{\nabla}{#1}}} +\newcommand{\curl}[1]{\ensuremath{\nabla\times{#1}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\diracdelta} +% \begin{macrocode} +\newcommand{\diracdelta}[1]{\ensuremath{\boldsymbol{\delta}\quant{#1}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\asin} +% \begin{macrocode} +\DeclareMathOperator{\asin}{\sin^{-1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\acos} +% \begin{macrocode} +\DeclareMathOperator{\acos}{\cos^{-1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\atan} +% \begin{macrocode} +\DeclareMathOperator{\atan}{\tan^{-1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\asec} +% \begin{macrocode} +\DeclareMathOperator{\asec}{\sec^{-1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\acsc} +% \begin{macrocode} +\DeclareMathOperator{\acsc}{\csc^{-1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\acot} +% \begin{macrocode} +\DeclareMathOperator{\acot}{\cot^{-1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\sech} +% \begin{macrocode} +\DeclareMathOperator{\sech}{sech} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\csch} +% \begin{macrocode} +\DeclareMathOperator{\csch}{csch} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\asinh} +% \begin{macrocode} +\DeclareMathOperator{\asinh}{\sinh^{-1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\acosh} +% \begin{macrocode} +\DeclareMathOperator{\acosh}{\cosh^{-1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\atanh} +% \begin{macrocode} +\DeclareMathOperator{\atanh}{\tanh^{-1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\asech} +% \begin{macrocode} +\DeclareMathOperator{\asech}{\sech^{-1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\acsch} +% \begin{macrocode} +\DeclareMathOperator{\acsch}{\csch^{-1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\acoth} +% \begin{macrocode} +\DeclareMathOperator{\acoth}{\coth^{-1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\sgn} +% \begin{macrocode} +\DeclareMathOperator{\sgn}{sgn} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\dex} +% \begin{macrocode} +\DeclareMathOperator{\dex}{dex} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\eV} +% \begin{macro}{\ev} +% \begin{macrocode} +\newcommand{\eV}{\electronvolt} +\newcommand{\ev}{\electronvolt} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\emf} +% \begin{macrocode} +\newcommand{\emf}{\ensuremath{\mathrm{emf}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\logb} +% \begin{macrocode} +\newcommand{\logb}[1][\relax]{\ensuremath{\log_{_{#1}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\cB} +% \begin{macrocode} +\ifthenelse{\boolean{@optitalicvectors}} + {\newcommand{\cB}{\ensuremath{c\mskip -5.00mu B}}} + {\newcommand{\cB}{\ensuremath{\textsf{c}\mskip -3.00mu\mathrm{B}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\newpi} +% \begin{macrocode} +\newcommand{\newpi}{\ensuremath{\pi\mskip -7.8mu\pi}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\scripty} +% \begin{macrocode} +\newcommand{\scripty}[1]{\ensuremath{\mathcalligra{#1}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\flux} +% \begin{macrocode} +\newcommandx{\flux}[1][1]{\ensuremath{\ssub{\Phi}{#1}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\abs} +% \begin{macrocode} +\newcommand{\abs}[1]{\ensuremath{\left\lvert{#1}\right\rvert}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\magof} +% \begin{macrocode} +\newcommand{\magof}[1]{\ensuremath{\left\lVert{#1}\right\rVert}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\dimsof} +% \begin{macrocode} +\newcommand{\dimsof}[1]{\ensuremath{\left[{#1}\right]}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\unitsof} +% \begin{macrocode} +\newcommand{\unitsof}[1]{\ensuremath{\left[{#1}\right]_{_{u}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\quant} +% \begin{macro}{\bquant} +% \begin{macrocode} +\newcommand{\quant}[1]{\ensuremath{\left({#1}\right)}} +\newcommand{\bquant}[1]{\ensuremath{\left[{#1}\right]}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\changein} +% \begin{macro}{\Changein} +% \begin{macrocode} +\newcommand{\changein}[1]{\ensuremath{\delta{#1}}} +\newcommand{\Changein}[1]{\ensuremath{\Delta{#1}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\scin} +% \begin{macro}{\ee} +% \begin{macro}{\EE} +% \begin{macrocode} +\newcommandx{\scin}[3][1,3=\!\!,usedefault]{\ensuremath{ + \ifthenelse{\equal{#1}{}} + {\unit{\msup{10}{#2}}{#3}} + {\unit{\msup{{#1}\times 10}{#2}}{#3}}}} +\newcommand{\ee}[2]{\texttt{{#1}e{#2}}} +\newcommand{\EE}[2]{\texttt{{#1}E{#2}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\dms} +% \begin{macro}{\hms} +% \begin{macro}{\clockreading} +% \begin{macrocode} +\newcommand{\dms}[3]{\ensuremath{\indegrees{#1}\inarcminutes{#2}\inarcseconds{#3}}} +\newcommand{\hms}[3]{\ensuremath{{#1}^{\hour}{#2}^{\mathrm{m}}{#3}^{\s}}} +\newcommand{\clockreading}{\hms} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\latitude} +% \begin{macro}{\latitudeN} +% \begin{macro}{\latitudeS} +% \begin{macro}{\longitude} +% \begin{macro}{\longitudeE} +% \begin{macro}{\longitudeW} +% \begin{macrocode} +\newcommand{\latitude}[1]{\ensuremath{\unit{#1}{\degree}}} +\newcommand{\latitudeN}[1]{\ensuremath{\unit{#1}{\degree\; N}}} +\newcommand{\latitudeS}[1]{\ensuremath{\unit{#1}{\degree\; S}}} +\newcommand{\longitude}[1]{\ensuremath{\unit{#1}{\degree}}} +\newcommand{\longitudeE}[1]{\ensuremath{\unit{#1}{\degree\; E}}} +\newcommand{\longitudeW}[1]{\ensuremath{\unit{#1}{\degree\; W}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\ssub} +% I have never liked \LaTeX's default subscript positioning, so I have this +% command instead. There may be a better way of doing this. +% \begin{macrocode} +\newcommand{\ssub}[2]{\ensuremath{{#1}_{_{_{\mbox{\tiny{#2}}}}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\ssup} +% I have never liked \LaTeX's default superscript positioning, so I have this +% command instead. There may be a better way of doing this. +% \begin{macrocode} +\newcommand{\ssup}[2]{\ensuremath{{#1}^{^{^{\mbox{\tiny{#2}}}}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\ssud} +% \begin{macrocode} +\newcommand{\ssud}[3]{\ensuremath{{#1}^{^{^{\mbox{\tiny{#2}}}}}_{_{_{\mbox{\tiny{#3}}}}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\msub} +% I have never liked \LaTeX's default subscript positioning, so I have this +% command instead. There may be a better way of doing this. +% \begin{macrocode} +\newcommand{\msub}[2]{\ensuremath{#1^{^{\scriptstyle{{}}}}_{_{_{\scriptstyle{#2}}}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\msup} +% I have never liked \LaTeX's default superscript positioning, so I have this +% command instead. There may be a better way of doing this. +% \begin{macrocode} +\newcommand{\msup}[2]{\ensuremath{#1^{^{\scriptstyle{#2}}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\msud} +% \begin{macrocode} +\newcommand{\msud}[3]{\ensuremath{#1^{^{\scriptstyle{#2}}}_{_{_{\scriptstyle{#3}}}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\levicivita} +% \begin{macrocode} +\newcommand{\levicivita}[1]{\ensuremath{\msub{\varepsilon}{#1}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\xaxis} +% \begin{macro}{\yaxis} +% \begin{macro}{\zaxis} +% \begin{macro}{\naxis} +% Coordinate axes. +% \begin{macrocode} +\newcommand{\xaxis}{\ensuremath{x\mbox{-axis }}} +\newcommand{\yaxis}{\ensuremath{y\mbox{-axis }}} +\newcommand{\zaxis}{\ensuremath{z\mbox{-axis }}} +\newcommand{\naxis}[1]{\ensuremath{{#1}\mbox{-axis}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\xyplane} +% \begin{macro}{\yzplane} +% \begin{macro}{\zxplane} +% \begin{macro}{\yxplane} +% \begin{macro}{\zyplane} +% \begin{macro}{\xzplane} +% All permutations of planes formed by cartesian axes. +% \begin{macrocode} +\newcommand{\xyplane}{\ensuremath{xy\mbox{-plane }}} +\newcommand{\yzplane}{\ensuremath{yz\mbox{-plane }}} +\newcommand{\zxplane}{\ensuremath{zx\mbox{-plane }}} +\newcommand{\yxplane}{\ensuremath{yx\mbox{-plane }}} +\newcommand{\zyplane}{\ensuremath{zy\mbox{-plane }}} +\newcommand{\xzplane}{\ensuremath{xz\mbox{-plane }}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\cuberoot} +% \begin{macro}{\fourthroot} +% \begin{macro}{\fifthroot} +% \begin{macro}{\fsqrt} +% \begin{macro}{\fcuberoot} +% \begin{macro}{\ffourthroot} +% \begin{macro}{\ffifthroot} +% Frequently used roots. Prepend |f| for fractional exponents. +% \begin{macrocode} +\newcommand{\cuberoot}[1]{\ensuremath{\sqrt[3]{#1}}} +\newcommand{\fourthroot}[1]{\ensuremath{\sqrt[4]{#1}}} +\newcommand{\fifthroot}[1]{\ensuremath{\sqrt[5]{#1}}} +\newcommand{\fsqrt}[1]{\ensuremath{\msup{#1}{\onehalf}}} +\newcommand{\fcuberoot}[1]{\ensuremath{\msup{#1}{\onethird}}} +\newcommand{\ffourthroot}[1]{\ensuremath{\msup{#1}{\onefourth}}} +\newcommand{\ffifthroot}[1]{\ensuremath{\msup{#1}{\onefifth}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\relgamma} +% \begin{macro}{\frelgamma} +% \begin{macrocode} +\newcommand{\relgamma}[1]{\ensuremath{ + \frac{1}{\sqrt{1-\msup{\quant{\frac{#1}{c}}}{2}}}}} +\newcommand{\frelgamma}[1]{\ensuremath{ + \msup{\quant{1-\frac{\msup{{#1}}{2}}{\msup{c}{2}}}}{-\onehalf}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\oosqrtomxs} +% \begin{macrocode} +\newcommand{\oosqrtomxs}[1]{\ensuremath{\frac{1}{\sqrt{1-\msup{#1}{2}}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\oosqrtomx} +% \begin{macrocode} +\newcommand{\oosqrtomx}[1]{\ensuremath{\frac{1}{\sqrt{1-{#1}}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\ooomx} +% \begin{macrocode} +\newcommand{\ooomx}[1]{\ensuremath{\frac{1}{1-{#1}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\ooopx} +% \begin{macrocode} +\newcommand{\ooopx}[1]{\ensuremath{\frac{1}{1+{#1}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\isequals} +% \begin{macrocode} +\newcommand{\isequals}{\wordoperator{?}{=}\xspace} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\wordoperator} +% \begin{macrocode} +\newcommand{\wordoperator}[2]{\ensuremath{% + \mathrel{\vcenter{\offinterlineskip + \halign{\hfil\tiny\upshape##\hfil\cr\noalign{\vskip-.5ex} + {#1}\cr\noalign{\vskip.5ex}{#2}\cr}}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\definedas} +% \begin{macro}{\associated} +% \begin{macro}{\adjustedby} +% \begin{macro}{\earlierthan} +% \begin{macro}{\laterthan} +% \begin{macro}{\forevery} +% \begin{macrocode} +\newcommand{\definedas}{\wordoperator{defined}{as}\xspace} +\newcommand{\associated}{\wordoperator{associated}{with}\xspace} +\newcommand{\adjustedby}{\wordoperator{adjusted}{by}\xspace} +\newcommand{\earlierthan}{\wordoperator{earlier}{than}\xspace} +\newcommand{\laterthan}{\wordoperator{later}{than}\xspace} +\newcommand{\forevery}{\wordoperator{for}{every}\xspace} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\pwordoperator} +% \begin{macrocode} +\newcommand{\pwordoperator}[2]{\ensuremath{\left(% + \mathrel{\vcenter{\offinterlineskip + \halign{\hfil\tiny\upshape##\hfil\cr\noalign{\vskip-.5ex} + {#1}\cr\noalign{\vskip.5ex}{#2}\cr}}}\right)}}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\pdefinedas} +% \begin{macro}{\passociated} +% \begin{macro}{\padjustedby} +% \begin{macro}{\pearlierthan} +% \begin{macro}{\platerthan} +% \begin{macro}{\pforevery} +% \begin{macrocode} +\newcommand{\pdefinedas}{\pwordoperator{defined}{as}\xspace} +\newcommand{\passociated}{\pwordoperator{associated}{with}\xspace} +\newcommand{\padjustedby}{\pwordoperator{adjusted}{by}\xspace} +\newcommand{\pearlierthan}{\pwordoperator{earlier}{than}\xspace} +\newcommand{\platerthan}{\pwordoperator{later}{than}\xspace} +\newcommand{\pforevery}{\pwordoperator{for}{every}\xspace} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\defines} +% \begin{macrocode} +\newcommand{\defines}{\ensuremath{\stackrel{\text{\tiny{def}}}{=}}\xspace} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\inframe} +% \begin{macrocode} +\newcommand{\inframe}[1][\relax]{\ensuremath{\xrightarrow[\tiny{\mathcal #1}]{}}\xspace} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\associates} +% \begin{macrocode} +\newcommand{\associates}{\ensuremath{\xrightarrow{\text{\tiny{assoc}}}}\xspace} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\becomes} +% \begin{macrocode} +\newcommand{\becomes}{\ensuremath{\xrightarrow{\text{\tiny{becomes}}}}\xspace} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\lrelatedto} +% \begin{macro}{\rrelatedto} +% \begin{macro}{\brelatedto} +% \begin{macrocode} +\newcommand{\rrelatedto}[1]{\ensuremath{\xLongrightarrow{\text{\tiny{#1}}}}} +\newcommand{\lrelatedto}[1]{\ensuremath{\xLongleftarrow[\text{\tiny{#1}}]{}}} +\newcommand{\brelatedto}[2]{\ensuremath{ + \xLongleftrightarrow[\text{\tiny{#1}}]{\text{\tiny{#2}}}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\momprinciple} +% \begin{macro}{\LHSmomprinciple} +% \begin{macro}{\RHSmomprinciple} +% \begin{macrocode} +\newcommand{\momprinciple}{\ensuremath{ + \vectsub{p}{sys,f}=\vectsub{p}{sys,i}+\Fnetsys\Delta t}} +\newcommand{\LHSmomprinciple}{\ensuremath{ + \vectsub{p}{sys,f}}} +\newcommand{\RHSmomprinciple}{\ensuremath{ + \vectsub{p}{sys,i}+\Fnetsys\Delta t}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\energyprinciple} +% \begin{macro}{\LHSenergyprinciple} +% \begin{macro}{\RHSenergyprinciple} +% \begin{macrocode} +\newcommand{\energyprinciple}{\ensuremath{\ssub{E}{sys,f}=\ssub{E}{sys,i}+ + \ssub{W}{ext}+Q}} +\newcommand{\LHSenergyprinciple}{\ensuremath{\ssub{E}{sys,f}}} +\newcommand{\RHSenergyprinciple}{\ensuremath{\ssub{E}{sys,i}+\ssub{W}{ext}+Q}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\angularmomprinciple} +% \begin{macro}{\LHSangularmomprinciple} +% \begin{macro}{\RHSangularmomprinciple} +% \begin{macrocode} +\newcommand{\angularmomprinciple}{\ensuremath{\vectsub{L}{sys,A,f}=\vectsub{L}{sys,A,i}+ + \Tnetsys\Delta t}} +\newcommand{\LHSangularmomprinciple}{\ensuremath{\vectsub{L}{sys,A,f}}} +\newcommand{\RHSangularmomprinciple}{\ensuremath{\vectsub{L}{sys,A,i}+\Tnetsys\Delta t}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\gravinteraction} +% \begin{macrocode} +\newcommand{\gravinteraction}{\ensuremath{ + \bigGmathsymbol\frac{\msub{M}{1}\msub{M}{2}}{\msup{\magvectsub{r}{12}}{2}} + \quant{-\dirvectsub{r}{12}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\elecinteraction} +% \begin{macrocode} +\newcommand{\elecinteraction}{\ensuremath{ + \oofpezmathsymbol\frac{\msub{Q}{1}\msub{Q}{2}}{\msup{\magvectsub{r}{12}}{2}} + \dirvectsub{r}{12}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Bfieldofparticle} +% \begin{macrocode} +\newcommand{\Bfieldofparticle}{\ensuremath{ + \mzofpmathsymbol\frac{Q\magvect{v}}{\msup{\magvect{r}}{2}}\dirvect{v}\times\dirvect{r}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Efieldofparticle} +% \begin{macrocode} +\newcommand{\Efieldofparticle}{\ensuremath{ + \oofpezmathsymbol\frac{Q}{\msup{\magvect{r}}{2}}\dirvect{r}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Esys} +% \begin{macrocode} +\newcommand{\Esys}{\ssub{E}{sys}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Us} +% \begin{macrocode} +\newcommandx{\Us}[1][1]{\ssub{\ssub{U}{s}}{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Ug} +% \begin{macrocode} +\newcommandx{\Ug}[1][1]{\ssub{\ssub{U}{g}}{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Ue} +% \begin{macrocode} +\newcommandx{\Ue}[1][1]{\ssub{\ssub{U}{e}}{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Ktrans} +% \begin{macrocode} +\newcommandx{\Ktrans}[1][1]{\ssub{\ssub{K}{trans}}{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Krot} +% \begin{macrocode} +\newcommandx{\Krot}[1][1]{\ssub{\ssub{K}{rot}}{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Eparticle} +% \begin{macrocode} +\newcommandx{\Eparticle}[1][1]{\ssub{\ssub{E}{particle}}{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Einternal} +% \begin{macrocode} +\newcommandx{\Einternal}[1][1]{\ssub{\ssub{E}{internal}}{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Erest} +% \begin{macrocode} +\newcommandx{\Erest}[1][1]{\ssub{\ssub{E}{rest}}{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Echem} +% \begin{macrocode} +\newcommandx{\Echem}[1][1]{\ssub{\ssub{E}{chem}}{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Etherm} +% \begin{macrocode} +\newcommandx{\Etherm}[1][1]{\ssub{\ssub{E}{therm}}{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Evib} +% \begin{macrocode} +\newcommandx{\Evib}[1][1]{\ssub{\ssub{E}{vib}}{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Ephoton} +% \begin{macrocode} +\newcommandx{\Ephoton}[1][1]{\ssub{\ssub{E}{photon}}{#1}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\DEsys} +% \begin{macrocode} +\newcommand{\DEsys}{\Changein\Esys} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\DUs} +% \begin{macrocode} +\newcommand{\DUs}{\Changein\Us} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\DUg} +% \begin{macrocode} +\newcommand{\DUg}{\Changein\Ug} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\DUe} +% \begin{macrocode} +\newcommand{\DUe}{\Changein\Ue} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\DKtrans} +% \begin{macrocode} +\newcommand{\DKtrans}{\Changein\Ktrans} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\DKrot} +% \begin{macrocode} +\newcommand{\DKrot}{\Changein\Krot} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\DEparticle} +% \begin{macrocode} +\newcommand{\DEparticle}{\Changein\Eparticle} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\DEinternal} +% \begin{macrocode} +\newcommand{\DEinternal}{\Changein\Einternal} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\DErest} +% \begin{macrocode} +\newcommand{\DErest}{\Changein\Erest} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\DEchem} +% \begin{macrocode} +\newcommand{\DEchem}{\Changein\Echem} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\DEtherm} +% \begin{macrocode} +\newcommand{\DEtherm}{\Changein\Etherm} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\DEvib} +% \begin{macrocode} +\newcommand{\DEvib}{\Changein\Evib} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\DEphoton} +% \begin{macrocode} +\newcommand{\DEphoton}{\Changein\Ephoton} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Usfinal} +% \begin{macrocode} +\newcommand{\Usfinal}{\ssub{\left(\onehalf\ks \msup{s}{2}\right)}{f}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Usinitial} +% \begin{macrocode} +\newcommand{\Usinitial}{\ssub{\left(\onehalf\ks \msup{s}{2}\right)}{i}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Ugfinal} +% \begin{macrocode} +\newcommand{\Ugfinal}{\ssub{\left(-G\frac{\msub{M}{1}\msub{M}{2}} + {\magvectsub{r}{12}}\right)}{f}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Uginitial} +% \begin{macrocode} +\newcommand{\Uginitial}{\ssub{\left(-G\frac{\msub{M}{1}\msub{M}{2}} + {\magvectsub{r}{12}}\right)}{i}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Uefinal} +% \begin{macrocode} +\newcommand{\Uefinal}{\ssub{\left(\oofpezmathsymbol\frac{\ssub{Q}{1}\ssub{Q}{2}} + {\magvectsub{r}{12}}\right)}{f}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Ueinitial} +% \begin{macrocode} +\newcommand{\Ueinitial}{\ssub{\left(\oofpezmathsymbol\frac{\ssub{Q}{1}\ssub{Q}{2}} + {\magvectsub{r}{12}}\right)}{i}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\ks} +% \begin{macrocode} +\newcommand{\ks}{\ssub{k}{s}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Fnet} +% \begin{macro}{\Fnetext} +% \begin{macro}{\Fnetsys} +% \begin{macro}{\Fsub} +% \begin{macrocode} +\newcommand{\Fnet}{\ensuremath{\vectsub{F}{net}}} +\newcommand{\Fnetext}{\ensuremath{\vectsub{F}{net,ext}}} +\newcommand{\Fnetsys}{\ensuremath{\vectsub{F}{net,sys}}} +\newcommand{\Fsub}[1]{\ensuremath{\vectsub{F}{#1}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\Tnet} +% \begin{macro}{\Tnetext} +% \begin{macro}{\Tnetsys} +% \begin{macro}{\Tsub} +% \begin{macrocode} +\newcommand{\Tnet}{\ensuremath{\vectsub{T}{net}}} +\newcommand{\Tnetext}{\ensuremath{\vectsub{T}{net,ext}}} +\newcommand{\Tnetsys}{\ensuremath{\vectsub{T}{net,sys}}} +\newcommand{\Tsub}[1]{\ensuremath{\vectsub{T}{#1}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\vpythonline} +% \begin{macrocode} +\newcommand{\vpythonline}{\lstinline[language=Python,numbers=left,numberstyle=\tiny, + upquote=true,breaklines]} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{vpythonblock} +% \begin{macrocode} +\lstnewenvironment{vpythonblock}{\lstvpython}{} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\vpythonfile} +% \begin{macrocode} +\newcommand{\vpythonfile}{\lstinputlisting[language=Python,numbers=left, + numberstyle=\tiny,upquote=true,breaklines]} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\emptyanswer} +% \begin{macrocode} +\newcommandx{\emptyanswer}[2][1=0.80,2=0.1,usedefault] + {\begin{minipage}{#1\textwidth}\hfill\vspace{#2\textheight}\end{minipage}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{activityanswer} +% \begin{macrocode} +\newenvironmentx{activityanswer}[5][1=white,2=black,3=black,4=0.90,5=0.10,usedefault]{% + \def\skipper{#5}% + \def\response@fbox{\fcolorbox{#2}{#1}}% + \begin{center}% + \begin{lrbox}{\@tempboxa}% + \begin{minipage}[c][#5\textheight][c]{#4\textwidth}\color{#3}% + \vspace{#5\textheight}}{% + \vspace{\skipper\textheight}% + \end{minipage}% + \end{lrbox}% + \response@fbox{\usebox{\@tempboxa}}% + \end{center}% +}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{adjactivityanswer} +% \begin{macrocode} +\newenvironmentx{adjactivityanswer}[5][1=white,2=black,3=black,4=0.90,5=0.00, + usedefault]{% + \def\skipper{#5}% + \def\response@fbox{\fcolorbox{#2}{#1}}% + \begin{center}% + \begin{lrbox}{\@tempboxa}% + \begin{minipage}[c]{#4\textwidth}\color{#3}% + \vspace{#5\textheight}}{% + \vspace{\skipper\textheight}% + \end{minipage}% + \end{lrbox}% + \response@fbox{\usebox{\@tempboxa}}% + \end{center}% +}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\emptybox} +% \begin{macrocode} +\newcommandx{\emptybox}[6][1=\hfill,2=white,3=black,4=black,5=0.90,6=0.10,usedefault] + {\begin{center} + \fcolorbox{#3}{#2}{% + \begin{minipage}[c][#6\textheight][c]{#5\textwidth}\color{#4}% + {#1}% + \end{minipage}}% + \vspace{\baselineskip}% + \end{center}}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\adjemptybox} +% \begin{macrocode} +\newcommandx{\adjemptybox}[7][1=\hfill,2=white,3=black,4=black,5=0.90,6=,7=0.0,usedefault] + {\begin{center} + \fcolorbox{#3}{#2}{% + \begin{minipage}[c]{#5\textwidth}\color{#4}% + \vspace{#7\textheight}% + {#1}% + \vspace{#7\textheight}% + \end{minipage}}% + \vspace{\baselineskip}% + \end{center}}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\answerbox} +% \begin{macrocode} +\newcommandx{\answerbox}[6][1=\hfill,2=white,3=black,4=black,5=0.90,6=0.1,usedefault] + {\ifthenelse{\equal{#1}{}} + {\begin{center}% + \fcolorbox{#3}{#2}{% + \emptyanswer[#5][#6]}% + \vspace{\baselineskip}% + \end{center}}% + {\emptybox[#1][#2][#3][#4][#5][#6]}}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\adjanswerbox} +% \begin{macrocode} +\newcommandx{\adjanswerbox}[7][1=\hfill,2=white,3=black,4=black,5=0.90,6=0.1,7=0.0, + usedefault] + {\ifthenelse{\equal{#1}{}}% + {\begin{center}% + \fcolorbox{#3}{#2}{% + \emptyanswer[#5][#6]}% + \vspace{\baselineskip}% + \end{center}}% + {\adjemptybox[#1][#2][#3][#4][#5][#6][#7]}}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\smallanswerbox} +% box that takes up ten percent of text height +% \begin{macrocode} +\newcommandx{\smallanswerbox}[6][1=\hfill,2=white,3=black,4=black,5=0.90,6=0.10, + usedefault] + {\ifthenelse{\equal{#1}{}} + {\begin{center}% + \fcolorbox{#3}{#2}{% + \emptyanswer[#5][#6]}% + \vspace{\baselineskip}% + \end{center}}% + {\emptybox[#1][#2][#3][#4][#5][#6]}}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\mediumanswerbox} +% box that takes up twenty percent of text height +% \begin{macrocode} +\newcommandx{\mediumanswerbox}[6][1=\hfill,2=white,3=black,4=black,5=0.90,6=0.20, + usedefault]{% + \ifthenelse{\equal{#1}{}} + {\begin{center}% + \fcolorbox{#3}{#2}{% + \emptyanswer[#5][#6]% + }% + \vspace{\baselineskip}% + \end{center}% + }% + {\emptybox[#1][#2][#3][#4][#5][#6] + }% +}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\largeanswerbox} +% box that takes up twenty-five percent of text height +% \begin{macrocode} +\newcommandx{\largeanswerbox}[6][1=\hfill,2=white,3=black,4=black,5=0.90,6=0.25, + usedefault]{% + \ifthenelse{\equal{#1}{}} + {\begin{center}% + \fcolorbox{#3}{#2}{% + \emptyanswer[#5][#6]% + }% + \vspace{\baselineskip}% + \end{center}% + }% + {\emptybox[#1][#2][#3][#4][#5][#6] + }% +}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\largeranswerbox} +% box that takes up thirty-three percent of text height +% \begin{macrocode} +\newcommandx{\largeranswerbox}[6][1=\hfill,2=white,3=black,4=black,5=0.90,6=0.33, + usedefault]{% + \ifthenelse{\equal{#1}{}} + {\begin{center}% + \fcolorbox{#3}{#2}{% + \emptyanswer[#5][#6]% + }% + \vspace{\baselineskip}% + \end{center}% + }% + {\emptybox[#1][#2][#3][#4][#5][#6] + }% +}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\hugeanswerbox} +% box that takes up fifty percent of text height +% \begin{macrocode} +\newcommandx{\hugeanswerbox}[6][1=\hfill,2=white,3=black,4=black,5=0.90,6=0.50, + usedefault]{% + \ifthenelse{\equal{#1}{}} + {\begin{center}% + \fcolorbox{#3}{#2}{% + \emptyanswer[#5][#6]% + }% + \vspace{\baselineskip}% + \end{center}% + }% + {\emptybox[#1][#2][#3][#4][#5][#6] + }% +}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\hugeranswerbox} +% box that takes up seventy-five percent of text height +% \begin{macrocode} +\newcommandx{\hugeranswerbox}[6][1=\hfill,2=white,3=black,4=black,5=0.90,6=0.75, + usedefault]{% + \ifthenelse{\equal{#1}{}} + {\begin{center}% + \fcolorbox{#3}{#2}{% + \emptyanswer[#5][#6]% + }% + \vspace{\baselineskip}% + \end{center}% + }% + {\emptybox[#1][#2][#3][#4][#5][#6] + }% +}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\fullpageanswerbox} +% box that takes up one hundred percent of text height +% \begin{macrocode} +\newcommandx{\fullpageanswerbox}[6][1=\hfill,2=white,3=black,4=black,5=0.90,6=1.00, + usedefault]{% + \ifthenelse{\equal{#1}{}} + {\begin{center}% + \fcolorbox{#3}{#2}{% + \emptyanswer[#5][#6]}% + \vspace{\baselineskip}% + \end{center}}% + {\emptybox[#1][#2][#3][#4][#5][#6]}}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{miinstructornote} +% \begin{macrocode} +\mdfdefinestyle{miinstructornotestyle}{% + hidealllines=false, skipbelow=\baselineskip, skipabove=\baselineskip, + leftmargin=40pt, rightmargin=40pt, linewidth=1, roundcorner=10, + frametitle={INSTRUCTOR NOTE}, + frametitlebackgroundcolor=cyan!60, frametitlerule=true, frametitlerulewidth=1, + backgroundcolor=cyan!25, + linecolor=black, fontcolor=black, shadow=true} +\NewEnviron{miinstructornote}{% + \begin{mdframed}[style=miinstructornotestyle] + \begin{adjactivityanswer}[cyan!25][cyan!25][black] + \BODY + \end{adjactivityanswer} + \end{mdframed} +}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{mistudentnote} +% \begin{macrocode} +\mdfdefinestyle{mistudentnotestyle}{% + hidealllines=false, skipbelow=\baselineskip, skipabove=\baselineskip, + leftmargin=40pt, rightmargin=40pt, linewidth=1, roundcorner=10, + frametitle={STUDENT NOTE}, + frametitlebackgroundcolor=cyan!60, frametitlerule=true, frametitlerulewidth=1, + backgroundcolor=cyan!25, + linecolor=black, fontcolor=black, shadow=true} +\NewEnviron{mistudentnote}{% + \begin{mdframed}[style=mistudentnotestyle] + \begin{adjactivityanswer}[cyan!25][cyan!25][black] + \BODY + \end{adjactivityanswer} + \end{mdframed} +}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{miderivation} +% This definition requires the mdframed package. +% \begin{macrocode} +\mdfdefinestyle{miderivationstyle}{% + hidealllines=false, skipbelow=\baselineskip, skipabove=\baselineskip, + leftmargin=0pt, rightmargin=0pt, linewidth=1, roundcorner=10, + frametitle={DERIVATION}, + frametitlebackgroundcolor=orange!60, frametitlerule=true, frametitlerulewidth=1, + backgroundcolor=orange!25, + linecolor=black, fontcolor=black, shadow=true} +\NewEnviron{miderivation}{% + \begin{mdframed}[style=miderivationstyle] + \setcounter{equation}{0} + \begin{align} + \BODY + \end{align} + \end{mdframed} +}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{bwinstructornote} +% \begin{macrocode} +\mdfdefinestyle{bwinstructornotestyle}{% + hidealllines=false, skipbelow=\baselineskip, skipabove=\baselineskip, + leftmargin=40pt, rightmargin=40pt, linewidth=1, roundcorner=10, + frametitle={INSTRUCTOR NOTE}, + frametitlebackgroundcolor=gray!50, frametitlerule=true, frametitlerulewidth=1, + backgroundcolor=gray!20, + linecolor=black, fontcolor=black, shadow=true} +\NewEnviron{bwinstructornote}{% + \begin{mdframed}[style=bwinstructornotestyle] + \begin{adjactivityanswer}[gray!20][gray!20][black] + \BODY + \end{adjactivityanswer} + \end{mdframed} +}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{bwstudentnote} +% \begin{macrocode} +\mdfdefinestyle{bwstudentnotestyle}{% + hidealllines=false, skipbelow=\baselineskip, skipabove=\baselineskip, + leftmargin=40pt, rightmargin=40pt, linewidth=1, roundcorner=10, + frametitle={STUDENT NOTE}, + frametitlebackgroundcolor=gray!50, frametitlerule=true, frametitlerulewidth=1, + backgroundcolor=gray!20, + linecolor=black, fontcolor=black, shadow=true} +\NewEnviron{bwstudentnote}{% + \begin{mdframed}[style=bwstudentnotestyle] + \begin{adjactivityanswer}[gray!20][gray!20][black] + \BODY + \end{adjactivityanswer} + \end{mdframed} +}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{bwderivation} +% This definition requires the mdframed package. +% \begin{macrocode} +\mdfdefinestyle{bwderivationstyle}{% + hidealllines=false, skipbelow=\baselineskip, skipabove=\baselineskip, + leftmargin=0pt, rightmargin=0pt, linewidth=1, roundcorner=10, + frametitle={DERIVATION}, + frametitlebackgroundcolor=gray!50, frametitlerule=true, frametitlerulewidth=1, + backgroundcolor=gray!20, + linecolor=black, fontcolor=black, shadow=true} +\NewEnviron{bwderivation}{% + \begin{mdframed}[style=bwderivationstyle] + \setcounter{equation}{0} + \begin{align} + \BODY + \end{align} + \end{mdframed} +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\checkpoint} +% \begin{macrocode} +\newcommand{\checkpoint}{% + \vspace{1cm}\begin{center}|--------- CHECKPOINT ---------|\end{center}}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\image} +% \begin{macrocode} +\newcommand{\image}[2]{% + \begin{figure}[h!] + \begin{center}% + \includegraphics[scale=1]{#1}% + \caption{#2}% + \label{#1}% + \end{center}% + \end{figure}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\sneakyone} +% \begin{macrocode} +\newcommand{\sneakyone}[1]{\ensuremath{\cancelto{1}{\frac{#1}{#1}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\chkphysicsquantity} +% undocumented diagnostic command +% \begin{macrocode} +\newcommand{\chkphysicsquantity}[1]{% + \cs{#1} +}% +% \end{macrocode} +% \end{macro} +% +% +% \begin{macro}{\vecto} +% new |\vect| that allows for subscripts +% \begin{macrocode} +\newcommandx{\vecto}[2][2,usedefault]{\ensuremath{% + \ifthenelse{\equal{#2}{}}% + {\vec{\mathrm #1}}% + {\ssub{\vec{\mathrm #1}}{#2}}}}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\compvecto} +% new |\compvect| that allows for subscripts +% \begin{macrocode} +\newcommandx{\compvecto}[3][2,usedefault]{\ensuremath{% + \ifthenelse{\equal{#2}{}}% + {\ssub{\mathrm #1}{\(#3\)}}% + {\ssub{\mathrm #1}{#2,\(#3\)}}}}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\scompsvecto} +% new |\scompsvect| that allows for subscripts +% \begin{macrocode} +\newcommandx{\scompsvecto}[2][2,usedefault]{\ensuremath{% + \ifthenelse{\equal{#2}{}}% + {\lv\compvecto{#1}{x},\compvecto{#1}{y},\compvecto{#1}{z}\rv}% + {\lv\compvecto{#1}[#2]{x},\compvecto{#1}[#2]{y},\compvecto{#1}[#2]{z}\rv}}}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\compposo} +% new |\comppos| that allows for subscripts +% \begin{macrocode} +\newcommandx{\compposo}[2][1,usedefault]{\ensuremath{% + \ifthenelse{\equal{#1}{}}% + {#2}% + {\ssub{#2}{#1}}}}% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\scompsposo} +% new |\scompspos| that allows for subscripts +% \begin{macrocode} +\newcommandx{\scompsposo}[1][1,usedefault]{\ensuremath{% + \ifthenelse{\equal{#1}{}}% + {\lv\compposo{x},\compposo{y},\compposo{z}\rv}% + {\lv\compposo[#1]{x},\compposo[#1]{y},\compposo[#1]{z}\rv}}}% +% \end{macrocode} +% \end{macro} +% +% \newpage +% \section{Acknowledgements} +% I thank Marcel Heldoorn, Joseph Wright, Scott Pakin, Aaron Titus, Ruth Chabay, +% and Bruce Sherwood. Special thanks to Martin 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 scalar +% and vector quantities. +% +% \iffalse +%</package> +% \fi +% +% \Finale diff --git a/Master/texmf-dist/source/latex/mandi/mandi.ins b/Master/texmf-dist/source/latex/mandi/mandi.ins new file mode 100644 index 00000000000..1d4ed942283 --- /dev/null +++ b/Master/texmf-dist/source/latex/mandi/mandi.ins @@ -0,0 +1,83 @@ +%% +%% This is file `mandi.ins', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% mandi.dtx (with options: `install') +%% +%% Copyright (C) 2011,2012 by Paul J. Heafner <heafnerj@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 +%% +%% and includes the derived files README +%% mandi.ins +%% mandi.sty +%% mandi.pdf and +%% vdemo.py. +%% --------------------------------------------------------------------------- +%% +\input docstrip.tex +\keepsilent +\askforoverwritefalse +\usedir{tex/latex/mandi} +\preamble + +Copyright (C) 2011,2012 by Paul J. Heafner <heafnerj@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 + +and includes the derived files README + mandi.ins + mandi.sty + mandi.pdf 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}}} +\generate{\usepreamble\empty\usepostamble\empty + \file{README.txt}{\from{\jobname.dtx}{readme}}} + +\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{*************************************************************} +\endbatchfile +\endinput +%% +%% End of file `mandi.ins'. diff --git a/Master/texmf-dist/tex/latex/mandi/mandi.sty b/Master/texmf-dist/tex/latex/mandi/mandi.sty new file mode 100644 index 00000000000..acaf0bf1399 --- /dev/null +++ b/Master/texmf-dist/tex/latex/mandi/mandi.sty @@ -0,0 +1,1371 @@ +%% +%% This is file `mandi.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% mandi.dtx (with options: `package') +%% +%% Copyright (C) 2011,2012 by Paul J. Heafner <heafnerj@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 +%% +%% and includes the derived files README +%% mandi.ins +%% mandi.sty +%% mandi.pdf and +%% vdemo.py. +%% --------------------------------------------------------------------------- +%% +\ProvidesPackage{mandi}[2012/12/31 2.0.0 Macros for intro physics and astronomy] +\NeedsTeXFormat{LaTeX2e}[1999/12/01] +\RequirePackage[intlimits]{amsmath} +\RequirePackage{amssymb} +\RequirePackage{bigints} +\RequirePackage{cancel} +\RequirePackage[leftbars,color]{changebar} +\RequirePackage[dvipsnames]{xcolor} +\RequirePackage{environ} +\RequirePackage{etoolbox} +\RequirePackage{extarrows} +\RequirePackage{filehook} +\RequirePackage[T1]{fontenc} +\RequirePackage{graphicx} +\RequirePackage{epstopdf} +\RequirePackage{textcomp} +\RequirePackage{letltxmacro} +\RequirePackage{listings} +\RequirePackage[framemethod=TikZ]{mdframed} +\RequirePackage[amssymb,cdot,derivedinbase,derived,thickqspace]{SIunits} +\RequirePackage{suffix} +\RequirePackage{xargs} +\RequirePackage{xparse} +\RequirePackage{xspace} +\RequirePackage{ifthen} +\RequirePackage{calligra} +\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} +\DeclareMathAlphabet{\mathpzc}{OT1}{pzc}{m}{it} +\usetikzlibrary{shadows} +\definecolor{vpythoncolor}{rgb}{0.95,0.95,0.95} +\newcommand{\lstvpython}{\lstset{language=Python,numbers=left,numberstyle=\tiny, + backgroundcolor=\color{vpythoncolor},upquote=true,breaklines}} +\newboolean{@optitalicvectors} +\newboolean{@optdoubleabsbars} +\newboolean{@optbaseunits} +\newboolean{@optdrvdunits} +\setboolean{@optitalicvectors}{false} +\setboolean{@optdoubleabsbars}{false} +\setboolean{@optbaseunits}{false} +\setboolean{@optdrvdunits}{false} +\DeclareOption{italicvectors}{\setboolean{@optitalicvectors}{true}} +\DeclareOption{doubleabsbars}{\setboolean{@optdoubleabsbars}{true}} +\DeclareOption{baseunits}{\setboolean{@optbaseunits}{true}} +\DeclareOption{drvdunits}{\setboolean{@optdrvdunits}{true}} +\ProcessOptions\relax +\AtBeginOfPackageFile*{SIunits}{% +\csundef{power} + \csundef{square} + \newcommand*{\square}[1]{\ensuremath{\mathrm{#1}^{2}}} + \renewcommand*{\squared}{\ensuremath{^{\mathrm{2}}}} + \renewcommand*{\cubic}[1]{\ensuremath{\mathrm{#1}^{3}}} + \renewcommand*{\cubed}{\ensuremath{^{\mathrm{3}}}} +\renewcommand*{\fourth}[1]{\ensuremath{\mathrm{#1}^{4}}} +\renewcommand*{\reciprocal}[1]{\ensuremath{\mathrm{#1}^{\SIminus1}}} +\renewcommand*{\rp}{\ensuremath{^{\mathrm{\SIminus1}}}} +\renewcommand*{\rpsquare}[1]{\ensuremath{\mathrm{#1}^{\SIminus2}}} +\renewcommand*{\rpsquared}{\ensuremath{^{\mathrm{\SIminus2}}}} +\renewcommand*{\rpcubic}[1]{\ensuremath{\mathrm{#1}^{\SIminus3}}} +\renewcommand*{\rpcubed}{\ensuremath{^{\mathrm{\SIminus3}}}} +\renewcommand*{\rpfourth}[1]{\ensuremath{\mathrm{#1}^{\SIminus4}}} +\typeout{mandi: SIunits conflicts fixed, but don't use \protect\square\space.} +}% +\newcommand\mi@exchangeargs[2]{#2#1}% +\newcommand\mi@name{}% +\long\def\mi@name#1#{\romannumeral0\mi@innername{#1}}% +\newcommand\mi@innername[2]{% + \expandafter\mi@exchangeargs\expandafter{\csname#2\endcsname}{#1}}% +\begingroup +\@firstofone{% + \endgroup + \newcommand\mi@forkifnull[3]{% + \romannumeral\iffalse{\fi\expandafter\@secondoftwo\expandafter + {\expandafter{\string#1}\expandafter\@secondoftwo\string}% + \expandafter\@firstoftwo\expandafter{\iffalse}\fi0 #3}{0 #2}}}% +\newcommand\selectbaseunit[3]{#1} +\newcommand\selectdrvdunit[3]{#2} +\newcommand\selecttradunit[3]{#3} +\newcommand\selectunit{} +\newcommand\perpusebaseunit{\let\selectunit=\selectbaseunit} +\newcommand\perpusedrvdunit{\let\selectunit=\selectdrvdunit} +\newcommand\perpusetradunit{\let\selectunit=\selecttradunit} +\newcommand\hereusebaseunit[1]{% + \begingroup\perpusebaseunit#1\endgroup}% +\newcommand\hereusedrvdunit[1]{% + \begingroup\perpusedrvdunit#1\endgroup}% +\newcommand\hereusetradunit[1]{% + \begingroup\perpusetradunit#1\endgroup}% +\newenvironment{usebaseunit}{\perpusebaseunit}{}% +\newenvironment{usedrvdunit}{\perpusedrvdunit}{}% +\newenvironment{usetradunit}{\perpusetradunit}{}% +\newcommand*\newphysicsquantity{\definephysicsquantity{\newcommand}} +\newcommand*\redefinephysicsquantity{\definephysicsquantity{\renewcommand}} +\newcommandx\definephysicsquantity[5][4=,5=]{% + \innerdefinewhatsoeverquantityfork{#3}{#4}{#5}{#1}{#2}{}{[1]}{##1}}% +\newcommand*\newphysicsconstant{\definephysicsconstant{\newcommand}} +\newcommand*\redefinephysicsconstant{\definephysicsconstant{\renewcommand}} +\newcommandx\definephysicsconstant[7][6=,7=]{% + \innerdefinewhatsoeverquantityfork{#5}{#6}{#7}{#1}{#2}{#3}{}{#4}}% +\newcommand\innerdefinewhatsoeverquantityfork[3]{% + \expandafter\innerdefinewhatsoeverquantity\romannumeral0% + \mi@forkifnull{#3}{\mi@forkifnull{#2}{{#1}}{{#2}}{#1}}% + {\mi@forkifnull{#2}{{#1}}{{#2}}{#3}}{#1}}% +\newcommand\innerdefinewhatsoeverquantity[8]{% + \mi@name#4{#5}#7{\ensuremath{\unit{#8}{\selectunit{#3}{#1}{#2}}}}% + \mi@name#4{#5baseunit}#7{\ensuremath{\unit{#8}{#3}}}% + \mi@name#4{#5drvdunit}#7{\ensuremath{\unit{#8}{#1}}}% + \mi@name#4{#5tradunit}#7{\ensuremath{\unit{#8}{#2}}}% + \mi@name#4{#5onlyunit}{\ensuremath{\selectunit{#3}{#1}{#2}}}% + \mi@name#4{#5onlybaseunit}{\ensuremath{#3}}% + \mi@name#4{#5onlydrvdunit}{\ensuremath{#1}}% + \mi@name#4{#5onlytradunit}{\ensuremath{#2}}% + \mi@name#4{#5value}#7{\ensuremath{#8}}% + \mi@forkifnull{#7}{% + \ifx#4\renewcommand\mi@name\let{#5mathsymbol}=\relax\fi + \mi@name\newcommand{#5mathsymbol}{\ensuremath{#6}}}{}}% +\ifthenelse{\boolean{@optitalicvectors}} + {\typeout{mandi: You'll get italic vector kernels.}} + {\typeout{mandi: You'll get Roman vector kernels.}} +\ifthenelse{\boolean{@optdoubleabsbars}} + {\typeout{mandi: You'll get double absolute value bars.}} + {\typeout{mandi: You'll get single absolute value bars.}} +\ifthenelse{\boolean{@optbaseunits}} + {\perpusebaseunit % + \typeout{mandi: You'll get base units.}} + {\ifthenelse{\boolean{@optdrvdunits}} + {\perpusedrvdunit % + \typeout{mandi: You'll get derived units.}} + {\perpusetradunit % + \typeout{mandi: You'll get traditional units.}}} +\def\resetMathstrut@{% + \setbox\z@\hbox{% + \mathchardef\@tempa\mathcode`\[\relax + \def\@tempb##1"##2##3{\the\textfont"##3\char"}% + \expandafter\@tempb\meaning\@tempa \relax + }% + \ht\Mathstrutbox@\ht\z@ \dp\Mathstrutbox@\dp\z@} +\begingroup + \catcode`(\active \xdef({\left\string(} + \catcode`)\active \xdef){\right\string)} +\endgroup +\mathcode`(="8000 \mathcode`)="8000 +\typeout{mandi: parentheses made adjustable in math mode.} +\let\oldr@@t\r@@t +\def\r@@t#1#2{% +\setbox0=\hbox{\(\oldr@@t#1{#2\,}\)}\dimen0=\ht0 +\advance\dimen0-0.2\ht0 +\setbox2=\hbox{\vrule height\ht0 depth -\dimen0}% +{\box0\lower0.4pt\box2}} +\LetLtxMacro{\oldsqrt}{\sqrt} +\renewcommand*{\sqrt}[2][\relax]{\oldsqrt[#1]{#2}} +\typeout{mandi: square root symbol fixed.} +\newcommand{\m}{\metre} +\newcommand{\kg}{\kilogram} +\newcommand{\s}{\second} +\newcommand{\A}{\ampere} +\newcommand{\K}{\kelvin} +\newcommand{\mol}{\mole} +\newcommand{\cd}{\candela} +\newphysicsquantity{displacement}{\m}[\m][\m] +\newphysicsquantity{mass}{\kg}[\kg][\kg] +\newphysicsquantity{duration}{\s}[\s][\s] +\newphysicsquantity{current}{\A}[\A][\A] +\newphysicsquantity{temperature}{\K}[\K][\K] +\newphysicsquantity{amount}{\mol}[\mol][\mol] +\newphysicsquantity{luminous}{\cd}[\cd][\cd] +\newphysicsquantity{planeangle}{\m\usk\reciprocal\m}[\radian][\radian] +\newphysicsquantity{solidangle}{\m\squared\usk\rpsquare\m}[\steradian][\steradian] +\newcommand{\indegrees}[1]{\ensuremath{\unit{#1}{\degree}}} +\newcommand{\inarcminutes}[1]{\ensuremath{\unit{#1}{\arcminute}}} +\newcommand{\inarcseconds}[1]{\ensuremath{\unit{#1}{\arcsecond}}} +\newcommand{\ineV}[1]{\ensuremath{\unit{#1}{\electronvolt}}} +\newcommand{\inAU}[1]{\ensuremath{\unit{#1}{AU}}} +\newcommand{\velocityc}[1]{\ensuremath{#1c}} +\newphysicsquantity{velocity}{\m\usk\reciprocal\s}[\m\usk\reciprocal\s][\m\per\s] +\newphysicsquantity{acceleration}{\m\usk\s\rpsquared}[\newton\per\kg][\m\per\s\squared] +\newcommand{\gamman}[1]{\ensuremath{#1}} +\newphysicsquantity{momentum}{\m\usk\kg\usk\reciprocal\s}[\newton\usk\s][\kg\usk\m\per\s] +\newphysicsquantity{impulse}{\m\usk\kg\usk\reciprocal\s}[\newton\usk\s][\kg\usk\m\per\s] +\newphysicsquantity{force}{\m\usk\kg\usk\s\rpsquared}[\newton][\newton] +\newphysicsquantity{springstiffness}{\kg\usk\s\rpsquared}[\newton\per\m][\newton\per\m] +\newphysicsquantity{springstretch}{\m} +\newphysicsquantity{area}{\m\squared} +\newphysicsquantity{volume}{\cubic\m} +\newphysicsquantity{linearmassdensity}{\reciprocal\m\usk\kg}[\kg\per\m][\kg\per\m] +\newphysicsquantity{areamassdensity}{\m\rpsquared\usk\kg}[\kg\per\m\squared] +[\kg\per\m\squared] +\newphysicsquantity{volumemassdensity}{\m\rpcubed\usk\kg}[\kg\per\m\cubed] +[\kg\per\m\cubed] +\newphysicsquantity{youngsmodulus}{\reciprocal\m\usk\kg\usk\s\rpsquared} +[\newton\per\m\squared][\pascal] +\newphysicsquantity{work}{\m\squared\usk\kilogram\usk\s\rpsquared}[\joule] +[\newton\usk\m] +\newphysicsquantity{energy}{\m\squared\usk\kilogram\usk\s\rpsquared}[\joule] +[\newton\usk\m] +\newphysicsquantity{power}{\m\squared\usk\kg\usk\s\rpcubed}[\watt][\joule\per\s] +\newphysicsquantity{angularvelocity}{\radian\usk\reciprocal\s}[\radian\per\s] +[\radian\per\s] +\newphysicsquantity{angularacceleration}{\radian\usk\s\rpsquared}[\radian\per\s\squared] +[\radian\per\s\squared] +\newphysicsquantity{angularmomentum}{\m\squared\usk\kg\usk\reciprocal\s}[\joule\usk\s] +[\kg\usk\m\squared\per\s] +\newphysicsquantity{momentofinertia}{\m\squared\usk\kg}[\joule\usk\s\squared] +[\kg\usk\m\squared] +\newphysicsquantity{torque}{\m\squared\usk\kg\usk\s\rpsquared}[\joule\per\radian] +[\newton\usk\m] +\newphysicsquantity{entropy}{\m\squared\usk\kilogram\usk\s\rpsquared\usk\reciprocal\K} +[\joule\per\K][\joule\per\K] +\newphysicsquantity{wavelength}{\m}[\m][\m] +\newphysicsquantity{wavenumber}{\reciprocal\m}[\per\m][\per\m] +\newphysicsquantity{frequency}{\reciprocal\s}[\hertz][\hertz] +\newphysicsquantity{angularfrequency}{\radian\usk\reciprocal\s}[\radian\per\s] +[\radian\per\s] +\newphysicsquantity{charge}{\A\usk\s}[\coulomb][\coulomb] +\newphysicsquantity{permittivity}{\m\rpcubed\usk\reciprocal\kg\usk\s^{4}\usk\A\squared} +[\farad\per\m][\coulomb\squared\per\newton\usk\m\squared] +\newphysicsquantity{permeability}{\m\usk\kg\usk\s\rpsquared\usk\A\rpsquared} +[\henry\per\m][\tesla\usk\m\per\A] +\newphysicsquantity{electricfield}{\m\usk\kg\usk\s\rpcubed\usk\reciprocal\A}[\volt\per\m] +[\newton\per\coulomb] +\newphysicsquantity{electricdipolemom}{\m\usk\s\usk\A}[\coulomb\usk\m][\coulomb\usk\m] +\newphysicsquantity{magneticfield}{\kg\usk\s\rpsquared\usk\reciprocal\A}[\tesla] +[\newton\per\coulomb\usk(\m\per\s)] +\newphysicsquantity{cmagneticfield}{\m\usk\kg\usk\s\rpcubed\usk\reciprocal\A}[\volt\per\m] +[\newton\per\coulomb] +\newcommand{\lv}{\ensuremath{\left\langle}} +\newcommand{\rv}{\ensuremath{\right\rangle}} +\newcommand{\symvect}{\mivector} +\newcommand{\ncompsvect}{\mivector} +\ExplSyntaxOn +\NewDocumentCommand{\magvectncomps}{ m O{} } + {% + \sum_of_squares:nn { #1 }{ #2 } + }% + +\cs_new:Npn \sum_of_squares:nn #1 #2 + {% + \tl_if_empty:nTF { #2 } + {% + \clist_set:Nn \l_tmpa_clist { #1 } + \ensuremath{% + \sqrt{(\clist_use:Nnnn \l_tmpa_clist { )^2+( } { )^2+( } { )^2+( } )^2 } + }% + }% + {% + \clist_set:Nn \l_tmpa_clist { #1 } + \ensuremath{% + \sqrt{(\clist_use:Nnnn \l_tmpa_clist {\;{ #2 })^2+(} {\;{ #2 })^2+(} + {\;{ #2 })^2+(} \;{ #2 })^2} + }% + }% + }% +\ExplSyntaxOff +\newcommand{\zerovect}{\vect{0}} +\newcommand{\ncompszerovect}{\mivector{0,0,0}} +\ifthenelse{\boolean{@optitalicvectors}} + {\newcommand{\vect}[1]{\ensuremath{\vec{#1}}}} + {\newcommand{\vect}[1]{\ensuremath{\vec{\mathrm{#1}}}}} +\ifthenelse{\boolean{@optdoubleabsbars}} + {\newcommand{\magvect}[1]{\ensuremath{\magof{\vect{#1}}}}} + {\newcommand{\magvect}[1]{\ensuremath{\abs{\vect{#1}}}}} +\newcommand{\dmagvect}[1]{\ensuremath{\dx{\magvect{#1}}}} +\newcommand{\Dmagvect}[1]{\ensuremath{\Delta\!\magvect{#1}}} +\ifthenelse{\boolean{@optitalicvectors}} + {\newcommand{\dirvect}[1]{\ensuremath{\widehat{{#1}}}}} + {\newcommand{\dirvect}[1]{\ensuremath{\widehat{\mathrm{#1}}}}} +\ifthenelse{\boolean{@optitalicvectors}} + {\newcommand{\compvect}[2]{\ensuremath{\ssub{#1}{\(#2\)}}}} + {\newcommand{\compvect}[2]{\ensuremath{\ssub{\mathrm{#1}}{\(#2\)}}}} +\newcommand{\scompsvect}[1]{\ensuremath{\lv + \compvect{#1}{x}, + \compvect{#1}{y}, + \compvect{#1}{z}\rv}} +\newcommand{\magvectscomps}[1]{\ensuremath{\sqrt{ + \msup{\compvect{#1}{x}}{2}+ + \msup{\compvect{#1}{y}}{2}+ + \msup{\compvect{#1}{z}}{2}}}} +\newcommand{\dvect}[1]{\ensuremath{\mathrm{d}\vect{#1}}} +\newcommand{\Dvect}[1]{\ensuremath{\Delta\vect{#1}}} +\newcommand{\dirdvect}[1]{\ensuremath{\widehat{\dvect{#1}}}} +\newcommand{\dirDvect}[1]{\ensuremath{\widehat{\Dvect{#1}}}} +\newcommand{\ddirvect}[1]{\ensuremath{\mathrm{d}\dirvect{E}}} +\newcommand{\Ddirvect}[1]{\ensuremath{\Delta\dirvect{E}}} +\ifthenelse{\boolean{@optdoubleabsbars}} + {\newcommand{\magdvect}[1]{\ensuremath{\magof{\dvect{#1}}}} + \newcommand{\magDvect}[1]{\ensuremath{\magof{\Dvect{#1}}}}} + {\newcommand{\magdvect}[1]{\ensuremath{\abs{\dvect{#1}}}} + \newcommand{\magDvect}[1]{\ensuremath{\abs{\Dvect{#1}}}}} +\newcommand{\compdvect}[2]{\ensuremath{\mathrm{d}\compvect{#1}{#2}}} +\newcommand{\compDvect}[2]{\ensuremath{\Delta\compvect{#1}{#2}}} +\newcommand{\scompsdvect}[1]{\ensuremath{\lv + \compdvect{#1}{x}, + \compdvect{#1}{y}, + \compdvect{#1}{z}\rv}} +\newcommand{\scompsDvect}[1]{\ensuremath{\lv + \compDvect{#1}{x}, + \compDvect{#1}{y}, + \compDvect{#1}{z}\rv}} +\newcommand{\dervect}[2]{\ensuremath{\frac{\dvect{#1}}{\mathrm{d}{#2}}}} +\newcommand{\Dervect}[2]{\ensuremath{\frac{\Dvect{#1}}{\Delta{#2}}}} +\newcommand{\compdervect}[3]{\ensuremath{\dbyd{\compvect{#1}{#3}}{#2}}} +\newcommand{\compDervect}[3]{\ensuremath{\DbyD{\compvect{#1}{#3}}{#2}}} +\newcommand{\scompsdervect}[2]{\ensuremath{\lv + \compdervect{#1}{#2}{x}, + \compdervect{#1}{#2}{y}, + \compdervect{#1}{#2}{z}\rv}} +\newcommand{\scompsDervect}[2]{\ensuremath{\lv + \compDervect{#1}{#2}{x}, + \compDervect{#1}{#2}{y}, + \compDervect{#1}{#2}{z}\rv}} +\ifthenelse{\boolean{@optdoubleabsbars}} + {\newcommand{\magdervect}[2]{\ensuremath{\magof{\dervect{#1}{#2}}}} + \newcommand{\magDervect}[2]{\ensuremath{\magof{\Dervect{#1}{#2}}}}} + {\newcommand{\magdervect}[2]{\ensuremath{\abs{\dervect{#1}{#2}}}} + \newcommand{\magDervect}[2]{\ensuremath{\abs{\Dervect{#1}{#2}}}}} +\newcommand{\dermagvect}[2]{\ensuremath{\dbyd{\magvect{#1}}{#2}}} +\newcommand{\Dermagvect}[2]{\ensuremath{\DbyD{\magvect{#1}}{#2}}} +\newcommand{\scompspos}{\mivector{x,y,z}} +\newcommand{\comppos}[1]{\ensuremath{{#1}}} +\newcommand{\scompsdpos}{\mivector{\mathrm{d}x,\mathrm{d}y,\mathrm{d}z}} +\newcommand{\scompsDpos}{\mivector{\Delta x,\Delta y,\Delta z}} +\newcommand{\compdpos}[1]{\ensuremath{\mathrm{d}{#1}}} +\newcommand{\compDpos}[1]{\ensuremath{\Delta{#1}}} +\newcommand{\scompsderpos}[1]{\ensuremath{\lv + \frac{\mathrm{d}x}{\mathrm{d}{#1}},\frac{\mathrm{d}y}{\mathrm{d}{#1}}, + \frac{\mathrm{d}z}{\mathrm{d}{#1}}\rv}} +\newcommand{\scompsDerpos}[1]{\ensuremath{\lv + \frac{\Delta x}{\Delta{#1}},\frac{\Delta y}{\Delta{#1}}, + \frac{\Delta z}{\Delta{#1}}\rv}} +\newcommand{\compderpos}[2]{\ensuremath{\frac{\mathrm{d}{#1}}{\mathrm{d}{#2}}}} +\newcommand{\compDerpos}[2]{\ensuremath{\frac{\Delta{#1}}{\Delta{#2}}}} +\newcommand{\vectsub}[2]{\ensuremath{\ssub{\vect{#1}}{#2}}} +\ifthenelse{\boolean{@optitalicvectors}} + {\newcommand{\compvectsub}[3]{\ensuremath{\ssub{#1}{#2,\(#3\)}}}} + {\newcommand{\compvectsub}[3]{\ensuremath{\ssub{\mathrm{#1}}{#2,\(#3\)}}}} +\newcommand{\scompsvectsub}[2]{\ensuremath{\lv + \compvectsub{#1}{#2}{x}, + \compvectsub{#1}{#2}{y}, + \compvectsub{#1}{#2}{z}\rv}} +\ifthenelse{\boolean{@optdoubleabsbars}} + {\newcommand{\magvectsub}[2]{\ensuremath{\magof{\vectsub{#1}{#2}}}}} + {\newcommand{\magvectsub}[2]{\ensuremath{\abs{\vectsub{#1}{#2}}}}} +\newcommand{\magvectsubscomps}[2]{\ensuremath{\sqrt{ + \msup{\compvectsub{#1}{#2}{x}}{2}+ + \msup{\compvectsub{#1}{#2}{y}}{2}+ + \msup{\compvectsub{#1}{#2}{z}}{2}}}} +\ifthenelse{\boolean{@optitalicvectors}} + {\newcommand{\dirvectsub}[2]{\ensuremath{\ssub{\widehat{#1}}{#2}}}} + {\newcommand{\dirvectsub}[2]{\ensuremath{\ssub{\widehat{\mathrm{#1}}}{#2}}}} +\newcommand{\dvectsub}[2]{\ensuremath{\mathrm{d}\vectsub{#1}{#2}}} +\newcommand{\Dvectsub}[2]{\ensuremath{\Delta\vectsub{#1}{#2}}} +\newcommand{\compdvectsub}[3]{\ensuremath{\mathrm{d}\compvectsub{#1}{#2}{#3}}} +\newcommand{\compDvectsub}[3]{\ensuremath{\Delta\compvectsub{#1}{#2}{#3}}} +\newcommand{\scompsdvectsub}[2]{\ensuremath{\lv + \compdvectsub{#1}{#2}{x}, + \compdvectsub{#1}{#2}{y}, + \compdvectsub{#1}{#2}{z}\rv}} +\newcommand{\scompsDvectsub}[2]{\ensuremath{\lv + \compDvectsub{#1}{#2}{x}, + \compDvectsub{#1}{#2}{y}, + \compDvectsub{#1}{#2}{z},\rv}} +\newcommand{\dermagvectsub}[3]{\ensuremath{\dbyd{\magvectsub{#1}{#2}}{#3}}} +\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{@optdoubleabsbars}} + {\newcommand{\magdervectsub}[3]{\ensuremath{\magof{\dervectsub{#1}{#2}{#3}}}} + \newcommand{\magDervectsub}[3]{\ensuremath{\magof{\Dervectsub{#1}{#2}{#3}}}}} + {\newcommand{\magdervectsub}[3]{\ensuremath{\abs{\dervectsub{#1}{#2}{#3}}}} + \newcommand{\magDervectsub}[3]{\ensuremath{\abs{\Dervectsub{#1}{#2}{#3}}}}} +\newcommand{\compdervectsub}[4]{\ensuremath{\dbyd{\compvectsub{#1}{#2}{#4}}{#3}}} +\newcommand{\compDervectsub}[4]{\ensuremath{\DbyD{\compvectsub{#1}{#2}{#4}}{#3}}} +\newcommand{\scompsdervectsub}[3]{\ensuremath{\lv + \compdervectsub{#1}{#2}{#3}{x}, + \compdervectsub{#1}{#2}{#3}{y}, + \compdervectsub{#1}{#2}{#3}{z}\rv}} +\newcommand{\scompsDervectsub}[3]{\ensuremath{\lv + \compDervectsub{#1}{#2}{#3}{x}, + \compDervectsub{#1}{#2}{#3}{y}, + \compDervectsub{#1}{#2}{#3}{z}\rv}} +\newcommand{\comppossub}[2]{\ensuremath{\ssub{#2}{#1}}} +\newcommand{\scompspossub}[1]{\ensuremath{\lv + \comppossub{#1}{x}, + \comppossub{#1}{y}, + \comppossub{#1}{z}\rv}} +\newcommand{\compdpossub}[2]{\ensuremath{\mathrm{d}\comppossub{#1}{#2}}} +\newcommand{\compDpossub}[2]{\ensuremath{\Delta\comppossub{#1}{#2}}} +\newcommand{\scompsdpossub}[1]{\ensuremath{\lv + \compdpossub{#1}{x}, + \compdpossub{#1}{y}, + \compdpossub{#1}{z}\rv}} +\newcommand{\scompsDpossub}[1]{\ensuremath{\lv + \compDpossub{#1}{x}, + \compDpossub{#1}{y}, + \compDpossub{#1}{z}\rv}} +\newcommand{\compderpossub}[3]{\ensuremath{\dbyd{\comppossub{#1}{#3}}{#2}}} +\newcommand{\compDerpossub}[3]{\ensuremath{\DbyD{\comppossub{#1}{#3}}{#2}}} +\newcommand{\scompsderpossub}[2]{\ensuremath{\lv + \compderpossub{#1}{#2}{x}, + \compderpossub{#1}{#2}{y}, + \compderpossub{#1}{#2}{z}\rv}} +\newcommand{\scompsDerpossub}[2]{\ensuremath{\lv + \compDerpossub{#1}{#2}{x}, + \compDerpossub{#1}{#2}{y}, + \compDerpossub{#1}{#2}{z}\rv}} +\newcommand{\relpos}[1]{\ensuremath{\vectsub{r}{#1}}} +\newcommand{\relvel}[1]{\ensuremath{\vectsub{v}{#1}}} +\newcommand{\relmom}[1]{\ensuremath{\vectsub{p}{#1}}} +\newcommand{\relfor}[1]{\ensuremath{\vectsub{F}{#1}}} +\newcommand{\vectdotvect}[2]{\ensuremath{{#1}\bullet{#2}}} +\newcommand{\vectdotsvect}[2]{\ensuremath{\scompsvect{#1}\bullet\scompsvect{#2}}} +\newcommand{\vectdotevect}[2]{\ensuremath{ + \compvect{#1}{x}\compvect{#2}{x}+ + \compvect{#1}{y}\compvect{#2}{y}+ + \compvect{#1}{z}\compvect{#2}{z}}} +\newcommand{\vectdotspos}[1]{\ensuremath{\scompsvect{#1}\bullet\scompspos}} +\newcommand{\vectdotepos}[1]{\ensuremath{ + \compvect{#1}{x}\comppos{x}+ + \compvect{#1}{y}\comppos{y}+ + \compvect{#1}{z}\comppos{z}}} +\newcommand{\vectdotsdvect}[2]{\ensuremath{\scompsvect{#1}\bullet\scompsdvect{#2}}} +\newcommand{\vectdotsDvect}[2]{\ensuremath{\scompsvect{#1}\bullet\scompsDvect{#2}}} +\newcommand{\vectdotedvect}[2]{\ensuremath{ + \compvect{#1}{x}\compdvect{#2}{x}+ + \compvect{#1}{y}\compdvect{#2}{y}+ + \compvect{#1}{z}\compdvect{#2}{z}}} +\newcommand{\vectdoteDvect}[2]{\ensuremath{ + \compvect{#1}{x}\compDvect{#2}{x}+ + \compvect{#1}{y}\compDvect{#2}{y}+ + \compvect{#1}{z}\compDvect{#2}{z}}} +\newcommand{\vectdotsdpos}[1]{\ensuremath{\scompsvect{#1}\bullet\scompsdpos}} +\newcommand{\vectdotsDpos}[1]{\ensuremath{\scompsvect{#1}\bullet\scompsDpos}} +\newcommand{\vectdotedpos}[1]{\ensuremath{ + \compvect{#1}{x}\compdpos{x}+ + \compvect{#1}{y}\compdpos{y}+ + \compvect{#1}{z}\compdpos{z}}} +\newcommand{\vectdoteDpos}[1]{\ensuremath{ + \compvect{#1}{x}\compDpos{x}+ + \compvect{#1}{y}\compDpos{y}+ + \compvect{#1}{z}\compDpos{z}}} +\newcommand{\vectsubdotsvectsub}[4]{\ensuremath{ + \scompsvectsub{#1}{#2}\bullet\scompsvectsub{#3}{#4}}} +\newcommand{\vectsubdotevectsub}[4]{\ensuremath{ + \compvectsub{#1}{#2}{x}\compvectsub{#3}{#4}{x}+ + \compvectsub{#1}{#2}{y}\compvectsub{#3}{#4}{y}+ + \compvectsub{#1}{#2}{z}\compvectsub{#3}{#4}{z}}} +\newcommand{\vectsubdotsdvectsub}[4]{\ensuremath{ + \scompsvectsub{#1}{#2}\bullet\scompsdvectsub{#3}{#4}}} +\newcommand{\vectsubdotsDvectsub}[4]{\ensuremath{ + \scompsvectsub{#1}{#2}\bullet\scompsDvectsub{#3}{#4}}} +\newcommand{\vectsubdotedvectsub}[4]{\ensuremath{ + \compvectsub{#1}{#2}{x}\compdvectsub{#3}{#4}{x}+ + \compvectsub{#1}{#2}{y}\compdvectsub{#3}{#4}{y}+ + \compvectsub{#1}{#2}{z}\compdvectsub{#3}{#4}{z}}} +\newcommand{\vectsubdoteDvectsub}[4]{\ensuremath{ + \compvectsub{#1}{#2}{x}\compDvectsub{#3}{#4}{x}+ + \compvectsub{#1}{#2}{y}\compDvectsub{#3}{#4}{y}+ + \compvectsub{#1}{#2}{z}\compDvectsub{#3}{#4}{z}}} +\newcommand{\vectsubdotsdvect}[3]{\ensuremath{ + \scompsvectsub{#1}{#2}\bullet\scompsdvect{#3}}} +\newcommand{\vectsubdotsDvect}[3]{\ensuremath{ + \scompsvectsub{#1}{#2}\bullet\scompsDvect{#3}}} +\newcommand{\vectsubdotedvect}[3]{\ensuremath{ + \compvectsub{#1}{#2}{x}\compdvect{#3}{x}+ + \compvectsub{#1}{#2}{y}\compdvect{#3}{y}+ + \compvectsub{#1}{#2}{z}\compdvect{#3}{z}}} +\newcommand{\vectsubdoteDvect}[3]{\ensuremath{ + \compvectsub{#1}{#2}{x}\compDvect{#3}{x}+ + \compvectsub{#1}{#2}{y}\compDvect{#3}{y}+ + \compvectsub{#1}{#2}{z}\compDvect{#3}{z}}} +\newcommand{\vectsubdotsdpos}[2]{\ensuremath{ + \scompsvectsub{#1}{#2}\bullet\scompsdpos}} +\newcommand{\vectsubdotsDpos}[2]{\ensuremath{ + \scompsvectsub{#1}{#2}\bullet\scompsDpos}} +\newcommand{\vectsubdotedpos}[2]{\ensuremath{ + \compvectsub{#1}{#2}{x}\compdpos{x}+ + \compvectsub{#1}{#2}{y}\compdpos{y}+ + \compvectsub{#1}{#2}{z}\compdpos{z}}} +\newcommand{\vectsubdoteDpos}[2]{\ensuremath{ + \compvectsub{#1}{#2}{x}\compDpos{x}+ + \compvectsub{#1}{#2}{y}\compDpos{y}+ + \compvectsub{#1}{#2}{z}\compDpos{z}}} +\newcommand{\dervectdotsvect}[3]{\ensuremath{ + \scompsdervect{#1}{#2}\bullet\scompsvect{#3}}} +\newcommand{\Dervectdotsvect}[3]{\ensuremath{ + \scompsDervect{#1}{#2}\bullet\scompsvect{#3}}} +\newcommand{\dervectdotevect}[3]{\ensuremath{ + \compdervect{#1}{#2}{x}\compvect{#3}{x}+ + \compdervect{#1}{#2}{y}\compvect{#3}{y}+ + \compdervect{#1}{#2}{z}\compvect{#3}{z}}} +\newcommand{\Dervectdotevect}[3]{\ensuremath{ + \compDervect{#1}{#2}{x}\compvect{#3}{x}+ + \compDervect{#1}{#2}{y}\compvect{#3}{y}+ + \compDervect{#1}{#2}{z}\compvect{#3}{z}}} +\newcommand{\vectdotsdervect}[3]{\ensuremath{ + \scompsvect{#1}\bullet\scompsdervect{#2}{#3}}} +\newcommand{\vectdotsDervect}[3]{\ensuremath{ + \scompsvect{#1}\bullet\scompsDervect{#2}{#3}}} +\newcommand{\vectdotedervect}[3]{\ensuremath{ + \compvect{#1}{x}\compdervect{#2}{#3}{x}+ + \compvect{#1}{y}\compdervect{#2}{#3}{y}+ + \compvect{#1}{z}\compdervect{#2}{#3}{z}}} +\newcommand{\vectdoteDervect}[3]{\ensuremath{ + \compvect{#1}{x}\compDervect{#2}{#3}{x}+ + \compvect{#1}{y}\compDervect{#2}{#3}{y}+ + \compvect{#1}{z}\compDervect{#2}{#3}{z}}} +\newcommand{\dervectdotspos}[2]{\ensuremath{ + \scompsdervect{#1}{#2}\bullet\scompspos}} +\newcommand{\Dervectdotspos}[2]{\ensuremath{ + \scompsDervect{#1}{#2}\bullet\scompspos}} +\newcommand{\dervectdotepos}[2]{\ensuremath{ + \compdervect{#1}{#2}{x}\comppos{x}+ + \compdervect{#1}{#2}{y}\comppos{y}+ + \compdervect{#1}{#2}{z}\comppos{z}}} +\newcommand{\Dervectdotepos}[2]{\ensuremath{ + \compDervect{#1}{#2}{x}\comppos{x}+ + \compDervect{#1}{#2}{y}\comppos{y}+ + \compDervect{#1}{#2}{z}\comppos{z}}} +\newcommand{\dervectdotsdvect}[3]{\ensuremath{ + \scompsdervect{#1}{#2}\bullet\scompsdvect{#3}}} +\newcommand{\DervectdotsDvect}[3]{\ensuremath{ + \scompsDervect{#1}{#2}\bullet\scompsDvect{#3}}} +\newcommand{\dervectdotedvect}[3]{\ensuremath{ + \compdervect{#1}{#2}{x}\compdvect{#3}{x}+ + \compdervect{#1}{#2}{y}\compdvect{#3}{y}+ + \compdervect{#1}{#2}{z}\compdvect{#3}{z}}} +\newcommand{\DervectdoteDvect}[3]{\ensuremath{ + \compDervect{#1}{#2}{x}\compDvect{#3}{x}+ + \compDervect{#1}{#2}{y}\compDvect{#3}{y}+ + \compDervect{#1}{#2}{z}\compDvect{#3}{z}}} +\newcommand{\dervectdotsdpos}[2]{\ensuremath{ + \scompsdervect{#1}{#2}\bullet\scompsdpos}} +\newcommand{\DervectdotsDpos}[2]{\ensuremath{ + \scompsDervect{#1}{#2}\bullet\scompsDpos}} +\newcommand{\dervectdotedpos}[2]{\ensuremath{ + \compdervect{#1}{#2}{x}\compdpos{x}+ + \compdervect{#1}{#2}{y}\compdpos{y}+ + \compdervect{#1}{#2}{z}\compdpos{z}}} +\newcommand{\DervectdoteDpos}[2]{\ensuremath{ + \compDervect{#1}{#2}{x}\compDpos{x}+ + \compDervect{#1}{#2}{y}\compDpos{y}+ + \compDervect{#1}{#2}{z}\compDpos{z}}} +\newcommand{\ezero}{\ensuremath{\msub{\mathbf{e}}{0}}} +\newcommand{\eone}{\ensuremath{\msub{\mathbf{e}}{1}}} +\newcommand{\etwo}{\ensuremath{\msub{\mathbf{e}}{2}}} +\newcommand{\ethree}{\ensuremath{\msub{\mathbf{e}}{3}}} +\newcommand{\efour}{\ensuremath{\msub{\mathbf{e}}{4}}} +\newcommand{\ek}[1]{\ensuremath{\msub{\mathbf{e}}{#1}}} +\newcommand{\e}{\ek} +\newcommand{\uezero}{\ensuremath{\msub{\widehat{\mathbf{e}}}{0}}} +\newcommand{\ueone}{\ensuremath{\msub{\widehat{\mathbf{e}}}{1}}} +\newcommand{\uetwo}{\ensuremath{\msub{\widehat{\mathbf{e}}}{2}}} +\newcommand{\uethree}{\ensuremath{\msub{\widehat{\mathbf{e}}}{3}}} +\newcommand{\uefour}{\ensuremath{\msub{\widehat{\mathbf{e}}}{4}}} +\newcommand{\uek}[1]{\ensuremath{\msub{\widehat{\mathbf{e}}}{#1}}} +\newcommand{\ue}{\uek} +\newcommand{\ezerozero}{\ek{00}} +\newcommand{\eoneone}{\ek{11}} +\newcommand{\eonetwo}{\ek{12}} +\newcommand{\eonethree}{\ek{13}} +\newcommand{\eonefour}{\ek{14}} +\newcommand{\etwoone}{\ek{21}} +\newcommand{\etwotwo}{\ek{22}} +\newcommand{\etwothree}{\ek{23}} +\newcommand{\etwofour}{\ek{24}} +\newcommand{\ethreeone}{\ek{31}} +\newcommand{\ethreetwo}{\ek{32}} +\newcommand{\ethreethree}{\ek{33}} +\newcommand{\ethreefour}{\ek{34}} +\newcommand{\efourone}{\ek{41}} +\newcommand{\efourtwo}{\ek{42}} +\newcommand{\efourthree}{\ek{43}} +\newcommand{\efourfour}{\ek{44}} +\newcommand{\euzero}{\ensuremath{\msup{\mathbf{e}}{0}}} +\newcommand{\euone}{\ensuremath{\msup{\mathbf{e}}{1}}} +\newcommand{\eutwo}{\ensuremath{\msup{\mathbf{e}}{2}}} +\newcommand{\euthree}{\ensuremath{\msup{\mathbf{e}}{3}}} +\newcommand{\eufour}{\ensuremath{\msup{\mathbf{e}}{4}}} +\newcommand{\euk}[1]{\ensuremath{\msup{\mathbf{e}}{#1}}} +\newcommand{\eu}{\euk} +\newcommand{\euzerozero}{\euk{00}} +\newcommand{\euoneone}{\euk{11}} +\newcommand{\euonetwo}{\euk{12}} +\newcommand{\euonethree}{\euk{13}} +\newcommand{\euonefour}{\euk{14}} +\newcommand{\eutwoone}{\euk{21}} +\newcommand{\eutwotwo}{\euk{22}} +\newcommand{\eutwothree}{\euk{23}} +\newcommand{\eutwofour}{\euk{24}} +\newcommand{\euthreeone}{\euk{31}} +\newcommand{\euthreetwo}{\euk{32}} +\newcommand{\euthreethree}{\euk{33}} +\newcommand{\euthreefour}{\euk{34}} +\newcommand{\eufourone}{\euk{41}} +\newcommand{\eufourtwo}{\euk{42}} +\newcommand{\eufourthree}{\euk{43}} +\newcommand{\eufourfour}{\euk{44}} +\newcommand{\gzero}{\ensuremath{\msub{\mathbf{\gamma}}{0}}} +\newcommand{\gone}{\ensuremath{\msub{\mathbf{\gamma}}{1}}} +\newcommand{\gtwo}{\ensuremath{\msub{\mathbf{\gamma}}{2}}} +\newcommand{\gthree}{\ensuremath{\msub{\mathbf{\gamma}}{3}}} +\newcommand{\gfour}{\ensuremath{\msub{\mathbf{\gamma}}{4}}} +\newcommand{\gk}[1]{\ensuremath{\msub{\mathbf{\gamma}}{#1}}} +\newcommand{\g}{\gk} +\newcommand{\gzerozero}{\gk{00}} +\newcommand{\goneone}{\gk{11}} +\newcommand{\gonetwo}{\gk{12}} +\newcommand{\gonethree}{\gk{13}} +\newcommand{\gonefour}{\gk{14}} +\newcommand{\gtwoone}{\gk{21}} +\newcommand{\gtwotwo}{\gk{22}} +\newcommand{\gtwothree}{\gk{23}} +\newcommand{\gtwofour}{\gk{24}} +\newcommand{\gthreeone}{\gk{31}} +\newcommand{\gthreetwo}{\gk{32}} +\newcommand{\gthreethree}{\gk{33}} +\newcommand{\gthreefour}{\gk{34}} +\newcommand{\gfourone}{\gk{41}} +\newcommand{\gfourtwo}{\gk{42}} +\newcommand{\gfourthree}{\gk{43}} +\newcommand{\gfourfour}{\gk{44}} +\newcommand{\guzero}{\ensuremath{\msup{\mathbf{\gamma}}{0}}} +\newcommand{\guone}{\ensuremath{\msup{\mathbf{\gamma}}{1}}} +\newcommand{\gutwo}{\ensuremath{\msup{\mathbf{\gamma}}{2}}} +\newcommand{\guthree}{\ensuremath{\msup{\mathbf{\gamma}}{3}}} +\newcommand{\gufour}{\ensuremath{\msup{\mathbf{\gamma}}{4}}} +\newcommand{\guk}[1]{\ensuremath{\msup{\mathbf{\gamma}}{#1}}} +\newcommand{\gu}{\guk} +\newcommand{\guzerozero}{\guk{00}} +\newcommand{\guoneone}{\guk{11}} +\newcommand{\guonetwo}{\guk{12}} +\newcommand{\guonethree}{\guk{13}} +\newcommand{\guonefour}{\guk{14}} +\newcommand{\gutwoone}{\guk{21}} +\newcommand{\gutwotwo}{\guk{22}} +\newcommand{\gutwothree}{\guk{23}} +\newcommand{\gutwofour}{\guk{24}} +\newcommand{\guthreeone}{\guk{31}} +\newcommand{\guthreetwo}{\guk{32}} +\newcommand{\guthreethree}{\guk{33}} +\newcommand{\guthreefour}{\guk{34}} +\newcommand{\gufourone}{\guk{41}} +\newcommand{\gufourtwo}{\guk{42}} +\newcommand{\gufourthree}{\guk{43}} +\newcommand{\gufourfour}{\guk{44}} +\ExplSyntaxOn +\NewDocumentCommand{\mivector}{ O{,} m o }% + {% + \mi_vector:nn { #1 } { #2 } + \IfValueT{#3}{\;{#3}} + }% +\seq_new:N \l__mi_list_seq +\cs_new_protected:Npn \mi_vector:nn #1 #2 +{% + \ensuremath{% + \seq_set_split:Nnn \l__mi_list_seq { , } { #2 } + \int_compare:nF { \seq_count:N \l__mi_list_seq = 1 } { \left\langle } + \seq_use:Nnnn \l__mi_list_seq { #1 } { #1 } { #1 } + \int_compare:nF { \seq_count:N \l__mi_list_seq = 1 } { \right\rangle } + }% +}% +\ExplSyntaxOff +\ExplSyntaxOn +\seq_new:N \l__vector_arg_seq +\cs_new_protected:Npn \vector_main:nnnn #1 #2 #3 #4 + {% + \seq_set_split:Nnn \l__vector_arg_seq { #3 } { #4 } + \begin{#1matrix} + \seq_use:Nnnn \l__vector_arg_seq { #2 } { #2 } { #2 } + \end{#1matrix} + }% +\NewDocumentCommand{\rowvector}{ O{,} m } + {% + \ensuremath{ + \vector_main:nnnn { p } { \,\, } { #1 } { #2 } + }% + }% +\NewDocumentCommand{\colvector}{ O{,} m } + {% + \ensuremath{ + \vector_main:nnnn { p } { \\ } { #1 } { #2 } + }% + }% +\ExplSyntaxOff +\newcommandx{\scompscvect}[2][1,usedefault]{% + \ifthenelse{\equal{#1}{}}% + {% + \colvector{\msub{#2}{1},\msub{#2}{2},\msub{#2}{3}}% + }% + {% + \colvector{\msub{#2}{0},\msub{#2}{1},\msub{#2}{2},\msub{#2}{3}}% + }% +}% +\newcommandx{\scompsrvect}[2][1,usedefault]{% + \ifthenelse{\equal{#1}{}}% + {% + \rowvector[,]{\msub{#2}{1},\msub{#2}{2},\msub{#2}{3}}% + }% + {% + \rowvector[,]{\msub{#2}{0},\msub{#2}{1},\msub{#2}{2},\msub{#2}{3}}% + }% +}% +\newphysicsconstant{oofpez}{\ensuremath{\frac{1}{\phantom{_o}4\pi\ssub{\epsilon}{o}}}} +{\scin[9]{9}}{\ensuremath{\m\cubed\usk\kg\usk\s^{-4}\usk\A\rpsquared}}[\m\per\farad] +[\newton\usk\m\squared\per\coulomb\squared] +\newphysicsconstant{oofpezcs}{\ensuremath{\frac{1}{\phantom{_o}4\pi\ssub{\epsilon}{o} +c^2\phantom{_o}}}}{\scin{-7}}{\m\usk\kg\usk\s\rpsquared\usk\A\rpsquared}[\tesla\usk\m +\squared][\newton\usk\s\squared\per\coulomb\squared] +\newphysicsconstant{epsz}{\ensuremath{\ssub{\epsilon}{o}}}{\scin[9]{-12}} +{\m\rpcubed\usk\reciprocal\kg\usk\s^{4}\usk\A\squared}[\farad\per\m] +[\coulomb\squared\per\newton\usk\m\squared] +\newphysicsconstant{mzofp}{\ensuremath{\frac{\phantom{_oo}\ssub{\mu}{o}\phantom{_o}} +{4\pi}}}{\scin{-7}}{\m\usk\kg\usk\s\rpsquared\usk\A\rpsquared}[\henry\per\m] +[\tesla\usk\m\per\A] +\newphysicsconstant{muz}{\ensuremath{\ssub{\mu}{o}}}{\scin[4\pi]{-7}} +{\m\usk\kg\usk\s\rpsquared\usk\A\rpsquared}[\henry\per\m][\tesla\usk\m\per\A] +\newphysicsconstant{kboltz}{\ensuremath{\ssub{k}{B}}}{\scin[1.38]{-23}} +{\kg\usk\m\squared\usk\rpsquare\s\usk\reciprocal\K}[\joule\per\K][\joule\per\K] +\newcommand{\kboltznev}{\ensuremath{\scin[8.62]{-5}{\eV\per\K}}} +\newphysicsconstant{stefan}{\ensuremath{\sigma}}{\scin[5.67]{-8}}{\kg\usk\s\rpcubed\usk +\K^{-4}}[\watt\per\m\squared\usk\K^4][\watt\per\m\squared\usk\K^4] +\newphysicsconstant{planck}{\ensuremath{h}}{\scin[6.62]{-34}} +{\m\squared\usk\kg\usk\reciprocal\s}[\joule\usk\s][\kg\usk\m\squared\per\s] +\newcommand{\plancknev}{\ensuremath{\scin[4.136]{-15}{\eV\usk\s}}} +\newphysicsconstant{planckbar}{\ensuremath{\hbar}}{\scin[1.05]{-34}} +{\m\squared\usk\kg\usk\reciprocal\s}[\joule\usk\s][\kg\usk\m\squared\per\s] +\newcommand{\planckbarnev}{\ensuremath{\scin[4.136]{-15}{\eV\usk\s}}} +\newphysicsconstant{Navogadro}{\ensuremath{\ssub{N}{A}}}{\scin[6.022]{23}}{\reciprocal +\mol}[\reciprocal\mol][\reciprocal\mol] +\newphysicsconstant{bigG}{\ensuremath{G}}{\scin[6.67]{-11}} +{\m\cubed\usk\reciprocal\kg\usk\s\rpsquared}[\joule\usk\m\per\kg\squared] +[\newton\usk\m\squared\per\kg\squared] +\newphysicsconstant{littleg}{\ensuremath{g}}{9.80}{\m\usk\s\rpsquared}[\newton\per\kg] +[\m\per\s\squared] +\newphysicsconstant{clight}{\ensuremath{c}}{\scin[3.00]{8}}{\m\usk\reciprocal\s} +[\m\usk\reciprocal\s][\m\per\s] +\newcommand{\clightnfn}{\ensuremath{\unit{1}{ft\per\nano\s}}} +\newphysicsconstant{Ratom}{\ensuremath{\ssub{r}{atom}}}{\scin{-10}}{\m}[\m][\m] +\newphysicsconstant{Mproton}{\ensuremath{\ssub{m}{proton}}}{\scin[1.673]{-27}}{\kg} +[\kg][\kg] +\newphysicsconstant{Mneutron}{\ensuremath{\ssub{m}{neutron}}}{\scin[1.675]{-27}} +{\kg}[\kg][\kg] +\newphysicsconstant{Mhydrogen}{\ensuremath{\ssub{m}{hydrogen}}}{\scin[1.673]{-27}} +{\kg}[\kg][\kg] +\newphysicsconstant{Melectron}{\ensuremath{\ssub{m}{electron}}}{\scin[9.109]{-31}} +{\kg}[\kg][\kg] +\newphysicsconstant{echarge}{\ensuremath{e}}{\scin[1.602]{-19}}{\A\usk\s}[\coulomb] +[\coulomb] +\newphysicsconstant{Qelectron}{\ensuremath{\ssub{Q}{electron}}}{-\echargevalue} +{\A\usk\s}[\coulomb][\coulomb] +\newphysicsconstant{qelectron}{\ensuremath{\ssub{q}{electron}}}{-\echargevalue} +{\A\usk\s}[\coulomb][\coulomb] +\newphysicsconstant{Qproton}{\ensuremath{\ssub{Q}{proton}}}{+\echargevalue} +{\A\usk\s}[\coulomb][\coulomb] +\newphysicsconstant{qproton}{\ensuremath{\ssub{q}{proton}}}{+\echargevalue} +{\A\usk\s}[\coulomb][\coulomb] +\newphysicsconstant{MEarth}{\ensuremath{\ssub{M}{Earth}}}{\scin[6]{24}}{\kg}[\kg][\kg] +\newphysicsconstant{MMoon}{\ensuremath{\ssub{M}{Moon}}}{\scin[7]{22}}{\kg}[\kg][\kg] +\newphysicsconstant{MSun}{\ensuremath{\ssub{M}{Sun}}}{\scin[2]{30}}{\kg}[\kg][\kg] +\newphysicsconstant{REarth}{\ensuremath{\ssub{R}{Earth}}}{\scin[6.4]{6}}{\m}[\m][\m] +\newphysicsconstant{RMoon}{\ensuremath{\ssub{R}{Moon}}}{\scin[1.75]{6}}{\m}[\m][\m] +\newphysicsconstant{RSun}{\ensuremath{\ssub{R}{Sun}}}{\scin[7]{8}}{\m}[\m][\m] +\newphysicsconstant{ESdist}{\magvectsub{r}{ES}}{\scin[1.5]{11}}{\m}[\m][\m] +\newphysicsconstant{SEdist}{\magvectsub{r}{SE}}{\scin[1.5]{11}}{\m}[\m][\m] +\newphysicsconstant{EMdist}{\magvectsub{r}{EM}}{\scin[4]{8}}{\m}[\m][\m] +\newphysicsconstant{MEdist}{\magvectsub{r}{ME}}{\scin[4]{8}}{\m}[\m][\m] +\newcommand{\lightyear}{\ensuremath{\mathrm{ly}}} +\newcommand{\Lightyear}{\ensuremath{\mathrm{LY}}} +\newcommand{\cyear}{\ensuremath{c\usk\mathrm{year}}} +\newcommand{\cyr}{\ensuremath{c\usk\mathrm{yr}}} +\newcommand{\yyear}{\ensuremath{\mathrm{year}}} +\newcommand{\yr}{\ensuremath{\mathrm{yr}}} +\newcommand{\parsec}{\ensuremath{\mathrm{pc}}} +\newphysicsconstant{LSun}{\ensuremath{\ssub{L}{Sun}}}{\scin[4]{26}} + {\m\squared\usk\kg\usk\s\rpcubed}[\watt][\joule\per\s] +\newphysicsconstant{TSun}{\ensuremath{\ssub{T}{Sun}}}{5800}{\K}[\K][\K] +\newphysicsconstant{MagSun}{\ensuremath{\ssub{M}{Sun}}}{+4.83}{}[][] +\newphysicsconstant{magSun}{\ensuremath{\ssub{m}{Sun}}}{-26.74}{}[][] +\newcommand{\Lstar}[1][\(\star\)]{\ensuremath{\ssub{L}{#1}}} +\newcommand{\Lsolar}{\ensuremath{\Lstar[\(\odot\)]}} +\newcommand{\Tstar}[1][\(\star\)]{\ensuremath{\ssub{T}{#1}}} +\newcommand{\Tsolar}{\ensuremath{\Tstar[\(\odot\)]}} +\newcommand{\Rstar}[1][\(\star\)]{\ensuremath{\ssub{R}{#1}}} +\newcommand{\Rsolar}{\ensuremath{\Rstar[\(\odot\)]}} +\newcommand{\Mstar}[1][\(\star\)]{\ensuremath{\ssub{M}{#1}}} +\newcommand{\Msolar}{\ensuremath{\Mstar[\(\odot\)]}} +\newcommand{\Fstar}[1][\(\star\)]{\ensuremath{\ssub{F}{#1}}} +\newcommand{\fstar}[1][\(\star\)]{\ensuremath{\ssub{f}{#1}}} +\newcommand{\FSun}{\ensuremath{\Fstar[Sun]}} +\newcommand{\fSun}{\ensuremath{\fstar[Sun]}} +\newcommand{\Fsolar}{\ensuremath{\Fstar[\(\odot\)]}} +\newcommand{\fsolar}{\ensuremath{\fstar[\(\odot\)]}} +\newcommand{\Magstar}[1][\(\star\)]{\ensuremath{\ssub{M}{#1}}} +\newcommand{\magstar}[1][\(\star\)]{\ensuremath{\ssub{m}{#1}}} +\newcommand{\Magsolar}{\ensuremath{\Magstar[\(\odot\)]}} +\newcommand{\magsolar}{\ensuremath{\magstar[\(\odot\)]}} +\newcommand{\Dstar}[1][\(\star\)]{\ensuremath{\ssub{D}{#1}}} +\newcommand{\dstar}[1][\(\star\)]{\ensuremath{\ssub{d}{#1}}} +\newcommand{\Dsolar}{\ensuremath{\Dstar[\(\odot\)]}} +\newcommand{\dsolar}{\ensuremath{\dstar[\(\odot\)]}} +\newcommand{\onehalf}{\ensuremath{\frac{1}{2}}\xspace} +\newcommand{\onethird}{\ensuremath{\frac{1}{3}}\xspace} +\newcommand{\onefourth}{\ensuremath{\frac{1}{4}}\xspace} +\newcommand{\onefifth}{\ensuremath{\frac{1}{5}}\xspace} +\newcommand{\onesixth}{\ensuremath{\frac{1}{6}}\xspace} +\newcommand{\oneseventh}{\ensuremath{\frac{1}{7}}\xspace} +\newcommand{\oneeighth}{\ensuremath{\frac{1}{8}}\xspace} +\newcommand{\oneninth}{\ensuremath{\frac{1}{9}}\xspace} +\newcommand{\onetenth}{\ensuremath{\frac{1}{10}}\xspace} +\newcommand{\twothirds}{\ensuremath{\frac{2}{3}}\xspace} +\newcommand{\twofifths}{\ensuremath{\frac{2}{5}}\xspace} +\newcommand{\twosevenths}{\ensuremath{\frac{2}{7}}\xspace} +\newcommand{\twoninths}{\ensuremath{\frac{2}{9}}\xspace} +\newcommand{\threehalves}{\ensuremath{\frac{3}{2}}\xspace} +\newcommand{\threefourths}{\ensuremath{\frac{3}{4}}\xspace} +\newcommand{\threefifths}{\ensuremath{\frac{3}{5}}\xspace} +\newcommand{\threesevenths}{\ensuremath{\frac{3}{7}}\xspace} +\newcommand{\threeeighths}{\ensuremath{\frac{3}{8}}\xspace} +\newcommand{\threetenths}{\ensuremath{\frac{3}{10}}\xspace} +\newcommand{\fourthirds}{\ensuremath{\frac{4}{3}}\xspace} +\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{\integral}[4][1,2,usedefault]{\ensuremath{ + \int_{\ifthenelse{\equal{#1}{}}{}{#4=#1}}^{\ifthenelse{\equal{#2}{}}{}{#4=#2}}} + {#3}\dx{#4}} +\newcommandx{\Integral}[4][1,2,usedefault]{\ensuremath{ + \bigint_{\ifthenelse{\equal{#1}{}}{}{#4=#1}}^{\ifthenelse{\equal{#2}{}}{} + {#4=#2}}}{#3}\dx{#4}} +\newcommand{\opensurfintegral}[2]{\ensuremath{ + \int\nolimits_{#1}\vectdotvect{\vect{#2}}{\dirvect{n}}\dx{A}}} +\newcommand{\opensurfIntegral}[2]{\ensuremath{ + \bigint\nolimits_{\mskip -25.00mu\displaystyle\mathbf{#1}} + \vectdotvect{\vect{#2}}{\dirvect{n}} + \dx{A}}} +\newcommand{\closedsurfintegral}[2]{\ensuremath{ + \oint\nolimits_{#1}\vectdotvect{\vect{#2}}{\dirvect{n}}\dx{A}}} +\newcommand{\closedsurfIntegral}[2]{\ensuremath{ + \bigoint\nolimits_{\mskip -25.00mu\displaystyle\mathbf{#1}}\;\; + \vectdotvect{\vect{#2}}{\dirvect{n}}\dx{A}}} +\newcommand{\openlineintegral}[2]{\ensuremath{ + \int\nolimits_{#1}\vectdotvect{\vect{#2}}{\dirvect{t}} + \dx{\ell}}} +\newcommand{\openlineIntegral}[2]{\ensuremath{ + \bigint\nolimits_{\mskip -25.00mu\displaystyle\mathbf{#1}} + \vectdotvect{\vect{#2}}{\dirvect{t}}\dx{\ell}}} +\newcommand{\closedlineintegral}[2]{\ensuremath{ + \oint\nolimits_{#1}\vectdotvect{\vect{#2}}{\dirvect{t}}\dx{\ell}}} +\newcommand{\closedlineIntegral}[2]{\ensuremath{ + \bigoint\nolimits_{\mskip -25.00mu\displaystyle\mathbf {#1}}\;\; + \vectdotvect{\vect{#2}}{\dirvect{t}}\dx{\ell}}} +\newcommandx{\dbydt}[1][1]{\ensuremath{\frac{\mathrm{d}{#1}}{\mathrm{d}t}}} +\newcommandx{\DbyDt}[1][1]{\ensuremath{\frac{\Delta{#1}}{\Delta t}}} +\newcommandx{\ddbydt}[1][1]{\ensuremath{\frac{\mathrm{d}^{2}{#1}}{\mathrm{d}t^{2}}}} +\newcommandx{\DDbyDt}[1][1]{\ensuremath{\frac{\Delta^{2}{#1}}{\Delta t^{2}}}} +\newcommandx{\pbypt}[1][1]{\ensuremath{\frac{\partial{#1}}{\partial t}}} +\newcommandx{\ppbypt}[1][1]{\ensuremath{\frac{\partial^{2}{#1}}{\partial t^{2}}}} +\newcommand{\dbyd}[2]{\ensuremath{\frac{\mathrm{d}{#1}}{\mathrm{d}{#2}}}} +\newcommand{\DbyD}[2]{\ensuremath{\frac{\Delta{#1}}{\Delta{#2}}}} +\newcommand{\ddbyd}[2]{\ensuremath{\frac{\mathrm{d}^{2}{#1}}{\mathrm{d}{#2}^{2}}}} +\newcommand{\DDbyD}[2]{\ensuremath{\frac{\Delta^{2}{#1}}{\Delta{#2}^{2}}}} +\newcommand{\pbyp}[2]{\ensuremath{\frac{\partial{#1}}{\partial{#2}}}} +\newcommand{\ppbyp}[2]{\ensuremath{\frac{\partial^{2}{#1}}{\partial{#2}^{2}}}} +\newcommand{\seriesfofx}{\ensuremath{% +f(x) \approx f(a) + \frac{f^\prime (a)}{1!}(x-a) + \frac{f^{\prime\prime}(a)}{2!}(x-a)^2 ++ \frac{f^{\prime\prime\prime}(a)}{3!}(x-a)^3 + \ldots}\xspace} +\newcommand{\seriesexpx}{\ensuremath{% +e^x \approx 1 + x + \frac{x^2}{2!} + \frac{x^3}{3!} + \ldots}\xspace} +\newcommand{\seriessinx}{\ensuremath{% +\sin x \approx x - \frac{x^3}{3!} + \frac{x^5}{5!} - \ldots}\xspace} +\newcommand{\seriescosx}{\ensuremath{% +\cos x \approx 1 - \frac{x^2}{2!} + \frac{x^4}{4!} - \ldots}\xspace} +\newcommand{\seriestanx}{\ensuremath{% +\tan x \approx x + \frac{x^3}{3} + \frac{2x^5}{15} + \ldots}\xspace} +\newcommand{\seriesatox}{\ensuremath{% +a^x \approx 1 + x \ln{a} + \frac{(x \ln a)^2}{2!} + \frac{(x \ln a)^3}{3!} + \ldots} +\xspace} +\newcommand{\serieslnoneplusx}{\ensuremath{% +\ln(1 \pm x) \approx \pm\; x - \frac{x^2}{2} \pm \frac{x^3}{3} - \frac{x^4}{4} \pm \ldots} +\xspace} +\newcommand{\binomialseries}{\ensuremath{% +(1 + x)^n \approx 1 + nx + \frac{n(n-1)}{2!}x^2 + \ldots}\xspace} +\newcommand{\divergence}[1]{\ensuremath{\vectdotvect{\nabla}{#1}}} +\newcommand{\curl}[1]{\ensuremath{\nabla\times{#1}}} +\newcommand{\diracdelta}[1]{\ensuremath{\boldsymbol{\delta}\quant{#1}}} +\DeclareMathOperator{\asin}{\sin^{-1}} +\DeclareMathOperator{\acos}{\cos^{-1}} +\DeclareMathOperator{\atan}{\tan^{-1}} +\DeclareMathOperator{\asec}{\sec^{-1}} +\DeclareMathOperator{\acsc}{\csc^{-1}} +\DeclareMathOperator{\acot}{\cot^{-1}} +\DeclareMathOperator{\sech}{sech} +\DeclareMathOperator{\csch}{csch} +\DeclareMathOperator{\asinh}{\sinh^{-1}} +\DeclareMathOperator{\acosh}{\cosh^{-1}} +\DeclareMathOperator{\atanh}{\tanh^{-1}} +\DeclareMathOperator{\asech}{\sech^{-1}} +\DeclareMathOperator{\acsch}{\csch^{-1}} +\DeclareMathOperator{\acoth}{\coth^{-1}} +\DeclareMathOperator{\sgn}{sgn} +\DeclareMathOperator{\dex}{dex} +\newcommand{\eV}{\electronvolt} +\newcommand{\ev}{\electronvolt} +\newcommand{\emf}{\ensuremath{\mathrm{emf}}} +\newcommand{\logb}[1][\relax]{\ensuremath{\log_{_{#1}}}} +\ifthenelse{\boolean{@optitalicvectors}} + {\newcommand{\cB}{\ensuremath{c\mskip -5.00mu B}}} + {\newcommand{\cB}{\ensuremath{\textsf{c}\mskip -3.00mu\mathrm{B}}}} +\newcommand{\newpi}{\ensuremath{\pi\mskip -7.8mu\pi}} +\newcommand{\scripty}[1]{\ensuremath{\mathcalligra{#1}}} +\newcommandx{\flux}[1][1]{\ensuremath{\ssub{\Phi}{#1}}} +\newcommand{\abs}[1]{\ensuremath{\left\lvert{#1}\right\rvert}} +\newcommand{\magof}[1]{\ensuremath{\left\lVert{#1}\right\rVert}} +\newcommand{\dimsof}[1]{\ensuremath{\left[{#1}\right]}} +\newcommand{\unitsof}[1]{\ensuremath{\left[{#1}\right]_{_{u}}}} +\newcommand{\quant}[1]{\ensuremath{\left({#1}\right)}} +\newcommand{\bquant}[1]{\ensuremath{\left[{#1}\right]}} +\newcommand{\changein}[1]{\ensuremath{\delta{#1}}} +\newcommand{\Changein}[1]{\ensuremath{\Delta{#1}}} +\newcommandx{\scin}[3][1,3=\!\!,usedefault]{\ensuremath{ + \ifthenelse{\equal{#1}{}} + {\unit{\msup{10}{#2}}{#3}} + {\unit{\msup{{#1}\times 10}{#2}}{#3}}}} +\newcommand{\ee}[2]{\texttt{{#1}e{#2}}} +\newcommand{\EE}[2]{\texttt{{#1}E{#2}}} +\newcommand{\dms}[3]{\ensuremath{\indegrees{#1}\inarcminutes{#2}\inarcseconds{#3}}} +\newcommand{\hms}[3]{\ensuremath{{#1}^{\hour}{#2}^{\mathrm{m}}{#3}^{\s}}} +\newcommand{\clockreading}{\hms} +\newcommand{\latitude}[1]{\ensuremath{\unit{#1}{\degree}}} +\newcommand{\latitudeN}[1]{\ensuremath{\unit{#1}{\degree\; N}}} +\newcommand{\latitudeS}[1]{\ensuremath{\unit{#1}{\degree\; S}}} +\newcommand{\longitude}[1]{\ensuremath{\unit{#1}{\degree}}} +\newcommand{\longitudeE}[1]{\ensuremath{\unit{#1}{\degree\; E}}} +\newcommand{\longitudeW}[1]{\ensuremath{\unit{#1}{\degree\; W}}} +\newcommand{\ssub}[2]{\ensuremath{{#1}_{_{_{\mbox{\tiny{#2}}}}}}} +\newcommand{\ssup}[2]{\ensuremath{{#1}^{^{^{\mbox{\tiny{#2}}}}}}} +\newcommand{\ssud}[3]{\ensuremath{{#1}^{^{^{\mbox{\tiny{#2}}}}}_{_{_{\mbox{\tiny{#3}}}}}}} +\newcommand{\msub}[2]{\ensuremath{#1^{^{\scriptstyle{{}}}}_{_{_{\scriptstyle{#2}}}}}} +\newcommand{\msup}[2]{\ensuremath{#1^{^{\scriptstyle{#2}}}}} +\newcommand{\msud}[3]{\ensuremath{#1^{^{\scriptstyle{#2}}}_{_{_{\scriptstyle{#3}}}}}} +\newcommand{\levicivita}[1]{\ensuremath{\msub{\varepsilon}{#1}}} +\newcommand{\xaxis}{\ensuremath{x\mbox{-axis }}} +\newcommand{\yaxis}{\ensuremath{y\mbox{-axis }}} +\newcommand{\zaxis}{\ensuremath{z\mbox{-axis }}} +\newcommand{\naxis}[1]{\ensuremath{{#1}\mbox{-axis}}} +\newcommand{\xyplane}{\ensuremath{xy\mbox{-plane }}} +\newcommand{\yzplane}{\ensuremath{yz\mbox{-plane }}} +\newcommand{\zxplane}{\ensuremath{zx\mbox{-plane }}} +\newcommand{\yxplane}{\ensuremath{yx\mbox{-plane }}} +\newcommand{\zyplane}{\ensuremath{zy\mbox{-plane }}} +\newcommand{\xzplane}{\ensuremath{xz\mbox{-plane }}} +\newcommand{\cuberoot}[1]{\ensuremath{\sqrt[3]{#1}}} +\newcommand{\fourthroot}[1]{\ensuremath{\sqrt[4]{#1}}} +\newcommand{\fifthroot}[1]{\ensuremath{\sqrt[5]{#1}}} +\newcommand{\fsqrt}[1]{\ensuremath{\msup{#1}{\onehalf}}} +\newcommand{\fcuberoot}[1]{\ensuremath{\msup{#1}{\onethird}}} +\newcommand{\ffourthroot}[1]{\ensuremath{\msup{#1}{\onefourth}}} +\newcommand{\ffifthroot}[1]{\ensuremath{\msup{#1}{\onefifth}}} +\newcommand{\relgamma}[1]{\ensuremath{ + \frac{1}{\sqrt{1-\msup{\quant{\frac{#1}{c}}}{2}}}}} +\newcommand{\frelgamma}[1]{\ensuremath{ + \msup{\quant{1-\frac{\msup{{#1}}{2}}{\msup{c}{2}}}}{-\onehalf}}} +\newcommand{\oosqrtomxs}[1]{\ensuremath{\frac{1}{\sqrt{1-\msup{#1}{2}}}}} +\newcommand{\oosqrtomx}[1]{\ensuremath{\frac{1}{\sqrt{1-{#1}}}}} +\newcommand{\ooomx}[1]{\ensuremath{\frac{1}{1-{#1}}}} +\newcommand{\ooopx}[1]{\ensuremath{\frac{1}{1+{#1}}}} +\newcommand{\isequals}{\wordoperator{?}{=}\xspace} +\newcommand{\wordoperator}[2]{\ensuremath{% + \mathrel{\vcenter{\offinterlineskip + \halign{\hfil\tiny\upshape##\hfil\cr\noalign{\vskip-.5ex} + {#1}\cr\noalign{\vskip.5ex}{#2}\cr}}}}} +\newcommand{\definedas}{\wordoperator{defined}{as}\xspace} +\newcommand{\associated}{\wordoperator{associated}{with}\xspace} +\newcommand{\adjustedby}{\wordoperator{adjusted}{by}\xspace} +\newcommand{\earlierthan}{\wordoperator{earlier}{than}\xspace} +\newcommand{\laterthan}{\wordoperator{later}{than}\xspace} +\newcommand{\forevery}{\wordoperator{for}{every}\xspace} +\newcommand{\pwordoperator}[2]{\ensuremath{\left(% + \mathrel{\vcenter{\offinterlineskip + \halign{\hfil\tiny\upshape##\hfil\cr\noalign{\vskip-.5ex} + {#1}\cr\noalign{\vskip.5ex}{#2}\cr}}}\right)}}% +\newcommand{\pdefinedas}{\pwordoperator{defined}{as}\xspace} +\newcommand{\passociated}{\pwordoperator{associated}{with}\xspace} +\newcommand{\padjustedby}{\pwordoperator{adjusted}{by}\xspace} +\newcommand{\pearlierthan}{\pwordoperator{earlier}{than}\xspace} +\newcommand{\platerthan}{\pwordoperator{later}{than}\xspace} +\newcommand{\pforevery}{\pwordoperator{for}{every}\xspace} +\newcommand{\defines}{\ensuremath{\stackrel{\text{\tiny{def}}}{=}}\xspace} +\newcommand{\inframe}[1][\relax]{\ensuremath{\xrightarrow[\tiny{\mathcal #1}]{}}\xspace} +\newcommand{\associates}{\ensuremath{\xrightarrow{\text{\tiny{assoc}}}}\xspace} +\newcommand{\becomes}{\ensuremath{\xrightarrow{\text{\tiny{becomes}}}}\xspace} +\newcommand{\rrelatedto}[1]{\ensuremath{\xLongrightarrow{\text{\tiny{#1}}}}} +\newcommand{\lrelatedto}[1]{\ensuremath{\xLongleftarrow[\text{\tiny{#1}}]{}}} +\newcommand{\brelatedto}[2]{\ensuremath{ + \xLongleftrightarrow[\text{\tiny{#1}}]{\text{\tiny{#2}}}}} +\newcommand{\momprinciple}{\ensuremath{ + \vectsub{p}{sys,f}=\vectsub{p}{sys,i}+\Fnetsys\Delta t}} +\newcommand{\LHSmomprinciple}{\ensuremath{ + \vectsub{p}{sys,f}}} +\newcommand{\RHSmomprinciple}{\ensuremath{ + \vectsub{p}{sys,i}+\Fnetsys\Delta t}} +\newcommand{\energyprinciple}{\ensuremath{\ssub{E}{sys,f}=\ssub{E}{sys,i}+ + \ssub{W}{ext}+Q}} +\newcommand{\LHSenergyprinciple}{\ensuremath{\ssub{E}{sys,f}}} +\newcommand{\RHSenergyprinciple}{\ensuremath{\ssub{E}{sys,i}+\ssub{W}{ext}+Q}} +\newcommand{\angularmomprinciple}{\ensuremath{\vectsub{L}{sys,A,f}=\vectsub{L}{sys,A,i}+ + \Tnetsys\Delta t}} +\newcommand{\LHSangularmomprinciple}{\ensuremath{\vectsub{L}{sys,A,f}}} +\newcommand{\RHSangularmomprinciple}{\ensuremath{\vectsub{L}{sys,A,i}+\Tnetsys\Delta t}} +\newcommand{\gravinteraction}{\ensuremath{ + \bigGmathsymbol\frac{\msub{M}{1}\msub{M}{2}}{\msup{\magvectsub{r}{12}}{2}} + \quant{-\dirvectsub{r}{12}}}} +\newcommand{\elecinteraction}{\ensuremath{ + \oofpezmathsymbol\frac{\msub{Q}{1}\msub{Q}{2}}{\msup{\magvectsub{r}{12}}{2}} + \dirvectsub{r}{12}}} +\newcommand{\Bfieldofparticle}{\ensuremath{ + \mzofpmathsymbol\frac{Q\magvect{v}}{\msup{\magvect{r}}{2}}\dirvect{v}\times\dirvect{r}}} +\newcommand{\Efieldofparticle}{\ensuremath{ + \oofpezmathsymbol\frac{Q}{\msup{\magvect{r}}{2}}\dirvect{r}}} +\newcommand{\Esys}{\ssub{E}{sys}} +\newcommandx{\Us}[1][1]{\ssub{\ssub{U}{s}}{#1}} +\newcommandx{\Ug}[1][1]{\ssub{\ssub{U}{g}}{#1}} +\newcommandx{\Ue}[1][1]{\ssub{\ssub{U}{e}}{#1}} +\newcommandx{\Ktrans}[1][1]{\ssub{\ssub{K}{trans}}{#1}} +\newcommandx{\Krot}[1][1]{\ssub{\ssub{K}{rot}}{#1}} +\newcommandx{\Eparticle}[1][1]{\ssub{\ssub{E}{particle}}{#1}} +\newcommandx{\Einternal}[1][1]{\ssub{\ssub{E}{internal}}{#1}} +\newcommandx{\Erest}[1][1]{\ssub{\ssub{E}{rest}}{#1}} +\newcommandx{\Echem}[1][1]{\ssub{\ssub{E}{chem}}{#1}} +\newcommandx{\Etherm}[1][1]{\ssub{\ssub{E}{therm}}{#1}} +\newcommandx{\Evib}[1][1]{\ssub{\ssub{E}{vib}}{#1}} +\newcommandx{\Ephoton}[1][1]{\ssub{\ssub{E}{photon}}{#1}} +\newcommand{\DEsys}{\Changein\Esys} +\newcommand{\DUs}{\Changein\Us} +\newcommand{\DUg}{\Changein\Ug} +\newcommand{\DUe}{\Changein\Ue} +\newcommand{\DKtrans}{\Changein\Ktrans} +\newcommand{\DKrot}{\Changein\Krot} +\newcommand{\DEparticle}{\Changein\Eparticle} +\newcommand{\DEinternal}{\Changein\Einternal} +\newcommand{\DErest}{\Changein\Erest} +\newcommand{\DEchem}{\Changein\Echem} +\newcommand{\DEtherm}{\Changein\Etherm} +\newcommand{\DEvib}{\Changein\Evib} +\newcommand{\DEphoton}{\Changein\Ephoton} +\newcommand{\Usfinal}{\ssub{\left(\onehalf\ks \msup{s}{2}\right)}{f}} +\newcommand{\Usinitial}{\ssub{\left(\onehalf\ks \msup{s}{2}\right)}{i}} +\newcommand{\Ugfinal}{\ssub{\left(-G\frac{\msub{M}{1}\msub{M}{2}} + {\magvectsub{r}{12}}\right)}{f}} +\newcommand{\Uginitial}{\ssub{\left(-G\frac{\msub{M}{1}\msub{M}{2}} + {\magvectsub{r}{12}}\right)}{i}} +\newcommand{\Uefinal}{\ssub{\left(\oofpezmathsymbol\frac{\ssub{Q}{1}\ssub{Q}{2}} + {\magvectsub{r}{12}}\right)}{f}} +\newcommand{\Ueinitial}{\ssub{\left(\oofpezmathsymbol\frac{\ssub{Q}{1}\ssub{Q}{2}} + {\magvectsub{r}{12}}\right)}{i}} +\newcommand{\ks}{\ssub{k}{s}} +\newcommand{\Fnet}{\ensuremath{\vectsub{F}{net}}} +\newcommand{\Fnetext}{\ensuremath{\vectsub{F}{net,ext}}} +\newcommand{\Fnetsys}{\ensuremath{\vectsub{F}{net,sys}}} +\newcommand{\Fsub}[1]{\ensuremath{\vectsub{F}{#1}}} +\newcommand{\Tnet}{\ensuremath{\vectsub{T}{net}}} +\newcommand{\Tnetext}{\ensuremath{\vectsub{T}{net,ext}}} +\newcommand{\Tnetsys}{\ensuremath{\vectsub{T}{net,sys}}} +\newcommand{\Tsub}[1]{\ensuremath{\vectsub{T}{#1}}} +\newcommand{\vpythonline}{\lstinline[language=Python,numbers=left,numberstyle=\tiny, + upquote=true,breaklines]} +\lstnewenvironment{vpythonblock}{\lstvpython}{} +\newcommand{\vpythonfile}{\lstinputlisting[language=Python,numbers=left, + numberstyle=\tiny,upquote=true,breaklines]} +\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,5=0.10,usedefault]{% + \def\skipper{#5}% + \def\response@fbox{\fcolorbox{#2}{#1}}% + \begin{center}% + \begin{lrbox}{\@tempboxa}% + \begin{minipage}[c][#5\textheight][c]{#4\textwidth}\color{#3}% + \vspace{#5\textheight}}{% + \vspace{\skipper\textheight}% + \end{minipage}% + \end{lrbox}% + \response@fbox{\usebox{\@tempboxa}}% + \end{center}% +}% +\newenvironmentx{adjactivityanswer}[5][1=white,2=black,3=black,4=0.90,5=0.00, + usedefault]{% + \def\skipper{#5}% + \def\response@fbox{\fcolorbox{#2}{#1}}% + \begin{center}% + \begin{lrbox}{\@tempboxa}% + \begin{minipage}[c]{#4\textwidth}\color{#3}% + \vspace{#5\textheight}}{% + \vspace{\skipper\textheight}% + \end{minipage}% + \end{lrbox}% + \response@fbox{\usebox{\@tempboxa}}% + \end{center}% +}% +\newcommandx{\emptybox}[6][1=\hfill,2=white,3=black,4=black,5=0.90,6=0.10,usedefault] + {\begin{center} + \fcolorbox{#3}{#2}{% + \begin{minipage}[c][#6\textheight][c]{#5\textwidth}\color{#4}% + {#1}% + \end{minipage}}% + \vspace{\baselineskip}% + \end{center}}% +\newcommandx{\adjemptybox}[7][1=\hfill,2=white,3=black,4=black,5=0.90,6=,7=0.0,usedefault] + {\begin{center} + \fcolorbox{#3}{#2}{% + \begin{minipage}[c]{#5\textwidth}\color{#4}% + \vspace{#7\textheight}% + {#1}% + \vspace{#7\textheight}% + \end{minipage}}% + \vspace{\baselineskip}% + \end{center}}% +\newcommandx{\answerbox}[6][1=\hfill,2=white,3=black,4=black,5=0.90,6=0.1,usedefault] + {\ifthenelse{\equal{#1}{}} + {\begin{center}% + \fcolorbox{#3}{#2}{% + \emptyanswer[#5][#6]}% + \vspace{\baselineskip}% + \end{center}}% + {\emptybox[#1][#2][#3][#4][#5][#6]}}% +\newcommandx{\adjanswerbox}[7][1=\hfill,2=white,3=black,4=black,5=0.90,6=0.1,7=0.0, + usedefault] + {\ifthenelse{\equal{#1}{}}% + {\begin{center}% + \fcolorbox{#3}{#2}{% + \emptyanswer[#5][#6]}% + \vspace{\baselineskip}% + \end{center}}% + {\adjemptybox[#1][#2][#3][#4][#5][#6][#7]}}% +\newcommandx{\smallanswerbox}[6][1=\hfill,2=white,3=black,4=black,5=0.90,6=0.10, + usedefault] + {\ifthenelse{\equal{#1}{}} + {\begin{center}% + \fcolorbox{#3}{#2}{% + \emptyanswer[#5][#6]}% + \vspace{\baselineskip}% + \end{center}}% + {\emptybox[#1][#2][#3][#4][#5][#6]}}% +\newcommandx{\mediumanswerbox}[6][1=\hfill,2=white,3=black,4=black,5=0.90,6=0.20, + usedefault]{% + \ifthenelse{\equal{#1}{}} + {\begin{center}% + \fcolorbox{#3}{#2}{% + \emptyanswer[#5][#6]% + }% + \vspace{\baselineskip}% + \end{center}% + }% + {\emptybox[#1][#2][#3][#4][#5][#6] + }% +}% +\newcommandx{\largeanswerbox}[6][1=\hfill,2=white,3=black,4=black,5=0.90,6=0.25, + usedefault]{% + \ifthenelse{\equal{#1}{}} + {\begin{center}% + \fcolorbox{#3}{#2}{% + \emptyanswer[#5][#6]% + }% + \vspace{\baselineskip}% + \end{center}% + }% + {\emptybox[#1][#2][#3][#4][#5][#6] + }% +}% +\newcommandx{\largeranswerbox}[6][1=\hfill,2=white,3=black,4=black,5=0.90,6=0.33, + usedefault]{% + \ifthenelse{\equal{#1}{}} + {\begin{center}% + \fcolorbox{#3}{#2}{% + \emptyanswer[#5][#6]% + }% + \vspace{\baselineskip}% + \end{center}% + }% + {\emptybox[#1][#2][#3][#4][#5][#6] + }% +}% +\newcommandx{\hugeanswerbox}[6][1=\hfill,2=white,3=black,4=black,5=0.90,6=0.50, + usedefault]{% + \ifthenelse{\equal{#1}{}} + {\begin{center}% + \fcolorbox{#3}{#2}{% + \emptyanswer[#5][#6]% + }% + \vspace{\baselineskip}% + \end{center}% + }% + {\emptybox[#1][#2][#3][#4][#5][#6] + }% +}% +\newcommandx{\hugeranswerbox}[6][1=\hfill,2=white,3=black,4=black,5=0.90,6=0.75, + usedefault]{% + \ifthenelse{\equal{#1}{}} + {\begin{center}% + \fcolorbox{#3}{#2}{% + \emptyanswer[#5][#6]% + }% + \vspace{\baselineskip}% + \end{center}% + }% + {\emptybox[#1][#2][#3][#4][#5][#6] + }% +}% +\newcommandx{\fullpageanswerbox}[6][1=\hfill,2=white,3=black,4=black,5=0.90,6=1.00, + usedefault]{% + \ifthenelse{\equal{#1}{}} + {\begin{center}% + \fcolorbox{#3}{#2}{% + \emptyanswer[#5][#6]}% + \vspace{\baselineskip}% + \end{center}}% + {\emptybox[#1][#2][#3][#4][#5][#6]}}% +\mdfdefinestyle{miinstructornotestyle}{% + hidealllines=false, skipbelow=\baselineskip, skipabove=\baselineskip, + leftmargin=40pt, rightmargin=40pt, linewidth=1, roundcorner=10, + frametitle={INSTRUCTOR NOTE}, + frametitlebackgroundcolor=cyan!60, frametitlerule=true, frametitlerulewidth=1, + backgroundcolor=cyan!25, + linecolor=black, fontcolor=black, shadow=true} +\NewEnviron{miinstructornote}{% + \begin{mdframed}[style=miinstructornotestyle] + \begin{adjactivityanswer}[cyan!25][cyan!25][black] + \BODY + \end{adjactivityanswer} + \end{mdframed} +}% +\mdfdefinestyle{mistudentnotestyle}{% + hidealllines=false, skipbelow=\baselineskip, skipabove=\baselineskip, + leftmargin=40pt, rightmargin=40pt, linewidth=1, roundcorner=10, + frametitle={STUDENT NOTE}, + frametitlebackgroundcolor=cyan!60, frametitlerule=true, frametitlerulewidth=1, + backgroundcolor=cyan!25, + linecolor=black, fontcolor=black, shadow=true} +\NewEnviron{mistudentnote}{% + \begin{mdframed}[style=mistudentnotestyle] + \begin{adjactivityanswer}[cyan!25][cyan!25][black] + \BODY + \end{adjactivityanswer} + \end{mdframed} +}% +\mdfdefinestyle{miderivationstyle}{% + hidealllines=false, skipbelow=\baselineskip, skipabove=\baselineskip, + leftmargin=0pt, rightmargin=0pt, linewidth=1, roundcorner=10, + frametitle={DERIVATION}, + frametitlebackgroundcolor=orange!60, frametitlerule=true, frametitlerulewidth=1, + backgroundcolor=orange!25, + linecolor=black, fontcolor=black, shadow=true} +\NewEnviron{miderivation}{% + \begin{mdframed}[style=miderivationstyle] + \setcounter{equation}{0} + \begin{align} + \BODY + \end{align} + \end{mdframed} +}% +\mdfdefinestyle{bwinstructornotestyle}{% + hidealllines=false, skipbelow=\baselineskip, skipabove=\baselineskip, + leftmargin=40pt, rightmargin=40pt, linewidth=1, roundcorner=10, + frametitle={INSTRUCTOR NOTE}, + frametitlebackgroundcolor=gray!50, frametitlerule=true, frametitlerulewidth=1, + backgroundcolor=gray!20, + linecolor=black, fontcolor=black, shadow=true} +\NewEnviron{bwinstructornote}{% + \begin{mdframed}[style=bwinstructornotestyle] + \begin{adjactivityanswer}[gray!20][gray!20][black] + \BODY + \end{adjactivityanswer} + \end{mdframed} +}% +\mdfdefinestyle{bwstudentnotestyle}{% + hidealllines=false, skipbelow=\baselineskip, skipabove=\baselineskip, + leftmargin=40pt, rightmargin=40pt, linewidth=1, roundcorner=10, + frametitle={STUDENT NOTE}, + frametitlebackgroundcolor=gray!50, frametitlerule=true, frametitlerulewidth=1, + backgroundcolor=gray!20, + linecolor=black, fontcolor=black, shadow=true} +\NewEnviron{bwstudentnote}{% + \begin{mdframed}[style=bwstudentnotestyle] + \begin{adjactivityanswer}[gray!20][gray!20][black] + \BODY + \end{adjactivityanswer} + \end{mdframed} +}% +\mdfdefinestyle{bwderivationstyle}{% + hidealllines=false, skipbelow=\baselineskip, skipabove=\baselineskip, + leftmargin=0pt, rightmargin=0pt, linewidth=1, roundcorner=10, + frametitle={DERIVATION}, + frametitlebackgroundcolor=gray!50, frametitlerule=true, frametitlerulewidth=1, + backgroundcolor=gray!20, + linecolor=black, fontcolor=black, shadow=true} +\NewEnviron{bwderivation}{% + \begin{mdframed}[style=bwderivationstyle] + \setcounter{equation}{0} + \begin{align} + \BODY + \end{align} + \end{mdframed} +} +\newcommand{\checkpoint}{% + \vspace{1cm}\begin{center}|--------- CHECKPOINT ---------|\end{center}}% +\newcommand{\image}[2]{% + \begin{figure}[h!] + \begin{center}% + \includegraphics[scale=1]{#1}% + \caption{#2}% + \label{#1}% + \end{center}% + \end{figure}} +\newcommand{\sneakyone}[1]{\ensuremath{\cancelto{1}{\frac{#1}{#1}}}} +\newcommand{\chkphysicsquantity}[1]{% + \cs{#1} +}% +\newcommandx{\vecto}[2][2,usedefault]{\ensuremath{% + \ifthenelse{\equal{#2}{}}% + {\vec{\mathrm #1}}% + {\ssub{\vec{\mathrm #1}}{#2}}}}% +\newcommandx{\compvecto}[3][2,usedefault]{\ensuremath{% + \ifthenelse{\equal{#2}{}}% + {\ssub{\mathrm #1}{\(#3\)}}% + {\ssub{\mathrm #1}{#2,\(#3\)}}}}% +\newcommandx{\scompsvecto}[2][2,usedefault]{\ensuremath{% + \ifthenelse{\equal{#2}{}}% + {\lv\compvecto{#1}{x},\compvecto{#1}{y},\compvecto{#1}{z}\rv}% + {\lv\compvecto{#1}[#2]{x},\compvecto{#1}[#2]{y},\compvecto{#1}[#2]{z}\rv}}}% +\newcommandx{\compposo}[2][1,usedefault]{\ensuremath{% + \ifthenelse{\equal{#1}{}}% + {#2}% + {\ssub{#2}{#1}}}}% +\newcommandx{\scompsposo}[1][1,usedefault]{\ensuremath{% + \ifthenelse{\equal{#1}{}}% + {\lv\compposo{x},\compposo{y},\compposo{z}\rv}% + {\lv\compposo[#1]{x},\compposo[#1]{y},\compposo[#1]{z}\rv}}}% +\endinput +%% +%% End of file `mandi.sty'. diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check index e6a4793c736..3a99ad9ac21 100755 --- a/Master/tlpkg/bin/tlpkg-ctan-check +++ b/Master/tlpkg/bin/tlpkg-ctan-check @@ -264,7 +264,7 @@ my @TLP_working = qw( lxfonts ly1 m-tx macqassign macros2e mafr magaz magyar mailing mailmerge makebarcode makebox makecell makecirc makecmds makedtx makeglos makeplot - manuscript margbib + mandi manuscript margbib marginfix marginnote marvosym match_parens math-e mathabx mathabx-type1 mathalfa mathastext mathcomp mathdesign mathdots mathexam diff --git a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc index e826cc94e23..f78c97a9de3 100644 --- a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc +++ b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc @@ -449,6 +449,7 @@ depend makecirc depend makecmds depend makedtx depend makeglos +depend mandi depend manfnt depend manuscript depend marginfix diff --git a/Master/tlpkg/tlpsrc/mandi.tlpsrc b/Master/tlpkg/tlpsrc/mandi.tlpsrc new file mode 100644 index 00000000000..e69de29bb2d --- /dev/null +++ b/Master/tlpkg/tlpsrc/mandi.tlpsrc |