求用matlab作次式子二重积分,其中w,L,k,m都是常量。积分完之后应该是一个带这四个字母表达式。跪谢大神!
在MATLAB软件中输入二重积分的代码即可求二重积分,具体操作请参照以下步骤,演示软件版本为MATLAB 2014版。
1、将要使用MATLAB计算下图中的二重积分,首先在电脑上打开MATLAB软件。
2、新建脚本(Ctrl+N),输入图中框住的代码内容。其中Q1=dblquad(f,0,2*pi,-pi,pi,1.0e-3)采用默认方法quad计算二重积分,绝对计算精度设为1.0e-3。plot3(x,y,ff,'r','LineWidth',3)是绘制被积分函数ff=x.*sin(y)-cos(x)+y-3的图像。
3、保存和运行上述脚本,在命令行窗口(Command Window)得到如下结果:Q1 =-118.4351。也就是说,该二重数值积分的结果为-118.4351。
4、同时得到被积分函数x.*sin(y)-cos(x)+y-3的图像。
5、也可采用quadl法计算二重积分,在Q1命令后面再添加一行命令Q2=dblquad(f,0,2*pi,-pi,pi,1.0e-3,'quadl')即可。
这个可以用matlab的符号积分或者数值积分解决,下面提供4种方法:
1、直角坐标系符号积分
syms x yint_y = int(sin(pi*(x^2+y^2)),y,-sqrt(1-x^2),sqrt(1-x^2)); % 先对y积分I = vpa(int(int_y,x,-1,1)) I = 2.0
2、极坐标系符号积分
syms rI = 2*pi*int(r*sin(pi*r^2),r,0,1)I = 2
3、dblquad()是数值积分(针对matlab早期版本)
f=@(x,y)sin(pi*(x.^2+y.^2)).*(x.^2+y.^2<=1);I = dblquad(f,-1,1,-1,1)I = 2.0000
4、integral2()数值积分(较新版本matlab)
f=@(x,y)sin(pi*(x.^2+y.^2));y_l = @(x) -sqrt(1-x.^2);y_u = @(x) sqrt(1-x.^2);I = integral2(f,-1,1,y_l,y_u)I = 2.0000
计算第一重积分很简单:
syms w L k m x y
int(k/(x^2+y^2+m^2),y,0,L)
得到的结果是一个类似这样的表达式:
k*atan(L/z)/z
其中z=(x^2+m^2)^(1/2)。
现在的问题是,即使对于
atan(1/x)/x
这样一个简单的函数求不定积分也是比较困难的事(得到的结果有polylog之类符号,我看不明白是什么意思),你有兴趣可继续试试,我知道的就这么多了,供参考。
format long
R=27.9749e-3;
fun=@(r,alpha)r.*(R-r.*cos(alpha)./(R^2+R^2-2*R*r.*cos(alpha)).^(3/2));
a=quad2d(fun,16.129e-3,16.51e-3,0,2*pi)
format short
matlab中如何设置使得坐标刻度是的2指数次方,并且间隔是一样的_百度...
figure(1)set(gca,'xlim',[-0.5 5.5]);set(gca,'xtick',[0 1 2 3 4 5]);set(gca,'xticklabel',num2str(2.^[0 1 2 3 4 5]'));
用matlab编写程序求以幂函数作基函数的3次、4次多项式的最小二乘...
>> y1=f1(x); %用拟合得到的式子求y值,如果想要拟合曲线更光滑,可将x的值更细化 >> y2=f2(x);>> plot(x,y1,'-r*'); %绘3次拟合曲线图 >> for i=1:7 text(x(i),y1(i)+0.1,strcat('(',num2str(x(i)),',',num2str(y1(i)),')'));end;>> xlabel('x');...
MATLAB来做三次样条插值,如何得到插值的函数表达式?
三次样条插值(Cubic Spline Interpolation)简称Spline插值,是通过一系列形值点的一条光滑曲线,数学上通过求解三弯矩方程组得出曲线函数组的过程。实际计算时还需要引入边界条件才能完成计算。一般的计算方法书上都没有说明非扭结边界的定义,但数值计算软件如Matlab都把非扭结边界条件作为默认的边界条件。在...
matlab中的三次方根如何表示
简单来说就是,使用power(x,1\/3),或者简单的使用 x^(1\/3)即可。matlab中求平方根(二次方根)用sqrt,但没有专门表示三次方根的函数。计算三次方根等价于计算某个数的三分之一次方。所以可以使用power(x,1\/n)的方法(表示开n次方根)。举例:>> x=4x =4>> power(x,1\/3)ans =1.5874>...
怎么用matlab求解一元三次方程f(S) =16.56S^3 + 12.42S^2 + 10.67...
fzero(@(x) (16.56*x.^3 + 12.42*x.^2 + 10.672*x + 0.84),0)得出解-0.0864。x=-10:0.1:10;plot(x,16.56*x.^3 + 12.42*x.^2 + 10.672*x + 0.84);可以画图。
怎么用matlab解一元二次方程
二、操作步骤:A.解一元方程 【1】先举一例,解方程"x^2+100*x+99=0"在matlab ”Command Window"中输入如下命令:x=solve('x^2+100*x+99=0','x')见下图 【2】回车后,matlab就求出了这个一元二次方程的解。见下图 【3】再举一例,解一元三次方程"x^3+1=0"在matlab ”Command ...
MATLAB 怎么把一个向量里出现的数据作为横坐标,出现的次数作为纵坐标画...
solve the question in Baidu Zhidao% edited by Beenwa% edited on 2015-1-29 clear;close all;clc;data=[8.376271 8.378271 8.375271 8.378271 8.377271 8.378271 8.378271 8.378271 8.378271 8.378271 8.378271 8.217058 8.217058 8.217058 ...
如何用matlab 求解高阶方程?
如何用matlab 求解高阶方程? 用roots(p)函数求解 其中p是方程的各次方的系数组成的矩阵 比如 你这道题的求根程序为: roots(p)matlab运行后的结果为:ans =10.3180 4.0487 1.8166 + 1.3141i 1.8166 - 1.3141i 如何用MATLAB求解LOGISTIC方程 至于Lyapunov方程的求解,你可以查下,下面我编写的一个帖子,里面详细说明了...
matlab作用
MATLAB的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多.在新的版本中也加入了对C,FORTRAN,c++ ,JAVA的支持.可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些...
matlab根号运算怎么写
2、通过sqrt函数表示根号,在命令行窗口中输入“sqrt(9)”,按回车键能看到得到相同的结果。3、通过sqrtm函数表示根号,在命令行窗口中输入“sqrtm(9)”,按回车键能看到结果为3,如果是要对一个数字求根,这三种方式都能表示根号。在实数范围内:偶次根号下不能为负数,其运算结果也不为负。奇次...
弓唯都可: 使用两次int指令对被积函数分别做内层积分和外层积分,再执行vpa指令对返回的符号表达式执行数值计算
游仙区18637667752: matlab中怎样求二次积分 - ?
弓唯都可: 用int()函数
游仙区18637667752: matlab求二重积分 速度急求 - ?
弓唯都可: 12345 >> quad2d(@(x,y)(x+y+1),0,2,@(x)(-(2*x-x.^2).^.5),@(x)((2*x-x.^2).^.5)) ans =6.2832 如有用,请及时采纳!
游仙区18637667752: 怎么用Matlab计算这个二重积分??求程序代码 - ?
弓唯都可: 程序:fun=sin(0.5*pi*x./y);%% a=int(int(fun,y,sqrt(x),x),x,1,2); b=simple(a) %化简 I=vpa(b,4) %得到4位近似解,也可以任意N位解 结果:I =0.2719
游仙区18637667752: 用MATLAB如何求双重积分:D=[0,PI]*[0,PI] 函数f(x,y)=ysinx - xcosy 急急急!!!求各位高手解答,谢谢啦! - ?
弓唯都可: Q = dblquad(@(x,y)y*sin(x)+x*cos(y), pi, 2*pi, 0, pi)
游仙区18637667752: 求助,matlab编写二重积分程序 - ?
弓唯都可: 应该是曲面积分∫∫f(x,y)dxdy,积分区域为以(5,0)为圆心,以4为半径的圆形区域
游仙区18637667752: 如何用MATLAB的for循环计算二重积分 - ?
弓唯都可: 使用matlab的int函数可以方便的计算积分,以及多重积分. 设二重积分还是表达式为 z=z(x,y),积分域为下限 y1(x) 上限 y2(x),从 x1 到 x2,则二重积分代码为: int(int(z,y,y1,y2),x,x1,x2) 需要先定义符号变量 x,y,以及表达式 z,y1,y2 和数值 x1,x2 的值
游仙区18637667752: 求,利用matlab计算二重数值积分f=exp((x - 2)^2+(y - 1)^2))在圆域x^2+y^2=1内的积分 - ?
弓唯都可: 提供两种方法1. 直角坐标系符号积分 syms x y int_y = int(exp((x-2)^2+(y-1)^2),y,-sqrt(1-x^2),sqrt(1-x^2)); % 先对y积分 I = vpa(int(int_y,x,-1,1))2. integral2()数值积分 f=@(x,y)exp(((x-2).^2+(y-1).^2)); y_l = @(x) -sqrt(1-x.^2); y_u = @(x) sqrt(1-x.^2); I = integral2(f,-1,1,y_l,y_u) 计算结果为:I = 6.4181e+03 就是6418.1
游仙区18637667752: MATLAB哪位大侠帮忙看看计算下列二重积分的程序怎么写???急求!!! - ?
弓唯都可: function eq=nuowei(x,z) % 保存为 nuowei.m 文件 Vwz=-62700*z.*x./(sqrt(400^2-x.^2).*(416.5-sqrt(400^2-x.^2)).^2); Vwx=62700./(416.5-sqrt(400^2-x.^2)); Vbx=91200./(424-sqrt(480^2-x.^2)); eq=400*sqrt((Vwx-Vbx).^2+Vwz.^2);---------------...
游仙区18637667752: matlab求2重积分 - ?
弓唯都可: 既然为2重积分,那为什么有三个变量,Matlab中dblquad的定义为q = dblquad(fun,xmin,xmax,ymin,ymax),只有两个变量.若为三重积分的话用triplequad(fun,xmin,xmax,ymin,ymax,zmin,zmax).