How do I construct an nxn matrix?Vertical line in matrix using LaTeXiTHow to make this matrix in...
Are small insurances worth it
What can I substitute for soda pop in a sweet pork recipe?
Did Amazon pay $0 in taxes last year?
What does 'acting greedily' mean?
Sometimes a banana is just a banana
How to kill a localhost:8080
How to reorder street address on checkout page in magento 2?
How can I be pwned if I'm not registered on that site?
Is divide-by-zero a security vulnerability?
Canadian citizen, on US no-fly list. What can I do in order to be allowed on flights which go through US airspace?
Is there a frame of reference in which I was born before I was conceived?
The need of reserving one's ability in job interviews
Rationale to prefer local variables over instance variables?
Is my plan for fixing my water heater leak bad?
What to do when being responsible for data protection in your lab, yet advice is ignored?
I can't die. Who am I?
How to speed up a process
Can I become debt free or should I file for bankruptcy? How do I manage my debt and finances?
Is the set of paths between any two points moving only in units on the plane countable or uncountable?
Logistics of a hovering watercraft in a fantasy setting
It took me a lot of time to make this, pls like. (YouTube Comments #1)
Hacker Rank: Array left rotation
Did 5.25" floppies undergo a change in magnetic coating?
Pure Functions: Does "No Side Effects" Imply "Always Same Output, Given Same Input"?
How do I construct an nxn matrix?
Vertical line in matrix using LaTeXiTHow to make this matrix in LaTeX?Vertical line in matrix in gauss packageEqual spacing in matrixWhat's the best way to write matrix together with its dimensions on top and left?Multiple line matrix equationsWriting fraction in matrixCreating a weird matrixMake a symbol take up an entire (multi-column, multi-row) sub-matrixFormatting a Block Matrix
I'm trying to create a large nxn matrix but I am unable to find a technique which will make it easier rather than doing it manually, any ideas?
matrices
New contributor
add a comment |
I'm trying to create a large nxn matrix but I am unable to find a technique which will make it easier rather than doing it manually, any ideas?
matrices
New contributor
If the data is stored in a file, you can use pgfplotstable or csvsimple to format it. OTOH, pgfplotstable can be a pain to customize. For examplecolumns/name/.style={...}
is used a lot.
– John Kormylo
20 hours ago
add a comment |
I'm trying to create a large nxn matrix but I am unable to find a technique which will make it easier rather than doing it manually, any ideas?
matrices
New contributor
I'm trying to create a large nxn matrix but I am unable to find a technique which will make it easier rather than doing it manually, any ideas?
matrices
matrices
New contributor
New contributor
edited 21 hours ago
Bernard
172k776204
172k776204
New contributor
asked 21 hours ago
johnjohn
413
413
New contributor
New contributor
If the data is stored in a file, you can use pgfplotstable or csvsimple to format it. OTOH, pgfplotstable can be a pain to customize. For examplecolumns/name/.style={...}
is used a lot.
– John Kormylo
20 hours ago
add a comment |
If the data is stored in a file, you can use pgfplotstable or csvsimple to format it. OTOH, pgfplotstable can be a pain to customize. For examplecolumns/name/.style={...}
is used a lot.
– John Kormylo
20 hours ago
If the data is stored in a file, you can use pgfplotstable or csvsimple to format it. OTOH, pgfplotstable can be a pain to customize. For example
columns/name/.style={...}
is used a lot.– John Kormylo
20 hours ago
If the data is stored in a file, you can use pgfplotstable or csvsimple to format it. OTOH, pgfplotstable can be a pain to customize. For example
columns/name/.style={...}
is used a lot.– John Kormylo
20 hours ago
add a comment |
4 Answers
4
active
oldest
votes
This prints a random matrix with the specified size.
The keys are size
(mandatory), lb
for the lower bound on the random integers (default 0), ub
for the upper bound on the random integers (default 20).
documentclass{article}
usepackage{amsmath}
usepackage{xparse}
ExplSyntaxOn
NewDocumentCommand{bigmatrix}{m}
{
group_begin:
keys_set:nn { john/bigmatrix } { #1 }
john_bigmatrix:
group_end:
}
tl_new:N l__john_bigmatrix_tl
keys_define:nn { john/bigmatrix }
{
size .int_set:N = l__john_bigmatrix_size_int,
lb .int_set:N = l__john_bigmatrix_lb_int,
ub .int_set:N = l__john_bigmatrix_ub_int,
lb .initial:n = 0,
ub .initial:n = 20,
}
cs_new_protected:Nn john_bigmatrix:
{
int_compare:nT { l__john_bigmatrix_size_int > value{MaxMatrixCols} }
{
setcounter{MaxMatrixCols}{l__john_bigmatrix_size_int}
}
int_step_function:nN { l__john_bigmatrix_size_int } __john_bigmatrix_row:n
begin{bmatrix}
l__john_bigmatrix_tl
end{bmatrix}
}
cs_new_protected:Nn __john_bigmatrix_row:n
{
tl_put_right:Nx l__john_bigmatrix_tl
{
int_rand:nn { l__john_bigmatrix_lb_int } { l__john_bigmatrix_ub_int }
}
prg_replicate:nn { l__john_bigmatrix_size_int - 1 }
{
tl_put_right:Nx l__john_bigmatrix_tl
{
&
int_rand:nn { l__john_bigmatrix_lb_int } { l__john_bigmatrix_ub_int }
}
}
tl_put_right:Nn l__john_bigmatrix_tl { \ }
}
ExplSyntaxOff
begin{document}
$bigmatrix{size=5}$ $bigmatrix{size=6,lb=-12,ub=12}$
bigskip
$bigmatrix{size=15,ub=50}$
end{document}
add a comment |
Use Mathematica for example,
IdentityMatrix[10] // TeXForm
And copy the output for LaTeX as follows.
documentclass[border=12pt,12pt]{standalone}
usepackage{amsmath}
begin{document}
$A=
begin{pmatrix}
1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \
0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \
0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \
0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \
0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 \
0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 \
0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 \
0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 \
0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 \
0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 \
end{pmatrix}
$
end{document}
Note that: LaTeX generates some errors for n x n matrices with n>10.
– The Inventor of God
20 hours ago
add a comment |
Use the computer algebra system Sage along with the sagetex
package. First, here is the code:
documentclass{article}
usepackage{sagetex}
begin{document}
begin{sagesilent}
latex.matrix_delimiters(left='[', right=']')
A = Matrix([[0,-1,-1],[-1,-1,0],[-1,0,1],[1,0,0],[0,0,-1],[-1,2,1]])
B = Matrix.identity(4)
C = random_matrix(ZZ,4,3)
D = random_matrix(QQ,3,4)
end{sagesilent}
The matrix $A=sage{A}$ was input by hand. The matrix $B=sage{B}$ is defined in Sage.
The matrix $C=sage{C}$ is $4 times 4$ matrix consisting of integers determined
at random. The matrix $D=sage{D}$ is a $3 times 4$ matrix consisting of rational
numbers determined randomly.
Computing $C cdot D= sage{C*D}$ is easy. You can compute use Sage to test if
matrices are singular or nonsingular and even calculate their inverses.
Sage will take care of the calculations but
you'll have to spend time making the output look a little nicer.
end{document}
Next, here is the output. Since some of my matrix constructions are random, it should look different than your run of the same code.
Finally, the basic construction is C = random_matrix(ZZ,4,3) where
- C is the matrix you're defining
- 4 is the number of rows
- 3 is the number of columns
- ZZ is for entries to be integers, QQ for rational, RR for real, CC for complex. You can also work with finite fields. See the documentation.
Note that I've shown how matrix A can be defined by you, entry by entry while B shows how Sage will create the 4x4 identity matrix for you. After you have your matrices set up, Sage will do the calculations as well. This prevents careless mistakes from creeping into your document. Sage isn't part of the LaTeX distribution but you can access it online with a free Cocalc account here. It is possible to install Sage on your computer so you don't need Cocalc. That is more difficult to get up and running. Some important documentation for working with matrices in SAGE is here, here, here, and here. Sage has no problem with big matrices but displaying them on the page becomes problematic. Using usepackage{fullpage} in your code can free up space so that I print a 20 by 20 matrix.
Sorry. I have not tried it yet, can sagetex produce.tex
(instead of.pdf
) file that can be rendered by MathJaX on web browsers?
– The Inventor of God
5 hours ago
add a comment |
Matrices of normal random numbers using knitr
:
documentclass{article}
usepackage{amsmath}
<<bmatrix,echo=F>>=
options(digits=2)
bmatrix <- function(matr) {
printmrow <- function(x) {cat(cat(x,sep=" & "),"\\ n")}
cat("\begin{bmatrix}","n")
body <- apply(matr,1,printmrow)
cat("\end{bmatrix}")}
@
begin{document}
[ A =
<<echo=F,results='asis'>>=
bmatrix(round(matrix(rnorm(6), 2 ,3),3))
@
]
[ B =
<<echo=F,results='asis'>>=
bmatrix(round(matrix(abs(rnorm(120)), 12 ,10),1))
@
]
setcounter{MaxMatrixCols}{12}
[ C =
<<echo=F,results='asis'>>=
bmatrix(round(matrix(abs(rnorm(144)), 12 ,12),1))
@
]
end{document}
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "85"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
john is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f477728%2fhow-do-i-construct-an-nxn-matrix%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
4 Answers
4
active
oldest
votes
4 Answers
4
active
oldest
votes
active
oldest
votes
active
oldest
votes
This prints a random matrix with the specified size.
The keys are size
(mandatory), lb
for the lower bound on the random integers (default 0), ub
for the upper bound on the random integers (default 20).
documentclass{article}
usepackage{amsmath}
usepackage{xparse}
ExplSyntaxOn
NewDocumentCommand{bigmatrix}{m}
{
group_begin:
keys_set:nn { john/bigmatrix } { #1 }
john_bigmatrix:
group_end:
}
tl_new:N l__john_bigmatrix_tl
keys_define:nn { john/bigmatrix }
{
size .int_set:N = l__john_bigmatrix_size_int,
lb .int_set:N = l__john_bigmatrix_lb_int,
ub .int_set:N = l__john_bigmatrix_ub_int,
lb .initial:n = 0,
ub .initial:n = 20,
}
cs_new_protected:Nn john_bigmatrix:
{
int_compare:nT { l__john_bigmatrix_size_int > value{MaxMatrixCols} }
{
setcounter{MaxMatrixCols}{l__john_bigmatrix_size_int}
}
int_step_function:nN { l__john_bigmatrix_size_int } __john_bigmatrix_row:n
begin{bmatrix}
l__john_bigmatrix_tl
end{bmatrix}
}
cs_new_protected:Nn __john_bigmatrix_row:n
{
tl_put_right:Nx l__john_bigmatrix_tl
{
int_rand:nn { l__john_bigmatrix_lb_int } { l__john_bigmatrix_ub_int }
}
prg_replicate:nn { l__john_bigmatrix_size_int - 1 }
{
tl_put_right:Nx l__john_bigmatrix_tl
{
&
int_rand:nn { l__john_bigmatrix_lb_int } { l__john_bigmatrix_ub_int }
}
}
tl_put_right:Nn l__john_bigmatrix_tl { \ }
}
ExplSyntaxOff
begin{document}
$bigmatrix{size=5}$ $bigmatrix{size=6,lb=-12,ub=12}$
bigskip
$bigmatrix{size=15,ub=50}$
end{document}
add a comment |
This prints a random matrix with the specified size.
The keys are size
(mandatory), lb
for the lower bound on the random integers (default 0), ub
for the upper bound on the random integers (default 20).
documentclass{article}
usepackage{amsmath}
usepackage{xparse}
ExplSyntaxOn
NewDocumentCommand{bigmatrix}{m}
{
group_begin:
keys_set:nn { john/bigmatrix } { #1 }
john_bigmatrix:
group_end:
}
tl_new:N l__john_bigmatrix_tl
keys_define:nn { john/bigmatrix }
{
size .int_set:N = l__john_bigmatrix_size_int,
lb .int_set:N = l__john_bigmatrix_lb_int,
ub .int_set:N = l__john_bigmatrix_ub_int,
lb .initial:n = 0,
ub .initial:n = 20,
}
cs_new_protected:Nn john_bigmatrix:
{
int_compare:nT { l__john_bigmatrix_size_int > value{MaxMatrixCols} }
{
setcounter{MaxMatrixCols}{l__john_bigmatrix_size_int}
}
int_step_function:nN { l__john_bigmatrix_size_int } __john_bigmatrix_row:n
begin{bmatrix}
l__john_bigmatrix_tl
end{bmatrix}
}
cs_new_protected:Nn __john_bigmatrix_row:n
{
tl_put_right:Nx l__john_bigmatrix_tl
{
int_rand:nn { l__john_bigmatrix_lb_int } { l__john_bigmatrix_ub_int }
}
prg_replicate:nn { l__john_bigmatrix_size_int - 1 }
{
tl_put_right:Nx l__john_bigmatrix_tl
{
&
int_rand:nn { l__john_bigmatrix_lb_int } { l__john_bigmatrix_ub_int }
}
}
tl_put_right:Nn l__john_bigmatrix_tl { \ }
}
ExplSyntaxOff
begin{document}
$bigmatrix{size=5}$ $bigmatrix{size=6,lb=-12,ub=12}$
bigskip
$bigmatrix{size=15,ub=50}$
end{document}
add a comment |
This prints a random matrix with the specified size.
The keys are size
(mandatory), lb
for the lower bound on the random integers (default 0), ub
for the upper bound on the random integers (default 20).
documentclass{article}
usepackage{amsmath}
usepackage{xparse}
ExplSyntaxOn
NewDocumentCommand{bigmatrix}{m}
{
group_begin:
keys_set:nn { john/bigmatrix } { #1 }
john_bigmatrix:
group_end:
}
tl_new:N l__john_bigmatrix_tl
keys_define:nn { john/bigmatrix }
{
size .int_set:N = l__john_bigmatrix_size_int,
lb .int_set:N = l__john_bigmatrix_lb_int,
ub .int_set:N = l__john_bigmatrix_ub_int,
lb .initial:n = 0,
ub .initial:n = 20,
}
cs_new_protected:Nn john_bigmatrix:
{
int_compare:nT { l__john_bigmatrix_size_int > value{MaxMatrixCols} }
{
setcounter{MaxMatrixCols}{l__john_bigmatrix_size_int}
}
int_step_function:nN { l__john_bigmatrix_size_int } __john_bigmatrix_row:n
begin{bmatrix}
l__john_bigmatrix_tl
end{bmatrix}
}
cs_new_protected:Nn __john_bigmatrix_row:n
{
tl_put_right:Nx l__john_bigmatrix_tl
{
int_rand:nn { l__john_bigmatrix_lb_int } { l__john_bigmatrix_ub_int }
}
prg_replicate:nn { l__john_bigmatrix_size_int - 1 }
{
tl_put_right:Nx l__john_bigmatrix_tl
{
&
int_rand:nn { l__john_bigmatrix_lb_int } { l__john_bigmatrix_ub_int }
}
}
tl_put_right:Nn l__john_bigmatrix_tl { \ }
}
ExplSyntaxOff
begin{document}
$bigmatrix{size=5}$ $bigmatrix{size=6,lb=-12,ub=12}$
bigskip
$bigmatrix{size=15,ub=50}$
end{document}
This prints a random matrix with the specified size.
The keys are size
(mandatory), lb
for the lower bound on the random integers (default 0), ub
for the upper bound on the random integers (default 20).
documentclass{article}
usepackage{amsmath}
usepackage{xparse}
ExplSyntaxOn
NewDocumentCommand{bigmatrix}{m}
{
group_begin:
keys_set:nn { john/bigmatrix } { #1 }
john_bigmatrix:
group_end:
}
tl_new:N l__john_bigmatrix_tl
keys_define:nn { john/bigmatrix }
{
size .int_set:N = l__john_bigmatrix_size_int,
lb .int_set:N = l__john_bigmatrix_lb_int,
ub .int_set:N = l__john_bigmatrix_ub_int,
lb .initial:n = 0,
ub .initial:n = 20,
}
cs_new_protected:Nn john_bigmatrix:
{
int_compare:nT { l__john_bigmatrix_size_int > value{MaxMatrixCols} }
{
setcounter{MaxMatrixCols}{l__john_bigmatrix_size_int}
}
int_step_function:nN { l__john_bigmatrix_size_int } __john_bigmatrix_row:n
begin{bmatrix}
l__john_bigmatrix_tl
end{bmatrix}
}
cs_new_protected:Nn __john_bigmatrix_row:n
{
tl_put_right:Nx l__john_bigmatrix_tl
{
int_rand:nn { l__john_bigmatrix_lb_int } { l__john_bigmatrix_ub_int }
}
prg_replicate:nn { l__john_bigmatrix_size_int - 1 }
{
tl_put_right:Nx l__john_bigmatrix_tl
{
&
int_rand:nn { l__john_bigmatrix_lb_int } { l__john_bigmatrix_ub_int }
}
}
tl_put_right:Nn l__john_bigmatrix_tl { \ }
}
ExplSyntaxOff
begin{document}
$bigmatrix{size=5}$ $bigmatrix{size=6,lb=-12,ub=12}$
bigskip
$bigmatrix{size=15,ub=50}$
end{document}
answered 19 hours ago
egregegreg
724k8819173222
724k8819173222
add a comment |
add a comment |
Use Mathematica for example,
IdentityMatrix[10] // TeXForm
And copy the output for LaTeX as follows.
documentclass[border=12pt,12pt]{standalone}
usepackage{amsmath}
begin{document}
$A=
begin{pmatrix}
1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \
0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \
0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \
0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \
0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 \
0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 \
0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 \
0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 \
0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 \
0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 \
end{pmatrix}
$
end{document}
Note that: LaTeX generates some errors for n x n matrices with n>10.
– The Inventor of God
20 hours ago
add a comment |
Use Mathematica for example,
IdentityMatrix[10] // TeXForm
And copy the output for LaTeX as follows.
documentclass[border=12pt,12pt]{standalone}
usepackage{amsmath}
begin{document}
$A=
begin{pmatrix}
1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \
0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \
0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \
0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \
0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 \
0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 \
0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 \
0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 \
0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 \
0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 \
end{pmatrix}
$
end{document}
Note that: LaTeX generates some errors for n x n matrices with n>10.
– The Inventor of God
20 hours ago
add a comment |
Use Mathematica for example,
IdentityMatrix[10] // TeXForm
And copy the output for LaTeX as follows.
documentclass[border=12pt,12pt]{standalone}
usepackage{amsmath}
begin{document}
$A=
begin{pmatrix}
1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \
0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \
0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \
0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \
0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 \
0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 \
0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 \
0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 \
0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 \
0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 \
end{pmatrix}
$
end{document}
Use Mathematica for example,
IdentityMatrix[10] // TeXForm
And copy the output for LaTeX as follows.
documentclass[border=12pt,12pt]{standalone}
usepackage{amsmath}
begin{document}
$A=
begin{pmatrix}
1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \
0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \
0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \
0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \
0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 \
0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 \
0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 \
0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 \
0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 \
0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 \
end{pmatrix}
$
end{document}
answered 20 hours ago
The Inventor of GodThe Inventor of God
4,47211041
4,47211041
Note that: LaTeX generates some errors for n x n matrices with n>10.
– The Inventor of God
20 hours ago
add a comment |
Note that: LaTeX generates some errors for n x n matrices with n>10.
– The Inventor of God
20 hours ago
Note that: LaTeX generates some errors for n x n matrices with n>10.
– The Inventor of God
20 hours ago
Note that: LaTeX generates some errors for n x n matrices with n>10.
– The Inventor of God
20 hours ago
add a comment |
Use the computer algebra system Sage along with the sagetex
package. First, here is the code:
documentclass{article}
usepackage{sagetex}
begin{document}
begin{sagesilent}
latex.matrix_delimiters(left='[', right=']')
A = Matrix([[0,-1,-1],[-1,-1,0],[-1,0,1],[1,0,0],[0,0,-1],[-1,2,1]])
B = Matrix.identity(4)
C = random_matrix(ZZ,4,3)
D = random_matrix(QQ,3,4)
end{sagesilent}
The matrix $A=sage{A}$ was input by hand. The matrix $B=sage{B}$ is defined in Sage.
The matrix $C=sage{C}$ is $4 times 4$ matrix consisting of integers determined
at random. The matrix $D=sage{D}$ is a $3 times 4$ matrix consisting of rational
numbers determined randomly.
Computing $C cdot D= sage{C*D}$ is easy. You can compute use Sage to test if
matrices are singular or nonsingular and even calculate their inverses.
Sage will take care of the calculations but
you'll have to spend time making the output look a little nicer.
end{document}
Next, here is the output. Since some of my matrix constructions are random, it should look different than your run of the same code.
Finally, the basic construction is C = random_matrix(ZZ,4,3) where
- C is the matrix you're defining
- 4 is the number of rows
- 3 is the number of columns
- ZZ is for entries to be integers, QQ for rational, RR for real, CC for complex. You can also work with finite fields. See the documentation.
Note that I've shown how matrix A can be defined by you, entry by entry while B shows how Sage will create the 4x4 identity matrix for you. After you have your matrices set up, Sage will do the calculations as well. This prevents careless mistakes from creeping into your document. Sage isn't part of the LaTeX distribution but you can access it online with a free Cocalc account here. It is possible to install Sage on your computer so you don't need Cocalc. That is more difficult to get up and running. Some important documentation for working with matrices in SAGE is here, here, here, and here. Sage has no problem with big matrices but displaying them on the page becomes problematic. Using usepackage{fullpage} in your code can free up space so that I print a 20 by 20 matrix.
Sorry. I have not tried it yet, can sagetex produce.tex
(instead of.pdf
) file that can be rendered by MathJaX on web browsers?
– The Inventor of God
5 hours ago
add a comment |
Use the computer algebra system Sage along with the sagetex
package. First, here is the code:
documentclass{article}
usepackage{sagetex}
begin{document}
begin{sagesilent}
latex.matrix_delimiters(left='[', right=']')
A = Matrix([[0,-1,-1],[-1,-1,0],[-1,0,1],[1,0,0],[0,0,-1],[-1,2,1]])
B = Matrix.identity(4)
C = random_matrix(ZZ,4,3)
D = random_matrix(QQ,3,4)
end{sagesilent}
The matrix $A=sage{A}$ was input by hand. The matrix $B=sage{B}$ is defined in Sage.
The matrix $C=sage{C}$ is $4 times 4$ matrix consisting of integers determined
at random. The matrix $D=sage{D}$ is a $3 times 4$ matrix consisting of rational
numbers determined randomly.
Computing $C cdot D= sage{C*D}$ is easy. You can compute use Sage to test if
matrices are singular or nonsingular and even calculate their inverses.
Sage will take care of the calculations but
you'll have to spend time making the output look a little nicer.
end{document}
Next, here is the output. Since some of my matrix constructions are random, it should look different than your run of the same code.
Finally, the basic construction is C = random_matrix(ZZ,4,3) where
- C is the matrix you're defining
- 4 is the number of rows
- 3 is the number of columns
- ZZ is for entries to be integers, QQ for rational, RR for real, CC for complex. You can also work with finite fields. See the documentation.
Note that I've shown how matrix A can be defined by you, entry by entry while B shows how Sage will create the 4x4 identity matrix for you. After you have your matrices set up, Sage will do the calculations as well. This prevents careless mistakes from creeping into your document. Sage isn't part of the LaTeX distribution but you can access it online with a free Cocalc account here. It is possible to install Sage on your computer so you don't need Cocalc. That is more difficult to get up and running. Some important documentation for working with matrices in SAGE is here, here, here, and here. Sage has no problem with big matrices but displaying them on the page becomes problematic. Using usepackage{fullpage} in your code can free up space so that I print a 20 by 20 matrix.
Sorry. I have not tried it yet, can sagetex produce.tex
(instead of.pdf
) file that can be rendered by MathJaX on web browsers?
– The Inventor of God
5 hours ago
add a comment |
Use the computer algebra system Sage along with the sagetex
package. First, here is the code:
documentclass{article}
usepackage{sagetex}
begin{document}
begin{sagesilent}
latex.matrix_delimiters(left='[', right=']')
A = Matrix([[0,-1,-1],[-1,-1,0],[-1,0,1],[1,0,0],[0,0,-1],[-1,2,1]])
B = Matrix.identity(4)
C = random_matrix(ZZ,4,3)
D = random_matrix(QQ,3,4)
end{sagesilent}
The matrix $A=sage{A}$ was input by hand. The matrix $B=sage{B}$ is defined in Sage.
The matrix $C=sage{C}$ is $4 times 4$ matrix consisting of integers determined
at random. The matrix $D=sage{D}$ is a $3 times 4$ matrix consisting of rational
numbers determined randomly.
Computing $C cdot D= sage{C*D}$ is easy. You can compute use Sage to test if
matrices are singular or nonsingular and even calculate their inverses.
Sage will take care of the calculations but
you'll have to spend time making the output look a little nicer.
end{document}
Next, here is the output. Since some of my matrix constructions are random, it should look different than your run of the same code.
Finally, the basic construction is C = random_matrix(ZZ,4,3) where
- C is the matrix you're defining
- 4 is the number of rows
- 3 is the number of columns
- ZZ is for entries to be integers, QQ for rational, RR for real, CC for complex. You can also work with finite fields. See the documentation.
Note that I've shown how matrix A can be defined by you, entry by entry while B shows how Sage will create the 4x4 identity matrix for you. After you have your matrices set up, Sage will do the calculations as well. This prevents careless mistakes from creeping into your document. Sage isn't part of the LaTeX distribution but you can access it online with a free Cocalc account here. It is possible to install Sage on your computer so you don't need Cocalc. That is more difficult to get up and running. Some important documentation for working with matrices in SAGE is here, here, here, and here. Sage has no problem with big matrices but displaying them on the page becomes problematic. Using usepackage{fullpage} in your code can free up space so that I print a 20 by 20 matrix.
Use the computer algebra system Sage along with the sagetex
package. First, here is the code:
documentclass{article}
usepackage{sagetex}
begin{document}
begin{sagesilent}
latex.matrix_delimiters(left='[', right=']')
A = Matrix([[0,-1,-1],[-1,-1,0],[-1,0,1],[1,0,0],[0,0,-1],[-1,2,1]])
B = Matrix.identity(4)
C = random_matrix(ZZ,4,3)
D = random_matrix(QQ,3,4)
end{sagesilent}
The matrix $A=sage{A}$ was input by hand. The matrix $B=sage{B}$ is defined in Sage.
The matrix $C=sage{C}$ is $4 times 4$ matrix consisting of integers determined
at random. The matrix $D=sage{D}$ is a $3 times 4$ matrix consisting of rational
numbers determined randomly.
Computing $C cdot D= sage{C*D}$ is easy. You can compute use Sage to test if
matrices are singular or nonsingular and even calculate their inverses.
Sage will take care of the calculations but
you'll have to spend time making the output look a little nicer.
end{document}
Next, here is the output. Since some of my matrix constructions are random, it should look different than your run of the same code.
Finally, the basic construction is C = random_matrix(ZZ,4,3) where
- C is the matrix you're defining
- 4 is the number of rows
- 3 is the number of columns
- ZZ is for entries to be integers, QQ for rational, RR for real, CC for complex. You can also work with finite fields. See the documentation.
Note that I've shown how matrix A can be defined by you, entry by entry while B shows how Sage will create the 4x4 identity matrix for you. After you have your matrices set up, Sage will do the calculations as well. This prevents careless mistakes from creeping into your document. Sage isn't part of the LaTeX distribution but you can access it online with a free Cocalc account here. It is possible to install Sage on your computer so you don't need Cocalc. That is more difficult to get up and running. Some important documentation for working with matrices in SAGE is here, here, here, and here. Sage has no problem with big matrices but displaying them on the page becomes problematic. Using usepackage{fullpage} in your code can free up space so that I print a 20 by 20 matrix.
edited 17 hours ago
answered 17 hours ago
DJPDJP
7,82421731
7,82421731
Sorry. I have not tried it yet, can sagetex produce.tex
(instead of.pdf
) file that can be rendered by MathJaX on web browsers?
– The Inventor of God
5 hours ago
add a comment |
Sorry. I have not tried it yet, can sagetex produce.tex
(instead of.pdf
) file that can be rendered by MathJaX on web browsers?
– The Inventor of God
5 hours ago
Sorry. I have not tried it yet, can sagetex produce
.tex
(instead of .pdf
) file that can be rendered by MathJaX on web browsers?– The Inventor of God
5 hours ago
Sorry. I have not tried it yet, can sagetex produce
.tex
(instead of .pdf
) file that can be rendered by MathJaX on web browsers?– The Inventor of God
5 hours ago
add a comment |
Matrices of normal random numbers using knitr
:
documentclass{article}
usepackage{amsmath}
<<bmatrix,echo=F>>=
options(digits=2)
bmatrix <- function(matr) {
printmrow <- function(x) {cat(cat(x,sep=" & "),"\\ n")}
cat("\begin{bmatrix}","n")
body <- apply(matr,1,printmrow)
cat("\end{bmatrix}")}
@
begin{document}
[ A =
<<echo=F,results='asis'>>=
bmatrix(round(matrix(rnorm(6), 2 ,3),3))
@
]
[ B =
<<echo=F,results='asis'>>=
bmatrix(round(matrix(abs(rnorm(120)), 12 ,10),1))
@
]
setcounter{MaxMatrixCols}{12}
[ C =
<<echo=F,results='asis'>>=
bmatrix(round(matrix(abs(rnorm(144)), 12 ,12),1))
@
]
end{document}
add a comment |
Matrices of normal random numbers using knitr
:
documentclass{article}
usepackage{amsmath}
<<bmatrix,echo=F>>=
options(digits=2)
bmatrix <- function(matr) {
printmrow <- function(x) {cat(cat(x,sep=" & "),"\\ n")}
cat("\begin{bmatrix}","n")
body <- apply(matr,1,printmrow)
cat("\end{bmatrix}")}
@
begin{document}
[ A =
<<echo=F,results='asis'>>=
bmatrix(round(matrix(rnorm(6), 2 ,3),3))
@
]
[ B =
<<echo=F,results='asis'>>=
bmatrix(round(matrix(abs(rnorm(120)), 12 ,10),1))
@
]
setcounter{MaxMatrixCols}{12}
[ C =
<<echo=F,results='asis'>>=
bmatrix(round(matrix(abs(rnorm(144)), 12 ,12),1))
@
]
end{document}
add a comment |
Matrices of normal random numbers using knitr
:
documentclass{article}
usepackage{amsmath}
<<bmatrix,echo=F>>=
options(digits=2)
bmatrix <- function(matr) {
printmrow <- function(x) {cat(cat(x,sep=" & "),"\\ n")}
cat("\begin{bmatrix}","n")
body <- apply(matr,1,printmrow)
cat("\end{bmatrix}")}
@
begin{document}
[ A =
<<echo=F,results='asis'>>=
bmatrix(round(matrix(rnorm(6), 2 ,3),3))
@
]
[ B =
<<echo=F,results='asis'>>=
bmatrix(round(matrix(abs(rnorm(120)), 12 ,10),1))
@
]
setcounter{MaxMatrixCols}{12}
[ C =
<<echo=F,results='asis'>>=
bmatrix(round(matrix(abs(rnorm(144)), 12 ,12),1))
@
]
end{document}
Matrices of normal random numbers using knitr
:
documentclass{article}
usepackage{amsmath}
<<bmatrix,echo=F>>=
options(digits=2)
bmatrix <- function(matr) {
printmrow <- function(x) {cat(cat(x,sep=" & "),"\\ n")}
cat("\begin{bmatrix}","n")
body <- apply(matr,1,printmrow)
cat("\end{bmatrix}")}
@
begin{document}
[ A =
<<echo=F,results='asis'>>=
bmatrix(round(matrix(rnorm(6), 2 ,3),3))
@
]
[ B =
<<echo=F,results='asis'>>=
bmatrix(round(matrix(abs(rnorm(120)), 12 ,10),1))
@
]
setcounter{MaxMatrixCols}{12}
[ C =
<<echo=F,results='asis'>>=
bmatrix(round(matrix(abs(rnorm(144)), 12 ,12),1))
@
]
end{document}
edited 8 hours ago
answered 8 hours ago
FranFran
52.8k6118182
52.8k6118182
add a comment |
add a comment |
john is a new contributor. Be nice, and check out our Code of Conduct.
john is a new contributor. Be nice, and check out our Code of Conduct.
john is a new contributor. Be nice, and check out our Code of Conduct.
john is a new contributor. Be nice, and check out our Code of Conduct.
Thanks for contributing an answer to TeX - LaTeX Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f477728%2fhow-do-i-construct-an-nxn-matrix%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
If the data is stored in a file, you can use pgfplotstable or csvsimple to format it. OTOH, pgfplotstable can be a pain to customize. For example
columns/name/.style={...}
is used a lot.– John Kormylo
20 hours ago