数学建模 —— 插值与拟合(1)

一、matlab画图

1.1 plot(二维图形)

plot(x) —— 缺省自变量绘图格式

plot(x,y) —— 基本格式,以y(x)的函数关系作出直角坐标图,如果y为n×m的矩阵,则以x为自变量,作出m条曲线

plot(x1,y1,x2,y2,…,xn,yn) —— 多条曲线绘图格式

plot(x1,y1,选项1,x2,y2, 选项2,…,xn,yn,选项n)——含选项的绘图格式

颜色参数

颜色

线型参数

线型

标记符号

标记

b

-

实线

.

圆点

g

绿

:

点线

o

圆圈

r

-.

点划线

+

加号

c

--

虚线

*

星号

m

品红

x

叉号

y

'square ' 或 s

方块

k

'diamond' 或 d

菱形

w

^

朝上三角符号

v

朝下三角符号

<

朝左三角符号

>

朝右三角符号

p

五角星

h

六角星

图形标注函数的调用格式:    

title(图形名称)    

xlabel(x轴说明)    

ylabel(y轴说明)    

text(x,y,图形说明)    在x,y坐标处添加文字说明    

legend(图例1,图例2,…)

图形窗口的分割:

subplot(m,n,p)     将一个绘图窗口分割成 m*n 个子区域,并按行从左至右 ,由上至下 依次编号 。     p 表示第 p 个绘图子区域。

函数

二维图的形状

备注

bar(x,y)

条形图

x是横坐标,y是纵坐标

fplot(y,[a b])

精确绘图

y代表某个函数,[a b]表示需要精确绘图的范围

polar(θ,r)

极坐标图

θ是角度,代表以θ为变量的函数

stairs(x,y)

阶梯图

x是横坐标,y是纵坐标

stem(x,y)

针状图

x是横坐标,y是纵坐标

fill(x,y,’b’)

填充图

x是横坐标,y是纵坐标, ‘b’代表颜色

scatter(x,y,s,c)

散点图

s是圆圈标记点的面积,c是标记点颜色

pie(x)

饼图

x为向量

1.2 三维曲线

