Download presentation
Presentation is loading. Please wait.
1
§ 9.1常用数学软件简介及MATLAB基础知识
学习目标 教学建议 第九章 数学实验 § 9.1常用数学软件简介及MATLAB基础知识 § 9.2 MATLAB在微积分中的应用 § 9.3 MATLAB在线性代数中的应用 § 9.4 MATLAB在概率统计中的应用 § 9.5 利用MATLAB绘图
2
§9.2 MATLAB在微积分中的应用 一.建立符号变量 二.求符号函数在某一点的函数值 三.求符号函数的极限值
四.求符号函数的各阶导数(偏导数) 五.求符号函数的积分 六.求代数方程(组)的符号解析解 七.求符号函数的极值(最值)
3
一. 建立符号变量 MATLAB符号运算是通过符号数学工具箱(Symbolic Math Toolbox)来实现的。
一. 建立符号变量 在MATLAB中运算可粗略分为两类: 数值运算 特点:工程运算 近似 广泛 符号运算 特点:理论推导 精确 局限 MATLAB符号运算是通过符号数学工具箱(Symbolic Math Toolbox)来实现的。
4
一. 建立符号变量 1.符号常量与变量的设置(sym与syms). sym命令可将字母或者数字转换为符号变量或常量. a=sym('2');
一. 建立符号变量 1.符号常量与变量的设置(sym与syms). sym命令可将字母或者数字转换为符号变量或常量. a=sym('2'); y=sym('pi'); z=sym('z'); 2. sym命令格式: 3.符号(精确)运算与数值(近似)运算结果的细微差别: 输入:sin(pi),数值计算结果: e-016 先设置pi为符号常量:y=sym('pi');计算sin(y),结果:
5
一. 建立符号变量 4.syms命令 对比: x=sym('x'); y=sym('y'); z=sym('z'); syms x y z
一. 建立符号变量 4.syms命令 对比: x=sym('x'); y=sym('y'); z=sym('z'); syms x y z 注意 1. sym是将字母或者数字转换为字符 ; 2. syms一次可以定义多个字母符号变量, 但需用空格隔开,不得使用,和'号。
6
练习 1 用两种方法建立符号变量与符号表达式并加以运算.
一. 建立符号变量 练习 1 用两种方法建立符号变量与符号表达式并加以运算. 解 在MATLAB命令窗,依次输入: clc,clear % 清屏;清除之前自定义变量 f=sym(‘3*x^2+5*y+2*x*y+6’) %定义符号表达式 syms x y n %声明x y n均为符号变量 z=x^2+sin(x*y^n) % 由符号变量组成新符号式 2*f -z+6 %组成另一新符号式 结果: f= 3*x^2+5*y+2*x*y+6 z= x^2+sin(x*y^n) ans = 5*x^2+10*y+4*x*y+18-sin(x*y^n)
7
说明 (1)可在%号后为程序加注释,它不参与运算,为了 程序共享或增加程序的可读性,重要注释不可缺少; (2)除直接运行程序文件,MATLAB命令均需在命令 窗依次输入,才能执行,以后的例题不再注明; (3)与数学习惯表达不同, MATLAB表达式中的乘号 “ * ”不可省略; (4)clear命令通常用于程序之初,避免后续计算受先前 自定义变量的影响.
8
二.求符号函数在某一点的函数值 命令格式:eval(y) 功能:求符号函数在某一点的函数值. 练习 2 求函数 在 处的值. 解 输入:
练习 2 求函数 在 处的值. 解 输入: syms x e ,y=e/(2-x)+sin(x), x=1;e=exp(1) % 给表达式中字母赋值 y1=eval(y) %求符号表达式y的数值计算结果并赋值给y1 结果: y =e/(2-x)+sin(x) e =2.7183 y1 =3.5598
9
三.求符号函数的极限值 命令格式:limit(f,x,a) 功能:求表达式f当x→a 时的极限. 练习 3 求下列表达式的极限
练习 3 求下列表达式的极限 步骤:一、设变量 二、利用limit命令的规范格式求极限
10
练习 3 求下列表达式的极限 解 输入: syms a m x,f1=(x^(1/m)-a^(1/m))/(x-a); l1=limit(f1,x,a) %求 (1)的极限l1 l2=limit(exp(x),x,-inf) %求(2) 的极限l2 l3=limit(tan(x),x,pi/2,'left') %求(3) 的极限l3 结果: l1 = a^(1/m)/a/m % (1)的极限 l2 = % (2)的极限 l3 = inf % (3)的极限
11
用limit( )求表达式极限的规范格式:
数学表达式 命令格式 Limit (f ),或limit (f , 0),或limit (f , x ,0) Limit (f , x , a) , 或 limit (f , a ) Limit (f , x , a , ′ left ′) Limit (f , x , a , ′right ′) Limit (f , x , inf) Limit (f , x , inf) Limit (f , x , -inf)
12
四.求符号函数的各阶导数(偏导数) 命令格式:diff(f,x,n) 功能:求函数 f 关于变量 x 的 n 阶导数(偏导数)
练习 4 求函数 的导数 步骤:一、设变量(输入表达式) 二、利用diff命令的规范格式求导数
13
练习 4 求函数 的导数 解 输入: syms x y,y=sin(x*sqrt(x)); y1=diff(y), % 求函数y的导数y1 x=1;y1e=eval(y1) % 求函数y在x=1处的导数值y1e 结果: y1=3/2*cos(x^(3/2))*x^(1/2) y1e =0.8105
14
练习 5求下列函数的各阶导数(偏导数) 解 输入: syms x y,f1=x*cos(x); f13=diff(f1,x,3) %求(1)中3阶导数 z=x*exp(y)/y^2; %输入z的表达式 z2=diff(z,y) %求z对y的偏导数 z11=diff(z,x,2) %求z对x的二阶偏导数 z12=diff(diff(z,x),y) %求z先对x后对y的混合二阶偏导数 结果: f13 = -3*cos(x)+x*sin(x) z2 = x*exp(y)/y^2-2*x*exp(y)/y^3 z11 = 0 z12 = exp(y)/y^2-2*exp(y)/y^3
15
五.求符号函数的积分 (1) 求不定积分 命令格式1: int(f) 功能:求表达式f关于默认变量的不定积分. 命令格式2:int(f,x)
练习 6 求不定积分 解 输入: syms x,y=exp(3*x)*(sin(x));int(y) 结果: ans = -1/10*exp(3*x)*cos(x)+3/10*exp(3*x)*sin(x)
16
五.求符号函数的积分 (2) 求定积分 命令格式1:int(f,a,b) 功能:求表达式f关于默认变量在区间[a,b]上的定积分.
命令格式2:int(f,x,a,b) 功能:求表达式f关于变量x在[a,b]区间上的定积分. 练习 7 求定积分 步骤:求积分与求极限(导数)类似.
17
练习 7 求定积分 解 输入: syms x ,y1=1/x^2/sqrt(4+x^2); I1=int(y1,2,2*sqrt(3)) %求(1) I2=int(1/x/log(x),exp(1),inf) %求(2) 结果: I1 = -1/6*3^(1/2)+1/4*2^(1/2) I2 =inf
18
六.求代数方程(组)的符号解析解 命令格式:solve('方程1', … , '方程n','未知数1', …,'未知数n')
功能:求代数方程(组)的符号解析解. 练习 8 解方程组 解 输入: P1='x^2+x*y+y=3';P2='x^2-4*x+3=0'; [x,y]=solve(P1,P2) 结果: x = [ 1] y = [ 1] [ 3] [ -3/2]
19
七.求符号函数的极值(最值) 综合使用求导、解方程(组) 、求函数值命令即可. 练习 9 利用MATLAB解决§3.4的案例4. 解 输入:
解 输入: syms D C1 C2 Q E=C2*Q/2+C1*D/Q; %输入总费用E与批量Q的关系式 E1=diff(E,Q), %求存货总费用E关于批量Q的导数E1 Q0=solve(E1,Q) %解关于Q的方程,并赋值给Q0 结果: E1 =1/2*C2-C1*D/Q^2 Q0 =[ 1/C2*2^(1/2)*(C2*C1*D)^(1/2)] [ -1/C2*2^(1/2)*(C2*C1*D)^(1/2)]
20
练习 9 利用MATLAB解决§3.4的案例4.(续) 由实际意义, Q0不可能取负数, Q0 =1/C2*2^(1/2)*(C2*C1*D)^(1/2) , 继续输入: Q= 1/C2*2^(1/2)*(C2*C1*D)^(1/2);E0=eval(E) 结果: E0 =1/2*2^(1/2)*(C2*C1*D)^(1/2)+ 1/2*C1*D*C2*2^(1/2)/(C2*C1*D)^(1/2)
Similar presentations