Matlab:拟合(2)
非线性最小二乘拟合:

解法一:用命令lsqcurvefit
function f = curvefun(x, tdata)
f = x() + x()*exp(0.02 * x() * tdata);
%其中x() = a; x() = b; x() = c;
%数据输入
tdata = ::;
cdata = 1e- * [4.54, 4.99, 5.35, 5.65, 5.90, 6.10, 6.26, 6.39, 6.50, 6.59];
%设定预测值
x0 = [0.2 0.05 0.05];
%非线性拟合函数
x = lsqcurvefit('curvefun', x0, tdata, cdata)
%作图
f = curvefun(x, tdata)
plot(tdata, cdata, 'k+')
hold on
plot(tdata, f, 'r')
结果:
x =
-0.0074 0.0116 0.0118
f =
Columns 1 through 8
0.0044 0.0047 0.0050 0.0053 0.0056 0.0059 0.0062 0.0066
Columns 9 through 10
0.0069 0.0072

解法二:用命令lsqnonlin
function f = curvefun1(x)
%curvefun1的自变量是x,cdata和tdata是已知参数,故应将cdata,tdata的值卸载curvefun1中
tdata = ::;
cdata = 1e- * [4.54, 4.99, 5.35, 5.65, 5.90, 6.10, 6.26, 6.39, 6.50, 6.59];
f = x() + x()*exp(0.02 * x() * tdata) - cdata;%注意
tdata = ::;
cdata = 1e- * [4.54, 4.99, 5.35, 5.65, 5.90, 6.10, 6.26, 6.39, 6.50, 6.59];
%预测值
x0 = [0.2 0.05 0.05];
x = lsqnonlin('curvefun1', x0)
f = curvefun1(x)
plot(tdata, cdata, 'k+')
hold on
plot(tdata, f+cdata, 'r')
结果:
x =
-0.0074 0.0116 0.0118
f =
1.0e-003 *
Columns 1 through 8
-0.1168 -0.2835 -0.3534 -0.3564 -0.3022 -0.1908 -0.0320 0.1645
Columns 9 through 10
0.3888 0.6411

Matlab:拟合(2)的更多相关文章
- matlab拟合函数的三种方法
方法一:多项式拟合polyfit 1 x=[1 2 3 4 5 6 7 8 9]; 2 3 y=[9 7 6 3 -1 2 5 7 20]; 4 P= polyfit(x, y, 3) %三阶多项式拟 ...
- matlab拟合三维椭球
同学问的,查了下资料. %需要拟合的点的坐标为(0,-174.802,990.048),(0.472,-171.284,995.463),(0.413,-168.639,1003.55 ...
- Matlab:拟合(1)
拟合练习: function f = curvefun(x, tdata) f = (x()*x()*x()) / (x()-x()) * ( exp(-x()*tdata)/(x()-x()) + ...
- MATLAB拟合正态分布
clear;clc;close all format compact %% 正态分布的拟合 % 生成随机数 num = 50; y = randn(1000,1); x = 1:num; y = hi ...
- MATLAB拟合和插值
定义 插值和拟合: 曲线拟合是指您拥有散点数据集并找到最适合数据一般形状的线(或曲线). 插值是指您有两个数据点并想知道两者之间的值是什么.中间的一半是他们的平均值,但如果你只想知道两者之间的四分之一 ...
- 基于MATLAB的多项式数据拟合方法研究-毕业论文
摘要:本论文先介绍了多项式数据拟合的相关背景,以及对整个课题做了一个完整的认识.接下来对拟合模型,多项式数学原理进行了详细的讲解,通过对文献的阅读以及自己的知识积累对原理有了一个系统的认识.介绍多项式 ...
- 【数学建模】day04-插值与拟合
关于插值原理,这篇文章里总结过. 插值,是在有限个数据点的情况下,模拟出更多的点来适应实际问题的需要. 拟合,是在已知数据点基础上,以已知点处最小误差为标准,模拟出近似函数. 二者有似,实则不同,ma ...
- 利用MATLAB仿真节点个数和节点通信半径与网络连通率的关系
一.目的 ①在不同节点个数的情况下,用Matlab拟合出连通率与通信半径的关系曲线. ②在不同节点通信半径的情况下,用Matlab拟合出连通率与节点个数的关系曲线. 二.方法描述 在1x1的单位矩形中 ...
- StretchDIBits速度测试(HALFTONE)
StretchDIBits速度测试(HALFTONE) 下面实验中显示窗口大小为1024*768,拉伸模式设为HALFTONE. 一.单通道图像 (1) 保持图像高度为1024,宽度从24到2024递 ...
随机推荐
- [转] java中的匿名内部类总结
匿名内部类也就是没有名字的内部类 正因为没有名字,所以匿名内部类只能使用一次,它通常用来简化代码编写 但使用匿名内部类还有个前提条件:必须继承一个父类或实现一个接口 实例1:不使用匿名内部类来实现抽象 ...
- POJ 2653 Pick-up sticks (判断线段相交)
Pick-up sticks Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 10330 Accepted: 3833 D ...
- Android的GridView和Gallery结合Demo
Android的GridView和Gallery结合Demo Demo介绍:首页是一个GridView加载图片,竖屏时显示3列图片,横屏时显示4列图片;并且对图片进行大小限制和加灰色边框处理. 点击某 ...
- div如何加滚动条
<div style="position:absolute; height:400px; overflow:auto"></div>div 设置滚动条显示: ...
- lucene查询排序结果原理总结
参考文章 Lucene3.0结果排序原理+操作+示例 Lucene的排序算法 一句话总结lucene排序算法是什么样的 关键几个概念 参考文档: http://lucene.apache.org/co ...
- 织梦DEDECMS小说模块使用和安装全攻略
转之--http://www.51dedecms.com/news/dedecms/2012/0223/3380.html 小说模块功能很强大,可以用他做小说或者漫画站.他们都可以按某章节收费或免费供 ...
- UIViewController的View显示在导航栏下面如何解决?
ios7之前的版本中UIViewController中的view在显示后会自动调整为去掉导航栏的高度的,控件会自动在导航栏以下摆放. 在iOS7中UIViewController的wantsFullS ...
- http请求的cookie
Cookie的作用: Cookie是用于维持服务端会话状态的,通常由服务端写入,在后续请求中,供服务端读取. HTTP请求,Cookie的使用过程 1.server通过HTTP Response中的& ...
- spring resttemplate中的转码
/* * 初始化RestTemplate,RestTemplate会默认添加HttpMessageConverter * 添加的StringHttpMessageConverter非UTF-8 所以先 ...
- JAVA-4-斐波列
public class Ch049 { public static void main(String[] args) { // TODO 自动生成的方法存根 int a = 1, b = 1; fo ...