matlab程序设计作业Word文件下载.docx

上传人:b****2 文档编号:14144202 上传时间:2022-10-19 格式:DOCX 页数:12 大小:616.08KB
下载 相关 举报
matlab程序设计作业Word文件下载.docx_第1页
第1页 / 共12页
matlab程序设计作业Word文件下载.docx_第2页
第2页 / 共12页
matlab程序设计作业Word文件下载.docx_第3页
第3页 / 共12页
matlab程序设计作业Word文件下载.docx_第4页
第4页 / 共12页
matlab程序设计作业Word文件下载.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

matlab程序设计作业Word文件下载.docx

《matlab程序设计作业Word文件下载.docx》由会员分享,可在线阅读,更多相关《matlab程序设计作业Word文件下载.docx(12页珍藏版)》请在冰豆网上搜索。

matlab程序设计作业Word文件下载.docx

x=[1,2,3, 4,5,6, 7,8,9,10]

y=[1、2, 3, 4,4,5,4、7,5, 5、2,6,7、2]

分别绘出plot得原始数据、一次拟合曲线与三次拟合曲线,给出MATLAB代码与运行结果。

原始曲线

一次拟合

三次拟合

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

y=[1、2,3,4, 4,5,4、7,5,5、2,6,7、2];

figure;

plot(x,y)

p1=polyfit(x,y,1);

y1=polyval(p1,x);

figure;

plot(x,y1)

p2=polyfit(x,y,3);

y2=polyval(p2,x);

figure;

plot(x,y2)

2、在[0,3π]区间,绘制y=sin(x)曲线(要求消去负半波,即(π,2π)区间内得函数值置零),求出曲线y得平均值,以及y得最大值及其最大值得位置。

给出执行代码与运行结果.

x=0:

pi/1000:

3*pi;

y=sin(x);

y1=(y>

=0)、*y;

%消去负半波figure

(1);

plot(x,y1,'

b'

);

a=mean(y1)  %求出y1得平均值

b=max(y1) %求出y1得最大值b,以及最大值在矩阵中得位置;

d=x(find(y1==b))

〉〉ex1

a =

  0、4243

b =

 1

d =

1、5708 7、8540

〉>

3、给出函数z=x^2+y^2得三维曲面得绘制结果与MATLAB代码,

x=—3:

0、1:

3;

y=—4:

0、1:

4;

[x,y]=meshgrid(x,y);

z=x、^2+y、^2;

mesh(x,y,z);

4、将一幅彩色图像文件转换为灰度图像,存储并显示转换后得灰度图像,给出运行结果与执行代码。

x=imread(’hehua、jpg');

x=rgb2gray(x);

figure

(1);

imshow(x);

h=figure(1);

saveas(h,'gray、jpg'

原图

处理后图像

5、结合自身研究方向,自拟一题目,采用MATLAB语言实现一具有完整功能得算法,给出运行结果与执行代码。

题目:

用遗传算法找函数得最大值、

functionmain()

clear

clc

popsize= 100;

 %种群大小

chromlength=10;

 %二进制编码长度

pc=0、6;

 %交叉概率

pm=0、001;

  %变异概率

pop=initpop(popsize,chromlength);

 %初始种群

fori=1:

100

[objvalue] = cal_objvalue(pop);

  %计算适应度值(函数值)

 fitvalue=objvalue;

  [newpop]=selection(pop,fitvalue);

%选择操作

 [newpop]= crossover(newpop,pc);

 %交叉操作

  [newpop]=mutation(newpop,pm);

 %变异操作

 pop= newpop;

     %更新种群

  [bestindividual,bestfit]=best(pop,fitvalue);

%寻找最优解

 x2=binary2decimal(bestindividual);

  x1=binary2decimal(newpop);

  [y1]=cal_objvalue(newpop);

if mod(i,10)==0

  figure;

  fplot(’10*sin(5*x)+7*abs(x-5)+10'

[010]);

  holdon;

 title([’迭代次数为n='

num2str(i)]);

    plot(x1,y1,’*'

end

end

  fprintf(’thebestXis—-->

>%5、2f\n'

,x2);

 fprintf(’thebest Yis —-->>

%5、2f\n’,bestfit);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1