[应用相关]

使用stm32 来做拉格朗日插值

[复制链接]
646|25
手机看帖
扫描二维码
随时随地手机跟帖
一路向北lm|  楼主 | 2021-1-13 18:06 | 显示全部楼层 |阅读模式
先来恶补公式:
213455ffec6136fd44.png

使用特权

评论回复
一路向北lm|  楼主 | 2021-1-13 18:07 | 显示全部楼层
构造函数形式  double lglr(x,y,n,t)
411595ffec644bac0e.png

使用特权

评论回复
一路向北lm|  楼主 | 2021-1-13 18:07 | 显示全部楼层
上代码:
//预先定义插值节点的个数为1000个,根据控制台输入的个数num从而确定插值节点的个数
const int N=1000;
// 拉格朗日插值算法
float lglr(float x[], float y[],int n,float t)
{
     float yResult=0.0;
     //LValue[N]存放的是每次求解的插值基函数的通项
     float LValue[N];
     //循环变量k,m
     int k,m;
     //插值基函数中的上下累乘temp1,temp2
     float temp1,temp2;
     for(k=0;k<n;k++)
     {
         temp1=1.0;
         temp2=1.0;
         for(m=0;m<n;m++)
         {
             if(m==k)
             {
                 continue;
             }
             temp1 *= (t-x[m]);
             temp2 *= (x[k]-x[m]);
         }
         LValue[k]=temp1/temp2;
     }
     for(int i=0;i<n;i++)
     {
         yResult += y[i]*LValue[i];
     }
     return yResult;
}


使用特权

评论回复
一路向北lm|  楼主 | 2021-1-13 18:07 | 显示全部楼层
效果测试
986845ffec67c87d3d.png

使用特权

评论回复
一路向北lm|  楼主 | 2021-1-13 18:08 | 显示全部楼层
输出数据 使用MATLAB画图
01.线性   3点线性   很好
321625ffec6b96cf25.png

使用特权

评论回复
一路向北lm|  楼主 | 2021-1-13 18:09 | 显示全部楼层
正弦曲线
三点  完全看不出来
557865ffec6de56c41.png

使用特权

评论回复
一路向北lm|  楼主 | 2021-1-13 18:10 | 显示全部楼层
5点  和10 点的还是那么一回事哈

5点
560335ffec7070a40c.png

使用特权

评论回复
一路向北lm|  楼主 | 2021-1-13 18:10 | 显示全部楼层
10点
12695ffec71b9e53b.png

使用特权

评论回复
一路向北lm|  楼主 | 2021-1-13 18:11 | 显示全部楼层
来总体看一下差距
140475ffec73a4dce7.png

使用特权

评论回复
一路向北lm|  楼主 | 2021-1-13 18:12 | 显示全部楼层
仅供大家参考,感兴趣的可以去完善哈

使用特权

评论回复
一路向北lm|  楼主 | 2021-1-13 18:15 | 显示全部楼层
有点不甘心,使用Qt 搭了一个界面,做了一下可视化,你别说效果还可以
33645ffec83712f63.png

使用特权

评论回复
一路向北lm|  楼主 | 2021-1-13 18:21 | 显示全部楼层
Qt 界面代码 放到了 gitee 有兴趣的来一起完善  https://gitee.com/lumengcode/my-qt/tree/master/MathTool/MathTool

使用特权

评论回复
東南博士| | 2021-1-14 17:56 | 显示全部楼层
这是一个很高级的算法吗?

使用特权

评论回复
東南博士| | 2021-1-14 17:57 | 显示全部楼层
运动控制 使用的吗?

使用特权

评论回复
chenjun89| | 2021-1-14 18:44 | 显示全部楼层
不错,学习了。

使用特权

评论回复
kxsi| | 2021-2-4 20:58 | 显示全部楼层
都已经忘光了 哎

使用特权

评论回复
nawu| | 2021-2-4 20:59 | 显示全部楼层
会不会非常耗费资源啊

使用特权

评论回复
qcliu| | 2021-2-4 21:01 | 显示全部楼层
运算速度如何

使用特权

评论回复
tfqi| | 2021-2-4 21:06 | 显示全部楼层
是不是dsp更擅长做这个事情啊

使用特权

评论回复
wiba| | 2021-2-4 21:11 | 显示全部楼层
并不是多高级  只是当时学的时候就没弄太明白

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

256

主题

3639

帖子

72

粉丝