插值应用案例1

案例1 一阶线性插值 

待加工零件外形根据工艺要求在一组数据(x,y)给定(如下表),用程控铣床加工时每一刀只能沿着x方向或y方向走非常小的一步,需要从已知数据得到加工步长很小的(x,y)的坐标。

下表中所给x,y数据位于机翼断面的下轮廓线上,假设需要得到x坐标改变值为0.1的y坐标,试完成加工所需数据,画出曲线,并求出x=0处曲线斜率和13≤x≤15范围内的y的最小值。

 要求: (1)用分段线性插值法;        (2)三次样条插值法.

                                                                         插入点数据表

x

0

3

5

7

9

11

12

13

14

15

y

0

1.2

1.7

2.0

2.1

2.0

1.8

1.2

1.0

1.6

 【符号设置】

  • x0,y0 插入节点,即表1中已知数据;
  • 待插数据,x=0:0.1:15;
  • y     待插数据对应的纵坐标值;
  • k0    表示x=0处的曲线斜率(即导数);
  • Ymin   表示13≤x≤15范围内的y的最小值。

【数学模型1】线性插值公式

 

在x=0出的斜率的计算公式为

 【模型1求解】

x0=[0 3 5 7 9 11 12 13 14 15];
y0=[0 1.2 1.7 2.0 2.1 2.0 1.8 1.2 1.0 1.6];
x=0:0.1:15;
y=interp1(x0,y0,x);
plot(x0,y0,'*',x,y,'+-')
dy=diff(y);
dx=diff(x);
dy_dx=dy./dx;
k0=dy_dx(1);
x1=x(x<=15&x>=13);
y1=y(x<=15&x>=13);
Ymin=min(y1);
yindex=find(y1==Ymin);
Xmin=x1(yindex);
[Xmin,Ymin,k0]

注:`dy = diff(y)` 是一个求解差分的函数,用于计算给定向量 y 的差分。

差分是指计算向量中相邻元素之间的差异。通过对 y 中的元素进行逐个相减,可以得到一个新的向量 dy,其长度比 y 少 1。换句话说,dy 中的每个元素都是 y 中相邻元素的差值。

差分常用于处理时间序列数据或离散数据,可以提供关于数据趋势、变化率和离散程度等方面的信息。通过计算差分,我们可以获得连续数据点之间的变化量,从而进行进一步的数据分析和处理。

 

 根据计算,x=0处的斜率为k0=0.4;

当13<x<15时,y的最小值是Ymin=1,此时对应的横坐标为Xmin=14.

 【数学模型2及其求解】三次样条插值

x0=[0 3 5 7 9 11 12 13 14 15];
y0=[0 1.2 1.7 2.0 2.1 2.0 1.8 1.2 1.0 1.6];
x=0:0.1:15;
y1=interp1(x0,y0,x,'spline');
pp1=csape(x0,y0);
y2=fnval(pp1,x);
pp2=csape(x0,y0,'second');
y3=fnval(pp2,x);
subplot(2,1,1);
plot(x,y1,'*-');
title('spline');
subplot(2,1,2);
plot(x,y3,'+-');
title('second');
dy=diff(y1);
dx=diff(x);
dy_dx=dy./dx;
k0=dy_dx(1);
yf=y1(131:end);
xf=x(131:end);
Ymin=min(yf);
Xmin=xf(yf==Ymin);
[Xmin,Ymin,k0]

注:`y1 = interp1(x0, y0, x, 'spline')` 和 `pp1 = csape(x0, y0)` 都是用于进行数据插值的函数,但是它们使用不同的插值方法和返回不同的结果。

`interp1` 函数使用的是插值方法中的样条插值,通过在已知数据点之间构建光滑的曲线来进行插值。在代码中,`'spline'` 是插值方法的参数,表示使用三次样条曲线进行插值。`interp1` 函数根据已知数据点 `(x0, y0)` 和待插值的自变量 `x`,计算对应的插值结果 `y1`。

`csape` 函数则使用的是样条插值的另一种形式,称为分段样条插值。它通过构建一组分段的三次多项式曲线来进行插值。在代码中,`csape` 函数的返回值 `pp1` 是一个样条插值对象,它包含了构建的分段样条曲线的相关信息。

相比较而言,`interp1` 函数使用起来更加简单,直接给出了插值结果。而 `csape` 函数则返回一个对象,需要进一步使用其他函数或方法来进行插值计算或求导等操作。使用 `csape` 函数可以更加灵活地控制插值过程,例如可以进行边界条件的设定或者选择不同的插值方法等。

 根据计算,x=0处的斜率为k0=0.4986;

当13<=x<=15时,y的最小值为Ymin=0.9828,对应的横坐标Xmin=13.8.

案例2 利用插值法求积分

已知速度曲线v(t)上的四个点数据,如下表,用三次样条插值求位移S(t)。 

t

0.15

0.16

0.17

0.18

V(t)

3.5

1.5

2.5

2.8

 【符号设置】

  • T   时间;
  • V   速度;
  • S   位移(路程);

【数学模型】

 其中,v(t)函数并不知道,只能靠四个节点插值生成。

