matlab 第四章作业

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第四章作业

第一题:

%在指令窗口中输入

clear all

x=[-1.0 -0.75 -0.50 -0.25 0 0.25 0.50 0.75 1.00];

y=[-0.2209 0.3295 0.8826 1.4392 2.0003 2.5645 3.1334 3.7061 4.2836]; cftool

%打开了曲线拟合工具箱,分别点击data和fitting选项作图

%f(x)=2.252*x+2.013

第二题:

%在指令窗口中输入

clear all

x=[-3 -2 0 3 4];

y=[18 10 2 2 5];

cftool

%打开了曲线拟合工具箱,分别点击data和fitting选项作图

%f(x)=0.8728*x^2-2.645*x+1.825

%也可以先画图,用图形窗口来编辑

第三题:

clear all

x=-0.2:0.1:1;

y=2.*x.^5-3.*x.^3-x.^2-9; %给定曲线

s=0.1*rand(1,13)+y;%设定误差值

P=polyfit(x,y,2); %二次曲线拟合

y=polyval(P,x); %计算拟合函数的值

Ps=polyfit(x,s,2); %二次曲线拟合

ys=polyval(Ps,x); %计算拟合函数的值

subplot(2,1,1)

plot(x,y,x,y,'r*')

subplot(2,1,2)

plot(x,ys,x,ys,'r*')

%也可直接用工具箱cftool

%保形内插法拟合interpolant中的shape-preserving选项

第四题:

%可打开曲线拟合工具箱编辑

clear all

x=0:0.1:2;

y=[0 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0 0 0 0 0 0 0 0 0 0];

cftool

%傅里叶级数拟合Fourier

%也可编程

x=0:0.1:2;

y=[0 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0 0 0 0 0 0 0 0 0 0]; f=fft(y);

nf=ifft(f);

plot(x,nf)

第五题:

%可打开曲线拟合工具箱编辑

clear all

x=[1 2 3 4 5 6 7 8];

I=[15.3 20.5 27.4 36.6 49.1 65.6 87.87 117.6];

Cftool

%指数公式拟合Exponential

%也可编程

y=log(I);

P=polyfit(x,y,1)

I0=exp(P(2))

alpha=P(1)

第六题:

clear all

x=0:0.1:2;

y=1./(7-x.^2+x);

cftool

%有理函数拟合Rational

第七题:

同第五题中的练习类似

第八题:

functionqiugen

clc

clear all

%二分法求解

a=pi/4;

b=pi/2;

Tol=1e-12;

k1=0;k2=0;k3=0;

while (b-a)>Tol

k1=k1+1;

c=(a+b)/2;

if f(c)>0

b=c;

elseif f(c)<0

a=c;

else

disp(c)

break;

end

end

disp((a+b)/2) %disp()就是屏幕输出函数,类似于c语言中的printf()函数disp(k1)

%牛顿法求解

b=pi/4;

while abs(f(b))>Tol

k2=k2+1;

b=b-f(b)/fd(b);

end

disp(b)

disp(k2)

%弦截法求解

a=pi/4;

b=pi/2;

while abs(f(b))>Tol

k3=k3+1;

c=b-f(b)*(b-a)/(f(b)-f(a));

a=b;

b=c;

end

disp(b)

disp(k3)

%指令求解

zlq=fzero(@(x)f(x),[pi/4,pi/2])

function F=f(x)

F=exp(x)-4*cos(x);

functionFd=fd(x)

Fd=exp(x)+4*sin(x);

第九题:

clc

clear all

f=@(x)x.^4-4*x.^3-6*x.^2-16*x+4; %定义函数

roots([1 -4 -6 -16 4]) %求函数的所以根(零点)

fzero(f,[-1,4]) %求函数在一个范围的零点

x=-1:0.1:6;

y=f(x);

plot(x,y) %画出函数图形

[a,b]=fminbnd(f,-1,4) %找一范围的极小值及其对应的变量值bianliangzhi=f(fminbnd(f,-1,4))

第十题:

functiontwovarjizhi

clc

clear all

v=[2,3];

[a,f]=fminsearch(@(v)two_var(v),v) %极小值

%注意自定义的函数放同一文件中需用这种输入方式,

%但自定义的函数存入根目录中,就可以用下面的格式调用函数

%[a,f]=fminsearch('two_var1',v) %极小值

b=two_var1(a) %极小点

function f=two_var(v) %创建一个函数文件

x=v(1);

y=v(2);

f=x.^2+25*y.^2-2*x+50*y+25;

%function f=two_var(v) %函数文件也可以这样创建

%f=v(1).^2+25*v(2).^2-2*v(1)+50*v(2)+25;

第十一题:

A=[3.3330 15920 -10.333;2.2220 16.710 9.6120;1.5611 5.1791 1.6852]; b=[15913;28.544;8.4252];

x=A\b

第十二题:

相关文档
最新文档