楼主: kimboo
3574 1

新手提问:关于Lagrange矩阵算法 [推广有奖]

  • 2关注
  • 7粉丝

已卖:418份资源

讲师

1%

还不是VIP/贵宾

-

威望
0
论坛币
2077 个
通用积分
5.8685
学术水平
1 点
热心指数
1 点
信用等级
1 点
经验
2401 点
帖子
126
精华
0
在线时间
620 小时
注册时间
2007-10-20
最后登录
2025-10-20

楼主
kimboo 在职认证  发表于 2008-9-29 22:43:00 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
算法如下:
lagrange<-function(t,x,y)
{
xs=sort(x);ys=y[order(x)]#排序是为了输入x时有更大的灵活性,可以不按由小到大输入
X=matrix(0,length(x),length(x))
T=0
  for(i in 1:length(x))
  {
  T=t^(i-1)#计算t的0~n-1次方
    for(j in 1:length(x))
    X[i,j]=xs^(j-1) #构造范德蒙行列式

  }
a=solve(X,ys) #解出a1,a2,...an
sol=a%*%T #求出插值
plot(x,y)
points(t,sol,type="p",col="red")
sol
}

f=function(x) sqrt(x)
x=seq(1,10,by=1)
y=f(x)
lagrange(2.5,x,y)

但当x=seq(1,10,by=0.5)时,输出如下结果:

> lagrange(2.5,x,y)
错误于drop(.Call("La_dgesv", a, as.matrix(b), tol, PACKAGE = "base")) :
系统计算上是奇异的: 倒条件数=5.41391e-27
请问这是什么原因?矩阵算法在何种情况下才是稳定的?

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Lagrange Grange range 新手提问 lag 矩阵 新手 算法 提问 Lagrange

沙发
DM小菜鸟 发表于 2015-1-22 21:34:18
需要非奇异矩阵吧

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-25 23:21