plot3(x1,y1,z1,‘选项1’, x2,y2,z2,‘选项2', …)    

x,y,z是长度相同的向量:一条曲线    

x,y,z是维数相同的矩阵:多条曲线

三维曲面z=f(x,y) 绘制的一般步骤:  

步骤一:确定向量x,y  

步骤二:使用meshgrid生成网格矩阵  

步骤三:计算函数z=f(x,y) 在各网格点上的值  

步骤四:使用mesh等命令生成三维网格曲面图、使用surf等命令生成三维表面着色曲面图。

meshgrid    

[X,Y]= meshgrid(x,y)    x, y 为给定的向量,X, Y 是网格划分后得到的网格矩阵

mesh(X,Y,Z,C)     X,Y:网格坐标矩阵,     Z :网格点上的高度矩阵。    矩阵 C :确定不同高度下的颜色范围,    省略时 C=Z,即颜色的设定正比于图形的高度

mesh(Z)     x, y 省略时,Z矩阵的列下标当做x轴坐标, Z矩阵的行下标当做y轴坐标  

meshc     调用方式与 mesh 相同,在 mesh 基础上增加等高线

meshz     调用方式与 mesh 相同,在 mesh 基础上增加底座

1.3 三维着色曲面图

surf, surfc, surfl  

surf(X,Y,Z,C)      绘制由矩阵 X,Y,Z 所确定的着色的三维表面图,参数含义同 mesh。  

surfc    调用方式与 surf 相同,在 surf 基础上增加等高线  

surfl    调用方式与 surf 相同,在 surf 基础上增加光照效果

二、插值

        可在给定基准数据的情况下,估计出肌醇数据之间的其他点的函数值

(1)一维插值:拉格朗日、临近点、线性、三次样条、分段三次插值

(2)二维插值

2.1 一维插值

2.1.1 拉格朗日插值

P_n (x)=∑_(i=0)^n (L_i (x)⋅y_i )

L_i (x)=((x-x_0)(x-x_1)⋯(x-x_(i-1))(x-x_(i+1))⋯(x-x_n))   /  ((x_i-x_0)(x_i-x_1)⋯(x_i-x_(i-1))(x_i-x_(i+1))⋯(x_i-x_n))

称为拉格朗日插值基函数

function y=lagrange(x0,y0,x) 
n=length(x0);m=length(x); 
for i=1:m 
z=x(i); 
s=0.0; 
for k=1:n p=1.0; for j=1:n if j~=k p=p*(z-x0(j))/(x0(k)-x0(j)); end end s=p*y0(k)+s; 
end 
y(i)=s; 
end

2.1.2 临近点插值

        用插值点最近的已知函数值代替该点

2.1.3 分段线性插值

        用已知的函数点连接成直线段,作为插值函数

2.1.4 三次样条插值

        将已知的每两个函数点之间用一个三次函数来插值,要求整个函数有2阶光滑性,即一阶导数以及二阶导数连续。

2.1.5 三次多项式插值

        将已知的每两个函数点之间用一个三次函数来插值,要求整个函数有一阶光滑性,且对极小点保持逼近。

 2.1.5 matlab代码实现

        yi = interp1(x, y, xi, 'method')

x, y :插值节点,xi:被插值点,method:插值方法;(要求x单调,xi不超过x)

method:'nearest':最邻近插值

                'linear':线性插值

                'spline':三次样条插值

                'pchip':立方插值

                缺省时:分段线性插值

2.2 二维插值

2.2.1 二维网格插值

   z = interp2 (x0, y0, z0, x, y, 'method')

x0, y0 ,z0:插值节点;x, y:被插值点;method:插值方法要求x0,y0单调;xy可取为矩阵,或x取行向量,y取为列向量,x,y的值分别不能超出x0,y0的范围。

method:'nearest':最邻近插值

                'linear':双线性插值(默认)

                'cubic':双三次插值

                'spline':三次样条插值

2.2.2 二维离散点插值

 z = griddata(x0, y0, z0, x, y, 'method')

x0, y0 ,z0:插值节点;x, y:被插值点;method:插值方法要求x0,y0单调;xy可取为矩阵,或x取行向量,y取为列向量,x,y的值分别不能超出x0,y0的范围。

method:'nearest':最邻近插值

                '(bi)linear':(双)线性插值(默认)

                '(bi)cubic':(双)三次插值

三、拟合

        在给定的基准数据下,寻求近似的函数(或者待定的参数)能较好的反映数据变化的规律

        (注:不要求通过已经的数据点)

3.1 多项式拟合

        利用最小二乘法确定n次多项式的系数

matlab实现:

1.f(x)=a1xm+ …+amx+am+1

        a=polyfit(x,y,m)

a=[a1, ... , am+1](数组):输出拟合多项式系数的集合

x, y:输入同长度的数组x,y

m:拟合多项式次数

2.多项式在x处的值y可用以下命令计算:

            y=polyvalax

3.2 超定方程组

        方程个数大于未知量个数的方程组

        超定方程一般是不存在解的矛盾方程组

如果有向量a使得∑_(i=1)^n(r_i1 a_1+r_i2 a_2+⋯+r_im a_m-y_i )^2,则称a为超定方程的最小二乘解

3.3 matlab作非线性最小二乘拟合

    Matlab的提供了两个求非线性最小二乘拟合的函数:lsqcurvefitlsqnonlin。两个命令都要先建立M-文件fun.m,在其中定义函数f(x),但两者定义f(x)的方式是不同的,可参考例题.

3.3.1 lsqcurvefit

        F(x,xdata)=(Fxxdata1),Fxxdatan))T

使得∑_(i=1)^n  (F(x,xdata_i)-ydata_i)^2   最小

3.3.2 lsqnonlin

lsqnonlin用以求含参量x(向量)的向量值函数

     f(x)=(f1(x),f2(x),,fn(x))T   中的参量x,使得

 f^T (x)f(x)=f_1 (x)^2+f_2 (x)^2+⋯+f_n (x)^2

      最小。

      其中 fix=fxxdataiydatai

                          =F(x,xdatai)-ydatai

 

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

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

相关文章

神经网络算法详解与前沿探索

