我希望能够在 lyx 中直观地编写数学方程式,然后将其复制到 wolfram 和 symbolab 中来计算答案。例如,我可以复制
\left(-1-\lambda\right)\cdot\left(1-\lambda\right)\left(-\lambda\right)+3
进入这些网站,他们将能够阅读并给我答案,但他们不明白
\begin{pmatrix}1 & 0 & 1\\
0 & 0 & 1\\
-3 & 1 & 3
\end{pmatrix}\cdot\begin{pmatrix}1 & -1 & 0\\
3 & -6 & 1\\
0 & 1 & 0
\end{pmatrix}
您对如何格式化以便这些网站能够解决问题有什么建议吗?
答案1
Wolfram Alpha 可以识别\cdot
,但它不是完整的 TeX 解析器。Wolfram Alpha 中的矩阵语法示例(示例 > 数学 > 矩阵与线性代数):
{{6, -7, 10}, {0, 3, -1}, {0, 5, -7}}
以下示例定义了一个宏\wapmatrix
,它将嵌套的逗号分隔列表作为矩阵,就像 Wolfram Alpha 的语法一样,并将矩阵写入屏幕/.log
文件输出。它还将矩阵转换为 LaTeX 并在环境中设置矩阵pmatrix
:
\documentclass{article}
\usepackage{amsmath}
\usepackage{kvsetkeys}
\makeatletter
\newif\ifwa@first@row
\newif\ifwa@first@cell@in@row
\newcommand*{\wapmatrix}[1]{%
\toks0={\begin{pmatrix}}%
\toks2={}%
\wa@first@rowtrue
\comma@parse{#1}\wa@parse@rows
\toks0=\expandafter{\the\toks0 \end{pmatrix}}%
\toks2=\expandafter{\expandafter{\the\toks2}}%
\typeout{\the\toks2}%
\the\toks0 %
}
\newcommand*{\wa@parse@rows}[1]{%
\ifwa@first@row
\wa@first@rowfalse
\else
\toks0=\expandafter{\the\toks0 \\\relax}%
\toks2=\expandafter{\the\toks2 ,}%
\fi
\wa@first@cell@in@rowtrue
\toks4={}%
\comma@parse{#1}\wa@parse@cells@in@row
\toks2=\expandafter{\the\toks2\expandafter{\the\toks4}}%
}
\newcommand*{\wa@parse@cells@in@row}[1]{%
\ifwa@first@cell@in@row
\wa@first@cell@in@rowfalse
\else
\toks0=\expandafter{\the\toks0 &}%
\toks4=\expandafter{\the\toks4 ,}%
\fi
\toks0=\expandafter{\the\toks0 #1}%
\toks4=\expandafter{\the\toks4 #1}%
}
\newcommand*{\wacdot}{%
\typeout{\string\cdot}%
\cdot
}
\begin{document}
\[
\typeout{--- WA begin ---}
\wapmatrix{
{0, 0, 1},
{-3, 1, 3},
{1, 2, 3}
}%
\wacdot
\wapmatrix{
{3, -6, 1},
{0, 1, 0},
{1, 2, 3}
}
\typeout{--- WA end ---}
\]
\end{document}
屏幕/.log
文件:
--- WA begin ---
{{0,0,1},{-3,1,3},{1,2,3}}
\cdot
{{3,-6,1},{0,1,0},{1,2,3}}
--- WA end ---
然后可以将标记之间的文本剪切并粘贴为查询 Wolfram Alpha:
Copyable plaintext:
(1 | 2 | 3
-6 | 25 | 6
6 | 2 | 10)
Wolfram Language plaintext output:
{{1, 2, 3}, {-6, 25, 6}, {6, 2, 10}}
然后可以将其复制回 LaTeX 文件:
\typeout{--- WA end ---}
=
\wapmatrix{{1, 2, 3}, {-6, 25, 6}, {6, 2, 10}}
\]