2026a

# polyval


多项式计算

函数库: TyMath

# 语法

y = polyval(p,x)
y,delta = polyval(p,x,s)
y = polyval(p,x,[],mu)
y,delta = polyval(p,x,s,mu)

# 说明

y = polyval(p,x) 计算多项式 p 在 x 的每个点处的值。参数 p 是长度为 n+1 的向量,其元素是 n 次多项式的系数(降幂排序):示例

虽然可以为不同目的使用 polyint、polyder 和 polyfit 等函数计算 p 中的多项式系数,但您也可以为系数指定任何向量。

要以矩阵方式计算多项式,请改用 polyvalm。


y,delta = polyval(p,x,S) 使用 polyfit 生成的可选输出结构体 S 来生成误差估计值。delta 是使用 p(x) 预测 x 处的未来观测值时的标准误差估计值。


y = polyval(p,x,[], mu) 或 y,delta = polyval(p,x,S,mu) 使用 polyfit 生成的可选输出 mu 来中心化和缩放数据。mu[1] 为 mean(x),mu[2] 为 std(x)。使用这些值时,polyval 将 x 的中心置于零值处并缩放为具有单位标准差:

这种中心化和缩放变换可改善多项式的数值属性。

# 示例

计算几个点处的多项式值

计算多项式 在点 x=5,7,9 处的值。多项式系数可以由向量 [3,2,1] 表示。

using TyMath
p = [3,2,1]
x = [5,7,9]
y = polyval(p,x)
y = 3-element Vector{Int64}:
  86
 162
 262
对四次多项式求积分

计算定积分

创建一个向量来表示多项式被积函数 项不存在,因此系数为 0。

using TyMath
p = [3,0,-4,10,-25]

使用 polyint 和等于 0 的积分常量来对多项式求积分。

q = polyint(p)
q = 6-element Vector{Float64}:
   0.6
   0.0
  -1.3333333333333333
   5.0
 -25.0
   0.0

通过在积分极限上计算 q,求解积分的值。

a = -1
b = 3
I = diff(polyval(q,[a,b]))
I = 1-element Vector{Float64}:
 49.06666666666665

# 输入参数

p — 多项式系数
向量

多项式系数,指定为向量。例如,向量 [1,0,1] 表示多项式 ,向量 [3.13,-2.21,5.99] 表示多项式

数据类型: Int64 | Int32 | Int16 | Int128 | Float64 | Float32 | Float16

复数支持:

x — 查询点
向量

查询点,指定为向量。polyval 计算多项式 p 在 x 中的点处的值,并在 y 中返回对应的函数值。

数据类型: Int64 | Int32 | Int16 | Int128 | Float64 | Float32 | Float16

复数支持:

S — 误差估计元组
元组

误差估计元组。此元组是 p,S,mu = polyfit(x,y,n) 中的第二个输出。指定 S 作为 polyval 的输入以获得误差估计值。S 包含以下字段:

字段 说明
R 范德蒙矩阵 x 的 QR 分解的三角 R 因子(可能经过置换)
df 自由度
normr 残差的范数

如果 y 中的数据是随机的,则 p 的估计协方差矩阵是 (Rinv*Rinv')*normr^2/df,其中 Rinv 是 R 的逆矩阵。

mu — 中心化值和缩放值
二元素向量

中心化和缩放值,指定为二元素向量。此向量是 p,S,mu = polyfit(x,y,n) 中的第三个输出,用于改善拟合和计算多项式 p 的数值属性。值 mu[1] 为 mean(x),mu[2] 为 std(x)。这些值用于以单位标准差将 x 中的查询点的中心置于零值处。

指定 mu 以计算 p 在缩放点 (x - mu[1])/mu[2] 处的值。

# 输出参数

y — 函数值
向量

函数值,以大小与查询点 x 相同的向量形式返回。向量包含在 x 中的每个点处计算多项式 p 所得的结果。

delta — 预测的标准误差
向量

预测的标准误差,以大小与查询点 x 相同的向量形式返回。通常,区间 y ± Δ 对应于大型样本的未来观测值约 68% 的预测区间,y ± 2Δ 对应于约 95% 的预测区间。

如果 p 中的系数是 polyfit 计算的最小二乘估计值,polyfit 数据输入中的误差呈独立正态分布,并拥有常量方差,则 y ± Δ 对应于至少 50% 的预测区间。

# 另请参阅

polyder | polyfit | polyint | polyvalm