找回密码
 快速注册
搜索
查看: 1126|回复: 1

Mathematica构造下三角矩阵

[复制链接]

471

主题

945

回帖

9837

积分

积分
9837

显示全部楼层

青青子衿 发表于 2019-4-30 18:06 |阅读模式
方法一:用稀疏数组(SparseArray)命令
...
  1. SparseArray[{i_, j_} /; i >= j -> Subscript[a, i, j], {10, 10}] // MatrixForm
复制代码
...
方法二:用下三角+数组(LowerTriangularize+Array)命令
...
  1. LowerTriangularize[Array[Subscript[a, #1, #2] &, {10, 10}]] // MatrixForm
复制代码
...
方法三:用表格+如果(Table+If)命令
...
  1. Table[If[i >= j, Subscript[a, i, j], 0], {i, 10}, {j, 10}] // MatrixForm
复制代码

reference.wolfram.com/language/tutorial/ConstructingMatrices.html

471

主题

945

回帖

9837

积分

积分
9837

显示全部楼层

 楼主| 青青子衿 发表于 2019-5-6 23:33
回复 1# 青青子衿
应用案例:
  1. NN = 5;
  2. Aa = Table[If[i > j, -1, 0], {i, NN}, {j, NN}] +
  3.    DiagonalMatrix[Array[Subscript[a, #] &, {NN}]] +
  4.    DiagonalMatrix[Range[NN - 1], 1];
  5. Bb = Table[If[i > j, -1, 0], {i, NN}, {j, NN}] +
  6.    DiagonalMatrix[Reverse[Array[Subscript[a, #] &, {NN}]]] +
  7.    DiagonalMatrix[Reverse[Range[NN - 1]], 1];
  8. Aa // MatrixForm
  9. Det[Aa] // Factor
  10. Bb // MatrixForm
  11. Det[Bb] // Factor
复制代码

手机版|悠闲数学娱乐论坛(第3版)

GMT+8, 2025-3-4 11:57

Powered by Discuz!

× 快速回复 返回顶部 返回列表