在我的调查中Derive
只能求出函数f(x)
关于的导数x
。下面的尝试没有产生预期的结果,因为我试图求出x(t)
和y(t)
关于的导数t
。
\documentclass{article}
\usepackage{pst-plot,pst-node}
\def\x{sin(t)}
\def\y{cos(t)}
\def\xx{Derive(1,\x)}
\def\yy{Derive(1,\y)}
\begin{document}
\begin{pspicture}[algebraic](-.2,-2.2)(\dimexpr\psPiFour cm+.2cm,2.2)
\psparametricplot{0}{TwoPi 2 mul}{\xx|\yy}
\end{pspicture}
\end{document}
这里有谁能帮我
Derive
任何变量吗,比如我的项目此处(点击)可以轻松完成,而无需手动计算给定函数的导数?我们如何
Derive
以后缀形式调用?如果可能的话,第一个问题可以通过ED
以下方式解决,<postfix expression in x> 1 Derive t /x ED
答案1
x
用于导数的变量是硬编码的,请参阅/EvalDerive
文件中的定义pst-algparser.pro
。因此,您必须重新定义一些内部 Postscript 函数。
我发现侵入性较小的重新定义是改变/EvalVariable
,这是实际访问的唯一程序(x)
:
\documentclass[pstricks,margin=5pt]{standalone}
\usepackage{pst-plot,pst-node}
\def\ChangeEvalVariable#1{%
\pstVerb{tx@Derive begin
/origEvalVariable /EvalVariable load def
/EvalVariable { 2 index (#1) eq { (1) } { (0) } ifelse 4 -1 roll exch 6 2 roll } def
end }%
}%
\def\ResetEvalVariable{%
\pstVerb{tx@Derive begin
/EvalVariable /origEvalVariable load def
end }%
}%
\def\x{sin(t)}
\def\y{cos(t)}
\def\xx{Derive(1,\x)}
\def\yy{Derive(1,\y)}
\begin{document}
\begin{pspicture}[algebraic](-1.2,-1.2)(3.2,1.2)
\ChangeEvalVariable{t}
\psparametricplot{0}{Pi}{\xx|\yy}
\ResetEvalVariable
\psplot{0}{Pi}{Derive(1,sin(x))}
\end{pspicture}
\end{document}
您不能将Derive
其用于 Postscript 表达式,因为Derive
实际上是通过解析函数的字符串表示来分析计算导数。