我问了这个问题这里在 Mathematica.SE 中,但他们也鼓励在此网站上提问。
如何让从 Mathematica 到 LaTeX 的写作过程更加轻松?请注意,我有很多变量,我想让读者看到它们,我不太感兴趣如何做,但又不想越过页面,所以必须打破方程式,也许还有其他格式,是否可以直接从 Mathematica 获取它?
Mathematica 代码
AA = -a*g/(A*(2*g*h)^(1/2));
aa = (F1 + F2)^2/(2*a^2*g);
BB = 2/A;
Du = F1 + F2 - 1.2;
Dx = h - aa;
Px = AA*Dx - BB*Du // Simplify;
{AA, aa, BB, Du, Dx, Px} // TeXForm (*perhaps wrong way here? I want to show the above lines fast and accessible to the reader*)
出去
\left\{-\frac{a g}{\sqrt{2} A \sqrt{g h}},\frac{(\text{F1}+\text{F2})^2}{2 a^2
g},\frac{2}{A},\text{F1}+\text{F2}-1.2,h-\frac{(\text{F1}+\text{F2})^2}{2 a^2 g},-\frac{\frac{\sqrt{2} a g
\left(h-\frac{(\text{F1}+\text{F2})^2}{2 a^2 g}\right)}{\sqrt{g h}}+4. (\text{F1}+\text{F2}-1.2)}{2 A}\right\}
我手工编辑的东西,很费时间(太长了,必须以某种方式打破它)
\begin{equation}
\begin{split}
{A',a',B',\Delta u, \Delta x, \partial x} := \left\{
-\frac{a g}{\sqrt{2} A \sqrt{g h}}, \\
\frac{(\text{F1}+\text{F2})^2}{2 a^2 g}, \\
\frac{2}{A}, \\
\text{F1}+\text{F2}-1.2, \\
h-\frac{(\text{F1}+\text{F2})^2}{2 a^2 g}, \\
-\frac{\frac{\sqrt{2} a g \left(h-\frac{(\text{F1}+\text{F2})^2}{2 a^2 g}\right)}{\sqrt{g h}}+4. (\text{F1}+\text{F2}-1.2)}{2 A} \\
\right.
\end{split}
\end{equation}
或许相关
答案1
这是(印刷上)对OP自己的答案。
(抱歉,仍然没有 Mathematica 自动化答案。这似乎是 Mathematica 本身或预处理器。
笔记:
- 不要使用空行来填充文本中的数学环境。这会引入一个新段落。
- 不要在 之前使用空格
-
。对于 LaTeX 来说,这是两个独立的单词(matrix
和-case
),并且会破坏连字符。 - 我从最后一个等式中删除了两个不必要的括号。
- 环境
align
会产生单独的方程编号,而不仅仅是四/五行的一个。 - 环境
split
用于第一个块的最后几行,因为这些真的属于一个方程。(如果你不喜欢方程编号的位置,你可以删除环境split
并只\notag
在其中一行中使用。) - 我没有触摸
F1
和F2
。
您的 Mathematica 输出将它们设置为当前文本字体(可能是斜体)。如果不知道它们代表什么,我建议使用F_1
或\mathrm{F}1
。
代码
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\section{V. State-function of linearized system}
% compare output of F to results in section 1 and 3
We need only height so the equations gets much simplified,
now from the matrix-case to scalars so that
% we don't want to have a new paragraph starting here, so: no blank line!
\begin{subequations}
\begin{align}
A' & =-\frac{ag}{A \sqrt{2 g h}} \\
B' & = \frac{2}{A} \\
\Delta u & = F1 + F2 - 1.2 \\
\begin{split}
\Delta x & = h - a' \\
& = h - \frac{(F1 + F2)^2}{2 a^2 g}
\end{split}
\end{align}
\end{subequations}
% if you leave this line blank, you get another paragraph
so
%
\begin{equation}\begin{split}
\partial_t x & = A' \Delta x - B' \Delta u\\
& = - \frac{ag}{A \sqrt{2 g h}} \left(h - \frac{(F1 + F2)^2}{2 a^2 g}\right)
- \frac{2}{A} \left(F1 + F2 - 1.2 \right). \\
\end{split}\end{equation}
\end{document}
输出
答案2
我不知道如何获得格式良好的 Mathematica-dump,所以我使用了如下所示的基本 eq-split 块。输入它们相对较慢,但目前没有更好的解决方案,我使用这个——也许这可以以某种方式自动化:从方程式中推导出一些东西并使其看起来不错。
\section{V. State -function of linearized system}
% compare output of F to results in section 1 and 3
We need only height so the equations gets much simplified, now from the matrix -case to scalars so that
\begin{equation}\begin{split}
A'&=-\frac{ag}{A\sqrt{2 g h}} \\
B'&=\frac{2}{A} \\
\Delta u&=F1+F2-1.2 \\
\Delta x&=h-a' \\
&=h-\frac{(F1+F2)^2}{2 a^2 g} \\
\end{split}\end{equation}
so
\begin{equation}\begin{split}
\partial_tx &= A'\Delta x-B'\Delta u\\
&= \left(-\frac{ag}{A\sqrt{2 g h}}\right)\left(h-\frac{(F1+F2)^2}{2 a^2 g}\right)-\left(\frac{2}{A}\right)\left(F1+F2-1.2\right).\\
\end{split}\end{equation}