- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
反复调用自己 • 用内联函数命令inline也可以实现M文件的大部分功能
示例
M文本编辑器
M文件: 函数M文件 脚本M文件
编辑M文件: File New M-file
运行M文件: (1)在命令窗口输入文件名并回车 (2)用File Open *.m(文件名)打开 该文件,再用Debug Run即可运行
泰勒级数展开
函数的极值
非线性方程求解
函数的导数
常微分方程求解
函数的积分
可视化数学分析界面
3
可视化数学分析界面
单变量函数分析的交互界面 funtool 泰勒级数逼近分析界面 taylortool
上机任务 一
1. 熟悉MATLAB的启动和退出
2. 找2~3个例子 熟悉数和数组的各种运算 以及 它们的各种函数值
M函数文件
while循环语句
M文本编辑器
switch分支语句
if条件语句
其它控制流语句
关系运算和逻辑运算
关系运算 <, >, <=, >=, ==, ~=
关系成立时结果为1 否则为0
示例
逻辑运算 &(与), |(或), ~(非),xor(异或)
运算规则成立时结果为1 否则为0
示例
只有一个
真时结果 为1,否则
…… 可执行语句n
end
示例
注意
(1)循环次数一般是给定的,除非用其他语句 将循环提前结束(如break)
(2)表达式是一个向量 (3)for语句一定要有end作为结束标志 (4)循环语句中的“;”可以防止中间结果输出 (5)循环体中,可以多次嵌套for-end结构体,
但运算速度受影响
while循环语句
3. 找2~3个例子 熟悉矩阵的加减乘除及其他运算 注意和点运算的区别
4. 输入一个矩阵A 取出A的第2行第1列元素 取 出A的第1 3 4列的所有元素 让A的第1列和第3 列互换 删除A的第2列
上机任务 二
5. 产生3 4维的全1矩阵 产生4 2维的随机矩阵 产生4维的单位矩阵
6. 将A的第2行元素扩大2倍 再增加3后作为A的第 3行元素
暑期数学建模培训讲座
数学建模常用软件
2007年8月
计算机与数学建模密不可分
•题目下载 资料查找需要上网 •论文编辑 打印需要计算机与相应软件 •解题过程更离不开计算机
•数值计算 •符号推导 •模拟仿真 •......
常用数学软件
•MATLAB ——传播最快 影响最大 功能最全的数学软件 •MAPLE ——计算机代数系统的后起之秀 •MATHEMATICA ——最早最成功的计算机代数系统 •LINDO/LINGO ——常用优化软件 •R软件 ——开放的统计编程环境
…… case 常量表达式n
语句块n
otherwise 语句块n+1
end
注意 (1)switch后面的表达式可以为任
何类型 (2)当表达式的值与case后面的常
量表达式的值相等时,就执行 case后面的语句块 (3)case后面的常量表达式可以有 多个,也可以是不同类型 (4)每次只执行一个语句块 执行 完一个语句块就退出switch语 句
4 16 (3)z = (x2 − 2x)e−x2 − y2 −xy , (−3 ≤ x ≤ 3,−2 ≤ y ≤ 2) (绘网格图 二维和三维等高线图
4
上机任务 六
19. 用命令magic(n)生成幻方矩阵,通过计算研究它的性质,如行和 列和 两条对角线和等(可以利用命令fliplr,flipud,其用法查阅MATLAB帮助系统 :help <命令名>).
7. 输入任意矩阵A B 它们的元素个数相等 命令A(:)和A(:) =B会产生什么结果
8. A=[1,3,5;5,8,3;6,1,6] B=[3,6;9,3;4,7] C=[3,7,9;4,0,7] D=2:6 体会命令[A,B] [A;C] [A,B;D]所产生的结果 学习由小矩阵生成大矩阵 的方法注意: Biblioteka 数M文件只能调用,不能直接运行 演示
2
if条件语句
格式1 if 表达式 执行语句
end
格式2
if 表达式 执行语句1
else 执行语句2
end
格式3
注意 if和end必须成对使用
if 表达式1 执行语句1
elseif 表达式2 执行语句2
else 执行语句3
end
示例
for循环语句
格式
for 循环变量=表达式 可执行语句1
4+2 4*2 4/2 4\2 4^3 sqrt(4) exp(3) log(4)
᭄ⱘ䖤ㅫ
ⶽ䰉ⱘ䖤ㅫ
A=[2,3,5;5,2,1;3,7,2] A' det(A) rank(A)
ব䞣ⱘᄬټϢ䇗⫼
(1)ᄬټ a=1,b=2,c=3
save data123 a b c
(2)䇗⫼ load data123 a,b,c
MATLAB 简介
MATrix LABoratory的缩写 矩阵实验室
以矩阵计算为基础的 交互式的科学和工程计算软件
MATLAB的特点
数据类型丰富
操作界面友好
运算速度快
易于扩充
附带许多工具箱
优化工具箱
统计工具箱
符号运算工具箱
MATLAB的启动与退出
MATLAB 6.1.lnk
双击MATLAB图标 进入命令 窗口 即可输入命令 开始运算
为0
M函数文件
形成随时调用的函数 扩展了库函数
第一行为 function 输出变量=函数名(输入变量) 文件名必须是 函数名.m
注意
• 输入变量用()括起来 输出变量有多个时用[ ]括起来
• 函数名和文件名必须相同 • 程序开头必须以function开始 • M函数文件可以调用其他一般M文件,M函数文件可以
syms x y
ヺোᓣߚ㾷
F1=factor(x^4-y^4)
F2=factor(sym('12345678901234567890'))
ヺো㸼䖒ᓣⱘ䗮ߚ
syms x y [N,D]=numden(x/y+y/x)
ヺো㸼䖒ᓣⱘ࣪ㅔ
syms x a b c R=simplify(exp(c*log(sqrt(a+b))))
flipud(A) fliplr(A) rot90(A)
ⶽ䰉ⱘ㗏䕀᪡
ⶽ䰉ᇣⱘ⌟䆩ᅮԡ
A=[3,5,6;2,5,8;3,5,9;3,7,9] d=numel(A) [n,m]=size(A) [i,j]=find(A>7)
A(2,:)
ⶽ䰉ⱘഫ᪡
A([1,3],:)
A(2:3,1:2)
A([1,3],:)=A([3,1],:)
∑ ∑ ∑ 13.求
n
10
sin kπ ,
k2,
∞
xk .
k =0
k=0 k=0 k!
上机任务 四
14 输入x=[2,4,1,6,8];plot(x,’*-b’) 体会图形特点
15 在一幅图上画出两个周期的正弦曲线和余弦曲 线 画出坐标轴 加上各种图注 并在正弦曲线
0~ /2 和横轴之间填充红色
16 在一个窗口画出4幅图 分别绘制 sin2x,tanx,lnx,10x的图形 并加上适当的图形修饰
17 某校共有1560名学生 其中计算机系有213名 学生 外语系有387名学生 音乐系有220名学生 美术系有280名学生 中文系有280名学生 理科系 有180名学生 分别画出饼图 条形图示意学生分布
上机任务 五
18 画出下列函数的图形 (1) y(x) = x2 sin(x2 − x − 2),−2 ≤ x ≤ 2(分别用plot,fplot) (2) x2 + y2 = 1(用参数方程
syms x y
ড়ᑊৠ㉏乍
R1=collect((exp(x)+x)*(x+2))
R2=collect((x+y)*(x^2+y^2+1),y)
ড়ߑ᭄䅵ㅫ
syms x y f=1/(1+x^2*y),g=sin(x) C=compose(f,g,x,y)
ヺো㸼䖒ᓣⱘሩᓔ
syms x y t E=expand((x-2)*(x-4)*(y-t))
将复杂的符号表达式显示为 我们习惯的数学书写形式
函数的反函数 符号表达式求和
确定符号表达式中或矩阵 中的符号变量
置换符号变量
字符变量 符号变量和数 值变量之间的转换
MATLAB 的绘图功能
二维绘图基本命令
图形的修饰与控制
函数绘图
空间曲线
符号函数绘图
带网格的曲面
对数图形
等高线
MATLAB程序设计
关系运算和逻辑运算 for循环语句
߫ߎᎹぎ䯈ⱘ᠔᳝ব䞣
whos
help sqrt
㘨ᴎ∖ࡽ
inv(A) eig(A) [X,D]=eig(A) trace(A) 3*A B=[1,3,5;2,5,3;7,3,5] A+B A-B A*B A/B A\B A^2
ᄫヺൟব䞣 ヺোব䞣 ヺো㸼䖒ᓣ ヺো ᮍⱘᓎゟ
⫼ऩᓩো䆒ᅮᄫヺІব䞣: a='u+4' ߯ᓎヺোൟব䞣: ᮍ⊩ϔ: x=sym('m+n+i') y=sym('d*x^2+x-4') e=sym('a*x^2+b*x+c=0') ᮍ⊩Ѡ: syms a b x y s=a*x^4+b*cos(y)-x*y