1-Matlab基本介绍1
构造矩阵的方法------q3
x=[1 2 3 9 3] 直接赋值 y=0:0.5:3 按步长赋值 z=[0 x 1] u=[y;z] 将矩阵y,z合并为一个矩阵 t=linspace(0,2,7) %按分点赋值 v=ones(3) 产生元素全是1的3阶阵 C=eye(3) 产生3阶单位阵 vv=5*ones(3,4) s=zeros(2,4) 产生2行4列的零阵 r=rand(4,4) 随机产生4阶矩阵 B=[ ] 产生空矩阵
代数方程求根----------q7
%solve(f) %solve(f1,f2,...fn)
解符号方程式f 解由f1,f2,...fn组成的代数方程组
syms a b c x %定义符号变量 f=sym('a*x^2+b*x+c') A=solve(f) B=solve(f,a) C=solve('1+x=sin(x)') eq1=sym('x+y+z=10'); eq2=sym('x-y+z=0'); eq3=sym('2*x-y-z=-4'); [x,y,z]=solve(eq1,eq2,eq3)
微分方程求解------q8
%dsolve('equation','condition')求方程equation在初 始条件condition下的解 %dsolve('equation')求方程equation的通解 %一阶导数用Dy表示,二阶导数D2y用表示,自变量默 认为t A=dsolve('Dy=5') B=dsolve('Dy=x','x') C=dsolve('D2y=1+Dy') D=dsolve('D2y=1+Dy','y(0)=1','Dy(0)=0') [x,y]=dsolve('Dx=y+x,Dy=2x','x(0)=0,y(0)=1')%解 微分方程组
ab
MATLAB中数组、矩阵基本运算符
运算 意义
加法: a+b
减法: a-b 乘法: a*b a.*b 除法: a/b (a\b) 幂 a^n a.^n
两矩阵相加,数与矩阵相加
两矩阵相减,数与矩阵相加 两矩阵相乘,数与矩阵相乘 两矩阵对应元素相乘 a*inv(b) (inv(a)*b) 矩阵的幂 矩阵的每个元素的幂
运行MATLAB创建一个或多个窗口
a) 命令区(Command Window)是用户使用的主 要场所,此时,可以输入变量、数组及运算命 令,进行一些简单的运算;用↑↓←→键搜索、 修改以前使用过的命令操作, 用clc清除窗口; 用help sqrt ( help input …)寻求有关帮助; b) 编辑区(Editor\Debugger Window)编制各种 M-文件,存盘(Save)、运行(Run)等.
工具箱及命令查询 help topics
在命令区(Command Window)键入 help det help rand help elfun help abs help sqrt help linspace
MATLAB中基本代数运算符
运算 加法: a+b 减法: a-b 乘法: a×b 除法: a÷b 乘幂: 符号 + * / ^ 举例 5+3 5-3 5*3 48/4 5^2=25
动态显示
MATLAB程序: hold on % 图形迭加 axis([0,100,2,3]); % 设置坐标轴 grid % 加坐标网格 for n=1:90 % 循环操作 an=(1+1/n)^n; % 计算数列值 plot(n,an,'r*'); % 画出坐标点 pause(0.05); % 暂停0.05秒 fprintf('n=%d an=%.4f\n',n,an); % 显示坐标位置 end
二维平面图形------q9
x=0:pi/10:2*pi; y1=sin(x); y2=cos(x); plot(x,y1,'bo-',x,y2,'R*:') xlabel('x') ylabel('y') title('Sine and Cosine Curve') gtext('y=sinx') gtext('y=cosx')
《数学实验》课程的考核
小实验以个人为单位;大实验3人为一 小组,共同探讨,实验完成后共同填写一份 实验报告上交,教师批改后给出成绩,最后 综合评定出最终成绩(10分制)。 实验成绩将纳入到所学的高等数学课程的 期末成绩之中,占一定的比例(一般10%)。
MATLAB命令简单介绍
MATLAB是建立在向量、数组和矩阵基础上的 一种分析和仿真工具软件包,包含各种能够进 行常规运算的“工具箱”,如常用的矩阵代数 运算、数组运算、方程求根、优化计算、统计、 小波分析、神经网络以及函数求导积分符号运 算等;同时还提供了编程计算的编程特性,通 过编程可以解决一些复杂的工程问题;也可绘 制二维、三维图形,输出结果可视化。目前, 已成为工程领域中较常用的软件工具包之一。
三维曲线图的绘制 plot3(x,y,z)-------- q12
t=0:0.1:50; x=sin(t); y=cos(t); z=t; plot3(x,y,z,'m*')
三维曲面图的绘制 surf(x,y,z),mesh(x,y,z)----- q13
x=-5:0.2:5; y=x; [x,y]=meshgrid(x,y); %生成矩形域上网格节 点矩阵 subplot(2,1,1) %画子图1 z=25-2*x.^2-y.^2; %生成函数值矩阵 mesh(x,y,z) %画网格曲面并赋以颜色 subplot(2,1,2) %画子图2 surf(x,y,z) %画光滑曲面
级数求和与函数展开--q6
%symsum(s,v,a,b) 自变量v在[a,b]之间取值 时,对通项 s求和 %taylor(F,v,n) 求F对自变量v的泰勒级数展 开至(n-1)阶 syms k A=symsum(1/k,k,1,inf) B=symsum(1/(k*(k+1)),k,1,inf) syms x taylor(sin(x),10)
---q4
syms a b c x %定义符号变量 f=sym('a*x^2+b*x+c') df=diff(f) %求导数,默认变量为x d2f=diff(f,2) %求二阶导数 daf=diff(f,a) %对变量a求导数 daf2=diff(f,a,2) %求变量a求二阶导数
MATLAB符号计算---求积分-----q5
syms x
fx= '1/(1+exp(-1/x))'
limit(fx,x,0, 'right') limit(fx,x,0, 'left') limit(fx,x,inf, 'left') %求fx:x->0右极限 %求fx:x->0左极限 %求fx:x->+∞极限
MATLAB符号计算----求导数
图形的比较显示----在同一窗口绘制多图 方法2--------q11
Biblioteka x=0:pi/10:2*pi; y1=sin(x); y2=cos(x); y3=x.^2+6*x+3; y4=exp(x); subplot(2,2,1); plot(x,y1,'bo-') subplot(2,2,2); plot(x,y2,'R*:') subplot(2,2,3); plot(x,y3,'g+') subplot(2,2,4); plot(x,y4,'mp')
MATLAB中符号函数的表示
符号函数
1 2xn
1 2x
MATLAB表示
'1/(2*x^n)'
'1/sqrt(2*x)'
sin( x 2 ) cos(2 x )
f x 2dx
b a
'sin(x^2)-cos(2*x)' f=int('x^2', 'a', 'b')
MATLAB中符号运算--求极限 -------------q0.m
什么是数学实验?
简单讲就是利用计算机和数学软件平 台,一方面,对学习知识过程中的某些 问题进行实验探究、发现规律; 另一方面,结合已掌握的数学(微积 分、代数与几何等)知识,去探究、解 决一些简单实际问题,从而熟悉从数学 建模、解法研究到实验分析的科学研究 的方法。
先看两个例子
例1 数列极限
1 n lim (1 ) n n
a./b 两矩阵对应元素相除,数a除以矩阵 b中每个元素
变量及数组输入
MATLAB的变量及数组均是以向量或矩阵方式存 储的 1:向量方式输入 x=[1,2,3,4,5] %以向量(数组)方式给x赋值 x1=[1 12 –3 4 sqrt(5)]; y=(x(3)+x(5))/2*x(4) %调用x中的元素 z=sqrt(x) %每个元素开方 t=x' %向量x的转置赋给t u=x*t %向量的内积(u为向量x的模的平方)
例2 导弹打击过程仿真 设A(0,0)为一导弹发射点,发现位于B(0,100)处 一架敌机沿水平方向逃离,随即发射一枚导弹 予以打击,现已知导弹时刻对准敌机,且速率 为飞机速率的两倍(设飞机速度为1)。 试编程模拟导弹打击敌机 B 的动态过程,并实时给出 飞机和导弹的位置坐标。 若要在敌机飞行距离不超 过60时(我方空域)将其 A 击落,导弹的速率应提高 到多少?