神经网络算法详解与前沿探索 随着人工智能技术的迅猛发展&#xff0c;神经网络成为机器学习领域的重要组成部分&#xff0c;广泛应用于图像识别、自然语言处理和推荐系统等。本文将详细探讨神经网络的基本原理、结构、训练过程及其应用实例&#xff0c;并扩展至更多相关领域和…

基于标准库的STM32的外部中断EXTI

毕设已经告一段落了&#xff0c;接下来准备开始整理一下毕设中用到的知识与技术细节&#xff0c;今天整理的是STM32从编码器获取数据的方式-----外部中断&#xff08;EXTI&#xff09;&#xff1a; 外部中断分为四个硬件相关外设&#xff0c;GPIO/AFIO/EXTI/NVIC&#xff08;E…

戴尔向“数”而行,以“质”致远,做新质生产力的躬耕者

【全球存储观察 &#xff5c; 热点关注】 自1984年戴尔成立&#xff0c;一路走来&#xff0c;戴尔科技集团40年长期持续的技术创新&#xff0c;一直引领全球科技行业的技术趋势。 到如今&#xff0c;AIGC风行一时&#xff0c;在重塑千行百业的同时&#xff0c;也加速了科技行业…

选择算法之冒泡排序【图文详解】

P. S.&#xff1a;以下代码均在VS2019环境下测试&#xff0c;不代表所有编译器均可通过。 P. S.&#xff1a;测试代码均未展示头文件stdio.h的声明&#xff0c;使用时请自行添加。 博主主页&#xff1a;LiUEEEEE                        …

北斗应急救援终端如何做好汛期重点行业安全防控?

【安全提示】 汛期各地高温多雨、极端天气增多 防汛和安全生产形势严峻复杂如何做好汛期重点行业企业安全生产风险防控&#xff1f; 顶坚北斗短报文终端V1单北斗定位终端 北斗应急救援终端在汛期重点行业安全防控中扮演着关键角色&#xff0c;其高可靠性、稳定性和丰富的功能扩…

达摩院AI早癌筛查技术闪耀联合国,癌症早治时代来临?

全文预计1200字左右&#xff0c;预计阅读需要6分钟。 5月30日&#xff0c;在日内瓦举行的联合国AI大会上&#xff0c;各国的代表性企业拿出最优秀的AI成果进行分享。其中代表中国的是阿里巴巴集团的下属机构-达摩院&#xff0c;其在现场播放的一段影像&#xff0c;让在场的所有…

uniApp子组件监听数据的变化的方法之一

