介绍
R语言中的polynom包可以实现对多项式的操作,例如:加、减、乘、除、微分、积分。使用的时候先用polynomial()函数定义一个多项式对象,然后就可以相应的操作了。
polynomial()
用于创建一个多项式对象。
用法
# 定义一个多项对象
polynomial(coef = c(0, 1))
# 类型转换,和polynomial差不多
as.polynomial(p)
# 判断一个对象是否是多项式
is.polynomial(p)
#将多项式转换为字符串表达式
as.character(x, decreasing = FALSE, ...)
# 输出多项式字符串
print(x, digits = getOption("digits"), decreasing = FALSE, ...)
参数
- coef: 按升序排列的多项式系数向量
- p: 任意一个R对象
- x:一个多项式对象
- decreasing: 逻辑值,表示按升序排列多项式还是降序
- digits:输出多项式字符串时的系数数字个数
实例
p=polynomial(coef = c(1,0,2.25,3.12))
# 1 + 2.25*x^2 + 3.12*x^3
print(p,digits=2)
# 1 + 2.2*x^2 + 3.1*x^3
多项式的加减乘除等运算
实例
p1=polynomial(coef = c(1,0,2,3))
p2=polynomial(coef = c(0,1,2,4))
p1+p2
# 1 + x + 4*x^2 + 7*x^3
p1*p2
x + 2*x^2 + 6*x^3 + 7*x^4 + 14*x^5 + 12*x^6
p1/polynomial(c(0,1,1))
# -1 + 3*x
deriv()和integral()
用法
deriv(p, ...)
integral(p, limits = NULL, ...)
参数
- p: 一个多项式对象
- limits : 一个包含两个元素的向量,指定积分的上下限。确实的话,就计算不定积分,注意不定参数C是不展示在结果中的。
实例
p1=polynomial(coef = c(1,0,2,3))
p1
1 + 2*x^2 + 3*x^3
p2=deriv(p1)
p2
# 4*x + 9*x^2
integral(p2)
# 2*x^2 + 3*x^3
solve()
solve()函数用于计算多项的根。
solve(p,b,...)
参数
- p: 一个多项式对象
- b:一个常数,即多项式的右端项
实例
p1=polynomial(coef = c(1,0,2,3))
solve(p1,0)
# [1] -1.0000000+0.0000000i 0.1666667-0.5527708i 0.1666667+0.5527708i