手机版

matlab上机试题(15)

发布时间:2021-06-06   来源:未知    
字号:

function [err,a,b,c]=nlfit(x,y)

if nargin<3 %判断输入变量个数 x=10*[190:199];

x=x'; %输入数据

y=[76.0 92.0 106.5 123.2 131.7 150.7 179.3 204.0 226.5 251.4]'; end

c=fminsearch(@fitfun2,[0;0;0],optimset,x,y); %a,b,c都从0开始搜索 fprintf('The nonlinear least square fitting y=(a+bx)/(1+cx) for data\n\n'); fprintf('%6.1f ',x);

fprintf('\n'); %换行

fprintf('%6.1f ',y); %6位浮点数表示保留1位小数 fprintf('\n\n is\n\t y=(%7.4f +%7.4f x)/(1+%7.4f x) \n\n',c(1),c(2),c(3));

z=linspace(x(1),x(end),100); %x(1)至x(end)分隔100份,为了画出曲线 p=(c(1)+c(2)*z)./(1+c(3)*z); subplot(121)

plot(x,y,'r+',z, p,'b-.');

title('拟合的函数与原始数据二位坐标图像'); legend('原始数据','拟合函数图像'); %********************二点公式 for i=1:length(x)-1;

df1(i)=(y(i+1)-y(i))/(x(i+1)-x(i)) ; df1(i+1)=(y(i+1)-y(i))/(x(i+1)-x(i)) ; end

%********************三点公式

for j=1:length(x)-2;

df2(j)=(-3*y(j)+4*y(j+1)-y(j+2))/(2*10); df2(j+1)=(-y(j)+y(j+2))/(2*10);

matlab上机试题(15).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
×
二维码
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)