# Implementation of ShearingMatrix

How does Mathematica implement ShearingMatrix?

In other words given the parameters $\theta$, $n$ and $v$, what is the formula behind it?

• ShearingMatrix evaluates for symbolic inputs. While it won't display the general formula used, it will show its particular expression for a given dimension. For instance in 2D, one can evaluate ShearingMatrix[\[Theta], {u1, u2}, {v1, v2}].
– user31159
Oct 27 '16 at 1:10
• The general formula can be found with some spelunking: <<GeneralUtilities; PrintDefinitions[ShearingMatrix].
– user31159
Oct 27 '16 at 1:11
• @xavier This doesn't seem to work in Mathematica 10. It does nothing. Oct 27 '16 at 1:45
• Ah OK, PrintDefinitions is from 10.1. You could have a look there for other spelunking tools.
– user31159
Oct 27 '16 at 9:34
• @xavier I tried this in 10.1 and it helped a lot, thanks. Oct 27 '16 at 12:10

The code of symbols implemented in top-level can be seen by using PrintDefinitions.
For ShearingMatrix, one can evaluate
<<GeneralUtilities

and then click on SystemTransformConstructorDumpiShearingMatrix to view the formula used.
PrintDefinitions is available from version 10.1. For earlier versions of Mathematica, other spelunking tools can be found in this post.