文档详情

MATLAB实验多元函数微积分.doc

发布:2017-04-04约4.65千字共8页下载文档
文本预览下载声明
实验04 多元函数微积分 一 实验目的 2 二 实验内容 2 三 实验准备 2 四 实验方法与步骤 3 五 练习与思考 7 一 实验目的 1 了解多元函数、多元函数积分的基本概念,多元函数的极值及其求法; 2 理解多元函数的偏导数、全微分等概念,掌握积分在计算空间立体体积或表面积等问题中的应用; 3 掌握MATLAB软件有关求导数的命令; 4 掌握MATLAB软件有关的命令. 二 实验内容 1 多元函数的偏导数,极值; 2 计算多元函数数值积分; 3计算曲线积分,计算曲面积分. 三 实验准备 1 建立符号变量命令为sym和syms,调用格式为: x=sym(x) 建立符号变量x; syms x y z 建立多个符号变量x,y,z; 2 matlab求导命令diff的调用格式: diff(函数,变量名x) 求对x的偏导数; diff(函数,变量名x,n) 求对x的n阶偏导数; 3 matlab求雅可比矩阵命令jacobian的调用格式: jacobian([f;g;h],)给出矩阵 4 MATLAB中主要用int进行符号积分,常用格式如下: ① int(s)表示求符号表达式s的不定积分 ② int(s,x)表示求符号表达式s关于变量x的不定积分 ③ int(s,a,b)表示求符号表达式s的定积分,a,b分别为积分的上、下限 ④ int(s,x,a,b)表示求符号表达式s关于变量x的定积分,a,b分别为积分的上、下限 5 MATLAB中主要用trapz,quad,quad8等进行数值积分,常用格式如下: ① trapz(x,y)采用梯形积分法,其中x是积分区间的离散化向量,y是与x同维数的向量、用来表示被积函数. ② quad8(fun,a,b,tol)采用变步长数值积分,其中fun为被积函数的M函数名,a,b分别为积分上、下限,tol为精度,缺省值为1e-3. ③ dblquad(fun,a,b,c,d)表示求矩形区域的二重数值积分,其中fun为被积函数的M函数名,a,b分别为x的上、下限,c,d分别为y的上、下限. 使用help int,help trapz,help quad等查阅有关这些命令的详细信息. 四 实验方法与步骤 例1 定义二元函数. 解 (1)方法一:syms x y;z=x.^2+y.^3; (2)方法二:编写M文件fun7.m定义函数 function z=fun7(x,y) z=x.^2+y.^3; (3)方法三:利用inline函数:f=inline(x.^2+y.^3). 注:不同定义方式,调用格式不完全相同. 例2 绘出函数的图形. 解 程序为: x=linspace(-10,10,40);y=x;[X,Y]=meshgrid(x, y); Z=fun7(X,Y);surf(X,Y,Z),shading interp 结果如图2-10所示. 图2-10 例3 设,求. 解 输入命令:syms x y z;diff(x^2+2*y^2+y*z,y),得ans=4*y+z. 利用jacobian命令:jacobian(x^2+2*y^2+y*z,[x y]),得ans=[2*x,4*y+z],即矩阵 例4 设,求. 解 求的程序为:syms x y;diff(x^6-3*y^4+2*x^2*y^2,x,2) 结果为: ans=30*x^4+4*y^2 求的程序为:syms x y;diff(x^6-3*y^4+2*x^2*y^2,y,2) 结果为:ans=-36*y^2+4*x^2 求的程序为:syms x y;diff(diff(x^6-3*y^4+2*x^2*y^2,x),y) 结果:为ans=8*x*y. 注:diff(x^6-3*y^4+2*x^2*y^2,x,y)是求,而不是求 例5 设由所确定的的隐函数为,求. 解 令 输入命令:syms x y z;a=jacobian(x*y+y^2+2*z^2-5,[x,y,z]) 可得矩阵=[y,x+2*y,4*z] 利用公式可得 求的程序为:-a(1)/a(3),结果为:-1/4*y/z; 求的程序为:-a(2)/a(3),结果为:1/4*(-x-2*y)/z. 例6 求(1)在点临近的极小值. (2)在内的极值. 解 求多元函数的极值点和极小值minf,可用如下方法 方法一:X=fminsearch(f,x0),用的是Nelder-Mead单纯形搜索法求解; 方法二:X=fminunc(f,x0),用的是BFGS拟牛顿迭代法求解. 其中,x0是初始点. 若求极大值点,用(-1)乘函数,再求极小值点. (1)程序如下: f=(x(1)^2-3*x(2))^2+12*(1-2*x(2))^
显示全部
相似文档