2013-03-11 10 views
15

Maximaを使用してドキュメントを評価したいと思います。MaximaからLaTeXを入力する

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

しかし、それは以前に入力行のために動作しません:それは、TeXにマキシマの出力を変換するのは簡単です

(%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) 

I「は(近いhereが、ノー葉巻を含む)多くの研究の後空になる。どんな洞察?

+1

ところで、$$ '使用して... $$' LaTeXので数学を区切るためにすることはお勧めできません。他の数学環境との間隔の不一致があり、 '\ [... \]'や 'align ...'などの拡張AMSmath環境のいずれかを使うのが一般的に推奨されます( '$ ... $'と '\(... \) 'しかし、別の理由で)。 –

+0

ありがとうございます。私はドル記号を取り除き、少しの後処理をする予定です。 –

答えて

17

これを試してください。

tex (''%i2); 

または

apply (tex, [%i2]); 
+1

いくつかの説明が追加されたらうれしいです。私たち自身(私もその一人です)の解決策について考えることができなかった私たちにとって、それは非常に有益なことです。 –

+1

@AlbertvanderHorst問題は、 'tex'がその引数が入力ラベルか出力ラベルかを調べ、そうであればそれらを特別に扱うことです。検査を打ち負かすためには、 'tex'が'%i2'の値を見るか、引数が何であるかを確認する必要があります。これを達成するための2つの方法は、評価の前に値を入力に補間させるために引用符(すなわち2つの単一引用符)を使用すること、またはラベルの値に関数を適用するために「適用する」ことである。 quote-quoteはコンソール入力でしか動作しないので、 'apply'がより一般的ですが、quote-quoteがより便利です。 –

関連する問題