Open main menu

Difference between revisions of "Matrix in maths"

m
(Replaced content with "moved to Math/Matrices")
Tag: Replaced
 
(32 intermediate revisions by 2 users not shown)
Line 1: Line 1:
In order to type matrices in math formulas, there is the command {{cmd|definemathmatrix}}. Once a certain type of matrix is defined, one can also add a simple command in order to type matrices in a Matlab or Scilab format.
+
moved to [[Math/Matrices]]
 
 
Here are a few examples
 
 
 
<context source = yes>
 
%% defining matrix with parentheses
 
\definemathmatrix[pmatrix]
 
[matrix:parentheses]
 
[simplecommand=pmatrix]
 
 
 
%% defining matrix with brackets
 
\definemathmatrix[bmatrix]
 
[matrix:brackets]
 
[simplecommand=bmatrix]
 
 
%% defining determinant with bars
 
\definemathmatrix[determinant]
 
[matrix:bars]
 
[simplecommand=thedeterminant]
 
\starttext
 
Let $A$ be the matrix
 
\startformula
 
A :=
 
\startpmatrix
 
\NC 2 \NC 3 \NR
 
\NC 1 \NC 2 \NR
 
\stoppmatrix.
 
\stopformula
 
Show that
 
\startformula
 
{\rm det}(A) = \startdeterminant
 
\NC 2 \NC 3 \NR
 
\NC 1 \NC 2 \NR
 
\stopdeterminant = 1.
 
\stopformula
 
Compute the matrix $AB$ where $B$ is the matrix
 
\startformula
 
B := \pmatrix{2, -3 ; -1, 2}.
 
\stopformula
 
\stoptext
 
</context>
 
It is possible to have different delimiters on the left and on the right. For instance:
 
<context source = yes >
 
\definemathmatrix[pvmatrix]
 
[left={\left(\thinspace},
 
right={\thinspace\right|}]
 
 
\definemathmatrix[rpmatrix]
 
[left={\left.\thinspace},
 
right={\thinspace\right)}]
 
 
 
\starttext
 
\startformula
 
\startpvmatrix
 
\NC 11 \NC 12 \NC 13 \NR
 
\NC 21 \NC 22 \NC 23 \NR
 
\NC 31 \NC 32 \NC 33 \NR
 
\stoppvmatrix
 
\startrpmatrix
 
\NC  0 \NR
 
\NC  1 \NR
 
\NC  2 \NR
 
\stoprpmatrix
 
\stopformula
 
 
 
\stoptext
 
</context>
 
 
 
In ConTeXt LMTX beginning version 2020-11-27, it is possible to create « block » matrices where the blocks are separated by vertical or horizontal lines (respectively {{cmd|VL}} and {{cmd|HL}}). For instance the above example can be typeset more easily by the following (the output may be incorrect on this wiki: if this is the case copy the code below and typeset it on your machine with ConTeXt LMTX):
 
 
 
<context source = yes>
 
\definemathmatrix[mymatrix]
 
[left={\left\lparent\thinspace}, % instead of the left parenthesis, one can use any other fence
 
right={\thinspace\right\rparent}] % instead of the right parenthesis, one can use any other fence
 
 
 
\starttext
 
Here is $3 \times 3$ matrix with a column added to it
 
\startformula
 
\startmymatrix
 
\NC 11 \NC 12 \NC 13 \VL 0 \NR
 
\NC 21 \NC 22 \NC 23 \VL 1 \NR
 
\NC 31 \NC 32 \NC 33 \VL 2 \NR
 
\stopmymatrix
 
\stopformula
 
Here is block matrix:
 
\startformula
 
\startmymatrix
 
\NC A \VL  B \NR
 
\HL
 
\NC C \VL  D \NR
 
\stopmymatrix
 
\stopformula
 
</context>
 
 
 
{{todo|regenerate examples after the wiki context has been updated}}
 
 
 
The two commands {{cmd|VL}} and {{cmd|HL}} take an optional parameter which defines the thickness of the rule and its color. So {{cmd|HL|[3,red]}} will produce a red horizontal rule three times thicker than the default matrix rule. The rule thickness for a specific matrix is defined with the {{code|1=[rulethickness=]}} parameter of {{cmd|definemathmatrix}}.
 
 
 
<context source=yes>
 
\definemathmatrix[mymatrix][matrix:parentheses][rulethickness=2pt]
 
 
 
\starttext
 
\startformula
 
\startmymatrix
 
\NC A \VL[3,green]  B \NR
 
\HL[10,red]
 
\NC C \VL D \NR
 
\stopmymatrix
 
\stopformula
 
</context>
 
 
 
A {{cmd|VL}} counts as a hidden cell. To interrupt a vertical line, use an empty cell.
 
 
 
<context source=yes>
 
\definemathmatrix[mymatrix][matrix:parentheses]
 
 
 
\starttext
 
Weird matrix
 
\startformula
 
\startmymatrix
 
\NC A \VL B \NR
 
\HL[red]
 
\NC C \NC \NC D \NR
 
\stopmymatrix
 
\stopformula
 
 
 
This allows things like
 
 
 
\startformula
 
\startmymatrix
 
\NC A \VL B \NR
 
\HL
 
\NC \NC C \NC \NR
 
\stopmymatrix
 
\qquad
 
\startmymatrix
 
\NC A_1 \VL B_1 \NR
 
\HL
 
\NC \vdots \NC \vdots \NC \vdots \NR
 
\HL
 
\NC A_n \VL B_n \NR
 
\stopmymatrix
 
\stopformula
 
\stoptext
 
</context>
 

Latest revision as of 10:43, 12 May 2024

moved to Math/Matrices