基于MATLAB的高等数学实验主讲:张朝元数学与计算机学院应用数学教研室2009.3.-4.第一章MATLAB基本知识第二章MATLAB矩阵和数组计算第三章MATLAB符号运算第四章MATLAB绘图第五章MATLAB语言的程序设计第六章MATLAB应用一、MATLAB简介和特点二、MATLAB的安装与启动三、MATLAB基本知识四、MATLAB基本操作[上机练习]第一章MATLAB基本知识MATLAB是MatrixLaboratory(矩阵实验室)的缩写,是由美国MathWorks公司开发的集数值计算、符号计算和图形可视化三大基本功能于一体的,功能强大、操作简单的语言。主要特点:①运算符和库函数极其丰富,语言简洁,编程效率高,②既具有结构化的控制语句,又有面向对象的编程特性。③图形功能强大。④功能强大的工具箱。⑤易于扩充。Back1、MATLAB的运行方式:命令行方式和M文件方式例1.1、求矩阵,的和。]3652[A]0297[B2、MATLAB的窗口3、MATLAB的帮助系统4、“clear”命令和“clc”命令Back1、MATLAB的常用操作键表1.1命令窗口常用功能键功能键功能↑,Ctrl-p重新调入上一命令行↓,Ctrl-N重新调入下一命令行←,Ctrl-B光标左移一个字符→,Ctrl-F光标右移一个字符Home,Ctrl-A光标移到行首End,Ctrl-E光标移到行尾Esc清除命令行Del,Ctrl-D删除光标处字符Backspace删除光标左边字符Ctrl-K删除至行尾2、MATLAB的变量和函数MATLAB的变量命名规则:变量必须以字母打头,之后可以是任意字母、数字或下划线;变量名区分字母大小写;变量名不能超过19个字符。调用单值函数格式:变量名=函数名(P1,P2…)P为输入参数表1.2MATLAB中特殊变量名变量名称含义ansMATLAB默认变量pi圆周率eps计算机中的最小数,inf无穷大,如1/0NaN不定值,如0/0、i(j)虚数单位nargin所用函数的输入变量数目nargout所用函数的输出变量数目reamin最小可用正实数realmax最大可用正实数522/表1.3基本函数表函数名称功能函数名称功能sin正弦fix朝零方向取整cos余弦ceil朝正无穷大方向取整tan正切floor朝负无穷大方向取整cot余切round四舍五入到整数sec正割rem除后取余数csc余割sign符号函数asin反正弦abs绝对值acos反余弦angle复数相角atan反正切imag复数虚部acot反余切real复数实部asec反正割conj复数共轭acsc反余割log10常用对数sinh双曲正弦log自然对数cosh双曲余弦expe为底指数tanh双曲正切sqrt平方根coth双曲余切运算符号:+、-、*、/、\、^3、数字变量的运算及显示格式四种显示格式:short小数点后4位(默认)long小数点后14位shorte5位指数形式longe15位指数形式4、数据的输入输出函数变量名=input(‘提示信息’)输出函数从键盘输入数据disp(输出项)5、MATLAB的符号表达式定义方式:变量名=‘表达式’6、逻辑关系运算表1.5逻辑关系运算表关系运算符功能逻辑运算符功能==等于&逻辑与~=不等于/逻辑或小于~逻辑非大于=小于等于=大于等于1.计算的值;2.求;3.计算;4.求的值;5.求15、35的最大公因数;6.计算3.14朝零取整;7.用变量名y1表示方程8.熟悉MATLAB的各窗口。50cos323xx3ln43tan4e[上机练习]第二章MATLAB矩阵和数组计算一、矩阵的建立二、矩阵元素的操作三、矩阵的基本运算四、矩阵的线性变换五、矩阵的分解六、向量运算七、多项式运算一、矩阵的建立①直接输入矩阵的元素②利用函数创建zeros——零矩阵ones——常数矩阵eye——单位矩阵rand——均匀分布的随机矩阵randn——正态分布的随机矩阵linspace——线性等间隔向量logspace——对数等间隔向量③利用数据文件装入④利用矩阵编辑器(MatrixEditor)创建二、矩阵元素的操作1、选取矩阵中某些元素而构成新的矩阵或数组b=a(m行:n行,r列:s列)——表示从a中抽出m到n行、r到s列b=a(:,r列:s列)——表示所有行均选b=a(m行:n行,:)——表示所有列均选c=a(m,r)——表示第m行r列元素被选中2、小矩阵拼成大矩阵大矩阵c=[a;b]——把b的元素补进a矩阵中三、矩阵的基本运算1、矩阵的四则运算加(+)、减(-)乘法(*)、点乘(.*)除法(左除\和右除/)1/ABBABABA1\点除(./)2、矩阵与标量的四则运算3、矩阵的幂运算A.^np.^BA.^BA^p4、矩阵的指数运算、对数运算和开方运算矩阵的指数运算examexam1exam2矩阵的对数运算logm矩阵的开方运算sqrtm5、矩阵的转置‘矩阵的逆矩阵inv6、矩阵元素的行列式的值:det矩阵的秩:rank矩阵的迹:trace矩阵的范数:norm矩阵的条件数:cond7、矩阵a的特征值(n)特征向量(m):[m,n]=eig(a)例2.5求矩阵A=[2,2,-1,1;4,3,-1,2;8,5,-3,4;3,3,-2,2]的行列式、迹、范数、条件数、秩和特征值特征向量。例2.6解线性方程组12121243132143214321xxxxxxxxxxxxxx四、矩阵的线性变换rot90——矩阵逆时针旋转90度;fliplr——矩阵作左右翻转;fliqud——矩阵作上下翻转;diag——产生对角矩阵;tril——产生下三角矩阵;triu——产生上三角矩阵;reshape——矩阵重建;size——矩阵尺寸;length——向量长度。五、矩阵的分解Cholesky分解:chol(A)三角分解:[L,U]=lu(A)正交分解:[Q,R]=qr(A)六、向量运算1、向量的产生2、向量运算①向量名=初值:增量:终值②向量可用中括号以及其中的数字产生③linspace(初值,终值,数据个数)例2.8、①建立一个10以内的正奇数向量;②建立一个1~10内的有4个数的向量。①向量与标量的运算②向量间的运算和x1+x2差x1-x2点积dot(x1,x2)叉积cross(x1,x2)混合积dot(x1,cross(x2,x3)七、多项式运算多项式一般可表示为:nnnnaxaxaxaxf1110)(],,[110nnaaaaT1、多项式构造命令:poly2sym例2.11、构造多项式243)(245xxxxxf2、求多项式的值3、多项式四则运算命令:polyval(p,s)加“+”减“-”乘conv(a,b)除[q,r]=deconv[a,b]第三章MATLAB的符号计算一、符号定义二、代数式的符号运算三、可视化符号函数计算器四、函数的极值和零点五、求极限六、求导数和偏导数七、积分运算八、级数九、解方程和微分方程[上机练习]1、创建符号变量符号变量名=sym(‘表达式’)Syms符号变量名1符号变量名2符号变量名3…2、符号赋值符号要用具体数值代替格式为:R=subs(s,‘old’,‘new’)表达式R的值可用命令:vpa(R)一、符号定义符号表达式的化简函数表2.1符号化简函数表函数格式说明collect(s,x)合并自变量x的同幂系数expand(s)符号表达式s的展开factor(s)因式分解numden(s)分式通分simple(s)表达式的最简型simplify(s)化简horner(s)表达式s的嵌套形式二、代数式的符号运算三、可视化符号函数计算器函数自运算启动可视化符号函数计算器:funtool函数与常数的运算两函数间运算其它功能可进行函数的运算操作四、函数的极值和零点函数名函数格式说明一元函数极小值x=fminbnd(‘fun’,a,b)fun为待求极值的单变量函数,a,b为求极值的区间,x为函数极值点,y为极值。[x,y]=fminbnd(‘fun’,a,b)多元函数极小值fminsearch(‘fun’,a)fun为待求极值的多变量函数,a为极值点附近的初始值。fminsearch(‘fun’,a)函数零点x=fzero(‘fun’,a)a为极值点附近的初始值,[a,b]为求零点的区间,x为函数零点,y为零点的函数值。x=fzero(‘fun’,[a,b])[x,y]=fzero(‘fun’,a)[x,y]=fzero(‘fun’,[a,b])表2.2函数的极值和零点的主要函数表五、求极限表2.3符号极限的函数格式函数格式说明limit(s)s为符号表达式。表达式中默认自变量趋于0时的极限limit(s,a)表达式s中默认自变量趋于a时的极限limit(s,x,a)表达式s中自变量x趋于a时的极限limit(s,x,a,’right’)表达式s中自变量x趋于a时的右极限limit(s,x,a,’left’)表达式s中自变量x趋于a时的左极限六、求导数和偏导数nnfx1、表达式的导数diff(s,x,n)2、多元函数的偏导数diff(函数f(x,y),变量x,n)求出3、求雅可比矩阵jacobian(函数f(x,y,z);函数g(x,y,z);函数h(x,y,z),[x,y,z])fffxyzgggxyzhhhxyz七、积分运算表2.3符号积分的函数格式函数格式说明int(s)求表达式s对默认自变量的不定积分int(s,x)求表达式s对自变量x的不定积分int(s,a,b)求表达式s对默认自变量从a到b的定积分int(s,x,a,b)求表达式s对自变量x从a到b的定积分八、级数表3.3泰勒级数的函数格式函数格式说明taylor(s)表达式s在默认自变量等于0处的5阶taylor展式taylor(s,n)表达式s在默认自变量等于0处的n-1阶taylor展式taylor(s,n,a)表达式s在默认自变量等于a处的n-1阶taylor展式taylor(s,x,n,a)表达式s在自变量x等于a处的n-1阶taylor展式表3.4级数求和函数格式函数格式说明symsum(s)计算符号表达式s(级数通项)对于默认自变量的不定和symsum(s,x)计算符号表达式s对自变量x的不定和symsum(s,a,b)计算符号表达式s对于默认自变量的从a到b的有限和symsum(s,x,a,b)计算符号表达式s对于自变量x从a到b的有限和九、解方程和微分方程表2.3符号方程求解函数格式1212,,,,,nnsssxxx函数格式说明solve(s)求解符号表达式s=0的代数方程,自变量为默认自变量solve(s,x)求解符号表达式s=0的代数方程,自变量为xsolve()求解符号表达式组成的代数方程组,自变量分别为九、解方程和微分方程表2.4符号微分方程求解的函数格式函数格式说明r=dsolve(‘eq’,’cond’,’var’)eq—常微分方程cond—边界条件或初始条件var—自变量(可求特解,不给初始条件即为通解)。r=dsolve(‘eq1’,’eq2’,…‘cond1’,…’var1’…)第四章MATLAB绘图一、二维图形绘制二、三维图形绘制[上机练习]1、plot函数常用形式①plot(x,y)②plot(x)③plot(x,y,‘参数’)表5.1颜色控制符字符颜色字符颜色b蓝色m紫红色c青色r红色g绿色w白色k黑色y黄色④plot(x1,y1,‘参数1’,x2,y2,‘参数1’…)表5.2线型控制符符号线型符号线型-实线(默认):点连线-.点划线--虚线表5.3数据点标记符控制符标记控制符标记.点h六角形+十字号p五角星*星号v下三角o(字母)圆圈^上三角x叉号右三角s正方形左三角d菱形2、图形的修饰与控制①坐标轴的调整axis()],