【问题标题】:Generate LaTeX from Maxima input从 Maxima 输入生成 LaTeX
【发布时间】:2013-03-11 16:55:05
【问题描述】:

我想使用 Maxima 来评估文档。将 Maxima 输出转换为 TeX 很容易:

(%i1) tex(5*x^2+sin(x)+c)$
$$\sin x+5\,x^2+c$$

但是,它不适用于以前输入的行:

(%i2) 5*x^2+sin(x)+c;
                                           2
(%o2)                          sin(x) + 5 x  + c
(%i3) tex(%i2);

\begin{verbatim}
(%i2)sin(x)+5*x^2+c;
\end{verbatim}

(%o3)                                (%i2)

经过大量研究(包括接近但没有雪茄的here),我空了。有什么见解吗?

【问题讨论】:

  • 顺便说一句,在 LaTeX 中使用 $$…$$ 来分隔数学是不可取的。与其他数学环境存在一些间距不一致,通常建议使用 \[…\] 或扩展 AMSmath 环境之一,例如 align 等($…$ 与 \(…\) 类似,但原因不同)。
  • 谢谢。我打算去掉美元符号并进行一些后期处理。

标签: latex maxima


【解决方案1】:

试试这个。

tex (''%i2);

或

apply (tex, [%i2]);

【讨论】:

  • 如果能加上一些解释就好了。对于我们自己无法想到这些解决方案的我们(我就是其中之一),这将是非常有启发性的。
  • @AlbertvanderHorst 好吧,问题是tex 检查它的参数以查看它是输入标签还是输出标签,如果是,它会特别处理这些标签。为了击败检查,您必须确保 tex 看到 %i2 的值或任何参数。实现此目的的两种方法是使用引号(即两个单引号)在评估之前将值插入到输入中,或者apply 将函数应用于标签的值。 apply 更通用,因为quote-quote 仅适用于控制台输入,但quote-quote 更方便。
  • 直到今天,这两个技巧在 wxMaxima 中都不起作用。我认为答案需要更新。
  • @SzczepanHołyszewski 嗯,我刚刚又试了一次,效果和以前一样;我试过 wxMaxima 19.07 + Maxima 5.43.2。如果您得到一些错误的输出,则表明 wxMaxima 和/或 Maxima 中存在错误;我可以请您创建一个错误报告吗?见github.com/wxMaxima-developers/wxmaxima/issues 和sourceforge.net/p/maxima/bugs。
  • 我没有得到错误的输出,我只是未能完全防止在某些涉及二次曲线的情况下解释表达式。结果不是将输入逐个符号转换为 LaTeX。我需要完全按照我的意愿排版表达式,因为我必须说明推导中的一个特定步骤,并且我不希望 maxima 做任何“有用的编辑”来掩盖我想要传达的想法。
猜你喜欢
  • 2017-04-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-15
  • 2017-07-07
  • 2017-12-27
  • 2019-06-29
相关资源
最近更新 更多