LuaTeX で luaqd ライブラリをインポートする

LuaTeX で luaqd ライブラリをインポートする

簡単にインポートする方法を探していますまたはLuaTeXの他の同様のライブラリをLaTeXで使用できるようにします。lmapmこのライブラリは、Lua 言語の作者の 1 人である Luiz Figueiredo によって作成されました。これは Lua で非常に役立ちます。212 の仮数ビットを持つ 4 倍精度を使用し、約 64 桁の小数点を提供します。たとえば、qd.piこれを Lua に組み込むと、lua で円周率の値がより高い精度で提供されます。

答え1

Linux ではそれができます。他のオペレーティング システムでもそれほど違いはありません。

LuaTeX の新しいバージョンでは、それが可能になります。まず、Lua 5.x がすでにインストールされていると仮定して、ファイルを作成して.soインストールします (オプションですが、推奨されます)。

cd /path/to/qd/or/mapm
make
sudo make install

.tex次に、を使用してファイルにライブラリをロードしますrequire。ライブラリに含まれているテストからの優れた例を示します。ラマヌジャン定数:

%!TEX program = lualatex
\documentclass{article}
\usepackage{amsmath,amssymb}
\usepackage{luacode}
\begin{document}
\begin{luacode*}
--The same in case you use lmapm
qd = require "qd"
tex.print([==[Is $\exp(\pi\sqrt{163})$ an integer?]==])
tex.print("")
a=math.exp(math.pi*math.sqrt(163))
tex.print("fp",string.format("%.64e",a),"\nfrac",a-math.floor(a))
tex.print("")
a=qd.exp(qd.pi*qd.sqrt(163))
tex.print("qd",tostring(a),"\nfrac",tostring(a-qd.floor(a)))
tex.print("")
R=qd.new"2.625374126407687439999999999992500725971981856888793538563373369908627075374103782106479101186073129511813461e17"
tex.print("exact",tostring(R))
\end{luacode*}
\end{document}

ここに画像の説明を入力してください

関連情報