matlab双重累加求和或多重定积分

请使用MATLAB实现,最好给科普一下,该式子怎么运行。... 请使用MATLAB实现,最好给科普一下,该式子怎么运行。 展开
 我来答
乔908833036
2018-04-10
知道答主
回答量:20
采纳率:64%
帮助的人:11.1万
展开全部
你理解错双重积分啦,一重积分是对一个未知数进行积分,双重积分是对两个未知数积分,同理三重积分是对三个未知数积分,你现在只有一个x,所以就不可能用双重积分运算,除非式子里有两个未知数,比如x,y,在matlab中做一个简单例子如下:
f=@(x,y) x*sin(y)-cos(x)+y-3;

Q1=dblquad(f,0,2*pi,-pi,pi,1.0e-3)
一个未知数例子如下:
a=integral(@(x) x.^2,0,1)
三个未知数可以同理推导,再具体的重积分问题,我建议你在网上搜索高等数学细看一下
更多追问追答
追问

谢谢您的回答!

可能我表述有错,这个式子是对原式积分了两次。

式子的来源是出自材料力学里关于梁挠度的积分法计算。

这里的M/EI我通过之前的关系式代换成(应变关于X的函数)如右图,给定上下限,且划分好△X的具体值,那么该怎么计算。

又如何通过MATLAB实现。

追答

这个是微分方程,都属于高等数学里的知识,知道M/EI后直接解二阶微分方程就行,简单的二阶微分方程有解析解,复杂的可以用迭代方法计算出来,matlab中可以用ode45迭代求解。

你的问题一般可以用这种方法

如果是很复杂的工程问题需要用ode45转化为状态空间的形式计算,下面是一个例子,不过要会用也需要下点功夫学习一下matlab编程知识。

function test
[t,y]=ode45(@func1, [0,1], [0;0;1;2;2;2]);
figure(1);
clf;
plot(t, y);
legend('x','y','z','dx','dy','dz');
grid on;
function f=func1(t,x)
r=(x(1)^2+x(2)^2+x(3)^2)^(1/2);
f=[x(4); x(5); x(6); r*x(1); r*x(2); r*x(3)];

再一般的二阶微分方程的通解可以参考高等数学里微分方程那一节,不过复杂的话也需要用matalb中ode45迭代求解

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式