使用MathJax输入分块矩阵


​ 最近一直在写关于线性代数的数学文章, 因此不可避免的要输入各种形式的矩阵, 我用的编辑器是typora, 因为内建MathJax支持所以还是很方便的. 但是尽管MathJax和Latex语法非常接近, 还是有一些不同的, 在输入某些特殊的分块矩阵的时候会出现问题.

​ 首先是基础形式的分块矩阵, 这个没有什么很大的问题, MathJax和Latex的语法可以是完全一样的, 可以直接用array来解决, 代码如下

  1. $$
  2. \left[
  3. \begin{array}{c|cc}
  4. a_{11} & a_{12} & \cdots & a_{1n}\\ \hline
  5. a_{21} & a_{22} & \cdots & a_{2n} \\
  6. \vdots & \vdots & \ddots & \vdots \\
  7. a_{n1} & a_{n2} & \cdots & a_{}nn
  8. \end{array}
  9. \right]
  10. $$

渲染效果如下


​ 然而如果想让上面的右下角那一块变成一行或者是一个大大的字符, 在latex里可以利用\multicolumn来解决, 但是在MathJax里面并没有这个特性,会出现报错, 不过我们可以稍微迂回一点, 采用下面的方式来解决

  1. $$
  2. \left[
  3. \begin{array}{c|c}
  4. \begin{matrix} a_{11} \end{matrix} & \begin{matrix} a_{12} & \cdots & a_{1n} \end{matrix} \\ \hline
  5. \begin{matrix} a_{21} \\ \vdots \\ a_{n1} \end{matrix} & \begin{matrix} \huge{M} \end{matrix}
  6. \end{array}
  7. \right]
  8. $$

渲染效果如下:


基本思路就是把分块分出来的几个矩阵直接作为独立的matrix然后这一整个matrix再作为array中的一个元素. 因为要多输入好多字符, 所以算是一个比较迂回的解决方案, 不过至少显示效果可以接受. 当然, 如果你有更好的方案欢迎指教, 感谢!


评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注