]> gitweb.michael.orlitzky.com - mjotex.git/blobdiff - mjo-linear_algebra.tex
Enable a bibliography by default.
[mjotex.git] / mjo-linear_algebra.tex
index ebf4acddc359c7b02b6c9f81f29b05564a6290d8..e2ae9fa5b18c008639db087142911ba51a6c10b0 100644 (file)
@@ -1,9 +1,22 @@
 %
 % Standard operations from linear algebra.
 %
+\ifx\havemjolinearalgebra\undefined
+\def\havemjolinearalgebra{1}
 
-% Needed for \lvert, \rVert, etc. and \operatorname.
-\usepackage{amsmath}
+
+\ifx\lvert\undefined
+  \usepackage{amsmath} % \lvert, \rVert, etc. and \operatorname.
+\fi
+
+\ifx\ocircle\undefined
+  \usepackage{wasysym}
+\fi
+
+\ifx\clipbox\undefined
+  % Part of the adjustbox package; needed to clip the \perp sign.
+  \usepackage{trimclip}
+\fi
 
 \input{mjo-common}
 
 % specialized to real matrices.
 \newcommand*{\transpose}[1]{ #1^{T} }
 
+% The Moore-Penrose (or any other, I guess) pseudo-inverse of its
+% sole argument.
+\newcommand*{\pseudoinverse}[1]{ #1^{+} }
+
 % The trace of an operator.
 \newcommand*{\trace}[1]{ \operatorname{trace}\of{{#1}} }
 
@@ -56,7 +73,7 @@
 \newcommand*{\matricize}[1]{ \operatorname{mat}\of{{#1}} }
 
 % An inline column vector, with parentheses and a transpose operator.
-\newcommand*{\colvec}[1]{ \left({#1}\right)^{T} }
+\newcommand*{\colvec}[1]{ \transpose{\left({#1}\right)} }
 
 % Bounded linear operators on some space. The required argument is the
 % domain of those operators, and the optional argument is the
     \fi
   }
 }
+
+
+%
+% Orthogonal direct sum.
+%
+% First declare my ``perp in a circle'' operator, which is meant to be
+% like an \obot or an \operp except has the correct weight circle. It's
+% achieved by overlaying an \ocircle with a \perp, but only after we
+% clip off the top half of the \perp sign and shift it up.
+\DeclareMathOperator{\oplusperp}{\mathbin{
+  \ooalign{
+    $\ocircle$\cr
+    \raisebox{0.625\height}{$\clipbox{0pt 0pt 0pt 0.5\height}{$\perp$}$}\cr
+  }
+}}
+
+% Now declare an orthogonal direct sum in terms of \oplusperp.
+\newcommand*{\directsumperp}[2]{ {#1}\oplusperp{#2} }
+
+
+\fi