我在处理 Pari 中的多项式和在文档中找到正确的命令时遇到了一些问题。
- 是否可以定义具有多个变量的多项式,例如 f(x,y)=x^2+y^2-1
- 如何以特定值评估先前定义的多项式(通过使用 Pol() )?
我在处理 Pari 中的多项式和在文档中找到正确的命令时遇到了一些问题。
是的,可以使用具有多个变量的多项式。例如x^2 + y^2 - 1
是变量中的多项式x
和y
。用于subst
计算特定值的多项式。例如,subst(x^2 + y^2 - 1, y, 3)
给出x^2 + 8
.
PARI 假设任何未定义的变量都是多项式。上述工作是因为 x 和 y 没有被赋予另一个定义。出于这个原因,最好避免将 x 和 y 用于其他事情。例如,如果您输入x=5
, thenx
被定义为 5 并且将不再被解释为多项式。
Now f(x,y)=x^2+y^2-1
不是多项式,而是具有两个形式参数x
和的函数定义y
。您可以f
使用多项式参数调用x
并y
获取多项式,也可以f
使用其他参数调用。例如,f(x,y)
返回多项式x^2 + y^2 - 1
并 f(x, 3)
返回x^2 + 8
。
的目的Pol()
是将其他东西(例如向量)转换为多项式。例如,Pol([3,1,5])
给出3*x^2 + x + 5
.
PARI 也做幂级数。例如1/(1-x-x^2) + O(x^20)
是幂级数展开最多 20 项。您需要指定所需的术语数(PARI 不会无限扩展)。用于Vec()
转换为向量。例如,Vec(1/(1-x-x^2) + O(x^20))
给出斐波那契数列的前 20 个项。
多变量幂级数也是可能的,但您需要注意变量优先级。如果您x
用作主要幂级数变量(不确定)并y
用作次要变量,它将起作用。另一方面,如果您想z
用作主要变量和t
次要变量,您可能会遇到问题,具体取决于第一次使用的z
顺序t
。变量的优先级是一个混乱的问题,最好通过知道它来避免,x
并且y
预定义的x
优先级高于y
.
(如果您有更多问题,请提交一个新问题 - 我真的不希望它成为所有 PARI 功能的博客!)