Ich möchte eine mathematische Funktion in LaTeX in Abhängigkeit eines Argumentes auswerten. Nennen wir die Funktion Open in writeLaTeX
\myMathFunction{2} den Wert 6 zurückgeben, wenn die Funktion definiert ist als 5*x - x^2. Außerdem wäre es schön, wenn die Funktion in einem PSTricks Plot nutzbar wäre. Open in writeLaTeX
\documentclass[pstricks]{standalone} \usepackage{pst-plot} \begin{document} \begin{pspicture}(0,0)(6.5,7) \psplot[ algebraic, linecolor = red, linewidth = 1pt ]{0}{TwoPi} {\myMathFunction{x}} \end{pspicture} \end{document} |
|
LuaLaTeXHier ist eine Lösung die auf LuaLaTeX beruht. (Fürs Original dieser Antwort siehe diesen Beitrag in TeX.SE. Der code hat ein TeX-seitiges Makro names Die Eingabe braucht keine Konstante zu sein; sie könnte selber das Resultat einer Kalkulation. Umgekehrt kann das Resultat von Open in writeLaTeX
% !TEX TS-program = lualatex \documentclass{article} \usepackage{fontspec} \setmainfont{Latin Modern Roman} \usepackage{luacode} % für 'luacode' Umgebung und '\luaexec' Makro \usepackage{luatexbase} % für '\luatexluaescapestring' Makro % Lua-seitig \begin{luacode} function mymathfunction( x ) return 5*x - x^2 -- die gewünschte Funktion hier spezifieren end \end{luacode} % TeX-seitig \newcommand\myMathFunction[1]{% \directlua{ tex.sprint( mymathfunction( "\luatexluaescapestring{#1}" ))}} \begin{document} Der Wert von \texttt{\textbackslash myMathFunction\{2\}} ist \myMathFunction{ 2 }. Der Wert von \texttt{\textbackslash myMathFunction\{exp(1)\}} ist \myMathFunction{\directlua{ tex.sprint(math.exp(1)) }}. Der Wert von \texttt{\textbackslash myMathFunction\{$\pi$\}}, gerundet auf 4 Stellen, ist \luaexec{ tex.sprint(string.format( "\%.4f", \myMathFunction{\directlua{ tex.sprint(math.pi) }}))}. beantwortet 11 Mär '14, 15:01 Mico Auf meinem System gibt es einen Alias auf
(14 Mär '14, 23:20)
Henri
|
Die Frage ist zum Archivieren gedacht, kein Support benötigt. Antworten sind jedoch sehr willkommen! Ich antworte auf jeden Fall selbst.