【模型求解】

(1)利用三次样条插值,得到速度函数v(t)的表达式。

 (2)求位移

=0.068625

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/9531.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Addressable 资源管理全解二

接着上一篇文章我们继续讲… 下面是目录 &#xff1a; 一、使用Label为资源分包二、批量加载 Label 下的所有资源三、Content Update Restriction 内容更新方式1.Can Change Post Release(动态资源)2.Cannot Change Post Release(静态资源) 四、Advanced Options 下内容讲解 一…

回归预测 | MATLAB实现WOA-CNN鲸鱼算法优化卷积神经网络的数据多输入单输出回归预测

回归预测 | MATLAB实现WOA-CNN鲸鱼算法优化卷积神经网络的数据多输入单输出回归预测 目录 回归预测 | MATLAB实现WOA-CNN鲸鱼算法优化卷积神经网络的数据多输入单输出回归预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 回归预测 | MATLAB实现WOA-CNN鲸鱼算法优化卷积…

订单点击付款支付接口的实现(支付宝付款的实现)

订单点击付款支付接口的实现 前言一、DefaultAlipayClient是什么&#xff1f;二、支付宝付款代码的实现 前言 该付款功能只支持支付宝付款&#xff1a; 工作过程中遇到了一个我的订单中展示出来详细的订单信息&#xff0c;然后在待付款的订单信息里面实现付款的接口的问题&am…

k8s Label 2

在 k8s 中&#xff0c;我们会轻轻松松的部署几十上百个微服务&#xff0c;这些微服务的版本&#xff0c;副本数的不同进而会带出更多的 pod 这么多的 pod &#xff0c;如何才能高效的将他们组织起来的&#xff0c;如果组织不好便会让管理微服务变得混乱不堪&#xff0c;杂乱无…

中文模型的奋起直追:MOSS、baichuan-7B和ChatGLM2-6B的部署与微调

第一部分 复旦MOSS MOSS是复旦大学邱锡鹏团队推出的一个支持中英双语和多种插件的开源对话语言模型&#xff0c;moss-moon系列模型具有160亿参数&#xff0c;在FP16精度下可在单张A100/A800或两张3090显卡运行&#xff0c;在INT4/8精度下可在单张3090显卡运行。MOSS基座语言模…

vue页面中一个小列表中多选框的选中状态的两种设置方法

第一种方法:所有类型都是固定的、后台提供了选中状态的接口(页面进入时默认展示所有类型和类型的选中状态 思路: 1、列出所有类型同时与后台规定好每种类型的id与对应的名称 2、在mounted中执行获取后台给定的选中状态(包含1个或多个的id数组) 3、将得到的结构绑定到el-ch…

【JavaWeb基础】分层解耦

一、知识点整理 1、IOC与DI入门 1&#xff09;控制反转: Inversion 0f Control&#xff0c;简称I0C。对象的创建控制权由程序自身转移到外部(容器)&#xff0c;这种思想称为控制反转。 2&#xff09;依赖注入: Dependency lnjection&#xff0c;简称DI。容器为应用程序提供运…

Z-NTFS2EXCEL 文件服务器权限可视化报告

Z-NTFS2EXCEL Z-NTFS2EXCEL是一个用于快速获取Windows文件服务器权限信息并进行确认或审计的程序。 github地址&#xff1a;https://github.com/ericzhong2010/Z-NTFS2EXCEL 使用示例 编辑ini配置文件 执行exe程序文件 检查与确认结果 作者信息 作者&#xff1a;Eric…

Pycharm远程设置 DDP简单介绍

前言 最近接到一些改代码或者帮助debug的需求&#xff0c;大多数不是在本地而是autodl这种服务器上&#xff0c;有些人可能不太了解如何设置远程环境。通常在实验室一般都是在本地调好代码然后scp到服务器上去训练&#xff0c;不过这就需要本地有显卡能测试代码是否能跑通&…

Python自动化测试框架:unittest介绍

Unittest是Python中最常用的测试框架之一&#xff0c;它提供了丰富和强大的测试工具和方法&#xff0c;可以帮助开发者更好地保证代码质量和稳定性&#xff0c;本文就来介绍下Unittest单元测试框架 1. 介绍 unittest是Python的单元测试框架&#xff0c;它提供了一套丰富的测试…

Leetcode---352周赛

周赛题目 2760. 最长奇偶子数组 2761. 和等于目标值的质数对 2762. 不间断子数组 2763. 所有子数组中不平衡数字之和 一、最长奇偶子数组 这题的数据范围允许用暴力来做&#xff0c;只要我们分别枚举左端点left和右端点right&#xff0c;然后看区间[left,right]是否符合题目条…

flutter3.7版本下使用flutter boost解决使用platview崩溃或异常问题

背景 工程使用了混合开发&#xff0c;使用flutter boost插件&#xff0c;flutter 的activity1 frament1 跳转activity2 frament2&#xff0c;frament1 包含platformView&#xff0c;按照上面老哥解决崩溃问题的基础上&#xff0c;出现activity2 frament2返回activity1 framen…