props:{//用来接收外界传递过来的数据swiperList:{type:Array,default:[]}}, swiperList&#xff1a;是父组件传递过来的值 通过 watch 监听&#xff08;在父组件中也同样可以使用&#xff0c;跟VUE的监听数据变化同理&#xff09; watch:{//监听组件中的数据变化swiperList(ol…

Diffusion Facial Forgery (DiFF) ——一个新的大规模人脸伪造检测数据集

1. 概述 近年来&#xff0c;条件扩散模型&#xff08;CDM&#xff09;在图像生成领域备受关注。它能够通过简单的输入&#xff08;如自然语言提示&#xff09;生成令人惊讶的忠实图像。然而&#xff0c;这一进步也引发了新的安全和隐私问题。例如&#xff0c;怀有恶意的个人现…

结构体(C保姆级讲解)

前言&#xff1a; 为什么会有结构体&#xff0c;结构体可以用来面熟一个复杂对象&#xff0c;我们知道C语言中有哪些数据类型&#xff0c;有整型&#xff0c;有浮点型&#xff0c;有字符型&#xff0c;但是在生活中&#xff0c;我们需要描述一些比较复杂的东西&#xff0c;比如…

如何理解央行买卖国债?

浙商证券覃汉认为&#xff0c;央行对长债的风险持续关注&#xff0c;30年国债收益率较难突破2.5%&#xff0c;区间底部已经多次印证&#xff0c;在学习效应影响下&#xff0c;长端利率预计继续以震荡调整为主。 1、央行买卖国债的政策要求、历史经验、优势 2023年中央金融工作…

语音助手拦截,拦截小秘书

呼叫中心业务场景下会遇到很多的语音助手和语音小秘书&#xff0c;还有一些漏话提醒、语音信箱等&#xff1b;大部分原因是由于主叫号码标记问题导致的局端和终端拦截策略&#xff0c;电话没有真实有效的触达并产生了通信费&#xff0c;这让很多业务场景下通信成本上涨据不完全…

常用中间件各版本下载

常用中间件下载地址 前言分布式中间件负载均衡中间件缓存中间件数据库中间件其他中间件1、Maven下载地址2、Git下载地址2、JDK下载地址3、MySQL下载地址4、Redis下载地址5、Nacos下载地址6、Tomcat下载地址7、Nginx下载地址8、RocketMQ下载地址8、RabbitMQ下载地址8、Erlang下载…

Amazon云计算AWS(三)

目录 五、关系数据库服务RDS&#xff08;一&#xff09;RDS的基本原理&#xff08;二&#xff09;RDS的使用 六、简单队列服务SQS&#xff08;一&#xff09;SQS的基本模型&#xff08;二&#xff09;SQS的消息 七、内容推送服务CloudFront&#xff08;一&#xff09;CDN&#…

Vue3-路由详解

文章目录 路由对路由的理解安装 Vue Router基本切换效果两个注意点路由器工作模式to的两种写法命名路由嵌套路由路由传参query参数params参数 路由的props配置replace属性编程式导航重定向 更多相关内容可查看 路由 附git地址&#xff1a;https://gitee.com/its-a-little-bad/…

项目纪实 | 版本升级操作get!GreatDB分布式升级过程详解

某客户项目现场&#xff0c;因其业务系统要用到数据库新版本中的功能特性&#xff0c;因此考虑升级现有数据库版本。在升级之前&#xff0c;万里数据库项目团队帮助客户在本地测试环境构造了相同的基础版本&#xff0c;导入部分生产数据&#xff0c;尽量复刻生产环境进行升级&a…

电脑缺少运行库,无法启动程序

在我们使用一些软件的时候&#xff0c;由于电脑缺少一些运行库&#xff0c;导致无法启动应用软件&#xff0c;此时需要我们安装缺少的运行库。 比如当电脑提示&#xff1a; Cannot load library Qt5Xlsx.dll 我们就需要下载C得运行库&#xff0c;以满足软件运行需要。 下载链…

某三甲医院智能化系统建设项目施工组织设计(516页)

第十四节、ICU重症监护探视系统设计方案 1、系统总体概述 某市市第一人民医院为一个集医疗、研究、医学教学为一体现代化医院建筑群&#xff0c;不仅在医学界的学术地位和声誉&#xff0c;还应拥有赋予人性的医疗环境&#xff0c;为病人创造最舒适的医疗条件。 探视系统帮助…

如何查看谁连接到了你的Wi-Fi网络?这里提供几种方法或工具

序言 你知道谁连接到你路由器的Wi-Fi网络吗?查看从路由器或计算机连接到Wi-Fi网络的设备列表,找出答案。 请记住,现在很多设备都可以连接到了你的Wi-Fi,该名单包括笔记本电脑、智能手机、平板电脑、智能电视、机顶盒、游戏机、Wi-Fi打印机等。 使用GlassWire Pro查看连接…

chatMed开发日志博客(持续更新中)

目录 1. 项目概述 2. 开发人员团队 3. 大致需求 4. 开发内容 4.1. 前端开发 4.1.1: 前端页面开发 4.1.2: 登录机制以及路由守卫的开发 4.1.3: 文件上传机制和保存机制 4.1.4: 消息传递机制 4.2. 线程池开发 4.3. 在线调试 1. 项目概述 搭建一个基于深度学习的分析平台…

SpringBoot 七牛云 OSS 私有模式 获取访问链接

目录 一、问题引出 二、在SpringBoot中获取私有访问路径的操作 一、问题引出 由于七牛云OSS的公有模式存在被盗刷的风险&#xff0c;可能导致服务器额外的费用&#xff0c;于是我选择私有模式进行操作。私有模式的访问路径是一个问题&#xff0c;因为需要对应着token和e这两…