下载此文档

matlab练习题.doc


文档分类:高等教育 | 页数:约4页 举报非法文档有奖
1/4
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/4 下载此文档
文档列表 文档介绍
练****题:
1、用一个简单命令和M函数形式求解线性系统
3x1+ x2 - x3 =
x1+2x2+4x3 =
-x1+4x2+5x3 = -
解:
%
function y=AB(A,b)
B=[A b];
[m,n]=size(A);
RA=rank(A);
RB=rank(B);
if RA==RB&RA==n
X=A\b
elseif RA==RB&RA<n
X=A\b
C=null(A,'r')
else X='无解'
end
在命令窗口输入:
>> A=[3,1,-1;1,2,4;-1,4,5];
>> b=[;;-];
>> y=AB(A,b);
执行结果为:
X =

-

2、用简短命令计算并绘制在0£x£6范围内的sin(2x)、sinx2、sin2x,同时上述过程用M文件完成。
解:
(一)用简短命令
在命令窗口输入:
>>x=0::6;
>>y=sin(2*x);
>>y2=sin(x)*2;
>>y3=sin(2)*x;
>>plot(x,y,'r-',x,y2,'b-',x,y3,'g-');
>>legend('sin(2x)','sinx2','sin2x');
执行结果为:
(二)用M文件
%
function y=myfun(x)
y(:,1)=sin(2*x)
y(:,2)=sin(x)*2
y(:,3)=sin(2)*x
命令窗口输入:
>> fplot('myfun',[0 6])
执行结果为:
3、已知系统微分方程及初始值

取步长,试分别用欧拉法和RK4法求时的y值,用M文件及M函数完成。
解:
1)欧拉法
%
function [x,y]=euler(fun,x0,xf,y0,h)
n=fix((xf-x0)/h);
y(1)=y0;
x(1)=x0;
for i=1:(n-1)
x(i+1)=x0+i*h;
y(i+1)=y(i)+h*feval(fun,x(i),y(i));
end
%
function f=ef(t,y)
f=t+y;
在命令窗口输入:
[t,y]=euler('ef',0,1,1,)
执行结果为:
t =
Columns 1 through 9
0
Column 10

y =
Columns 1 through 9

Column 10

(2)RK4法
%
function [t,y]=R_K(fun,x0,

matlab练习题 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数4
  • 收藏数0 收藏
  • 顶次数0
  • 上传人陈潇睡不醒
  • 文件大小78 KB
  • 时间2018-02-17