yhkn.net
当前位置:首页 >> MATLAB求解定积分,表达式中有递归该怎么解决 >>

MATLAB求解定积分,表达式中有递归该怎么解决

如下:result =- ((4*h0^2 - 1)/(h0^4 - 2*h0^2 + 1) - (tan(x/2)^3*(5*h0^2 - 2))/(h0*(h0^4 - 2*h0^2 + 1)) - (tan(x/2)*(11*h0^2 - 2))/(h0*(h0^4 - 2*h0^2 + 1)) + (tan(x/2)^2*(h0^2 + 2)*(4*h0^2 - 1))/(h0^2*(h0^4 - 2*h0^2 + 1)))/(tan(x/2)^2*(2*h0^2 + 4) - 4*h0*tan(x/2

syms l a hf=int('acos((3-h-(l-6)*tan(a))/3)','l',0,h/tan(a)+2)结果:无解.对于涉及三角函数的积分,往往无解,所以,要把未知数减少到最少,如a,h用数值代入,有可能有解.

matlab说他也不会做.如果你只是想求解这个积分的值,可按如下方法做 1. 首先看看被积函数是什么形态,有没有奇点 ezplot('(x^2*cos(x)^2 + 1)^(1/2)'); 你这个函数是连续的,所以可积,然后 2. 用简单的数值积分 step = 1e-2; x = 0:step:1; y = (x.^2.*cos(x).^2 + 1).^(1/2); step*sum(y) % 积分值

你程序的第15行,H那行,G的维数是1*15,而cos(x).^4的维数是1*16,显然这两个矩阵是不能相乘的! 而_Z是解中的复常数.Rootof()是()中方程的根的意思 .

简单的就是先把那个微分方程化成传递函数,这个可以用matlab自身的函数算,然后你就到simulink里面建个模,很快就出来了

那是当然,但有的积分根本没有原函数,高级的matlab语言还是把积分形式写了出来,然后你可以进一步做运算.>> syms k a>> f=sqrt(1-k^2*sin(a));>> int(f,a,0,pi/2)ans =piecewise([k in Dom::ImageSet(x*1i, x, R_) & ~in(k^2, 'real'), 2*(k^2 + 1)^(1/

int函数 比如求y=x^2+2*x+1的几分可以这样写: y=x^2+2*x+1 int(y) 如果是定积分,就写成int(y,a,b),期中a,b分别是几分的上下限

第一步把积分求出来了第二步,带入方程,使用solve

举个例子,比如被积函数是x^2,上限已知为5,定积分的值是10,求下限a.f=@(x)x.^2;%被积函数 b=5;%上限 val=10;%定积分值 g=@(a)quadl(f,a,b)-val; a=fzero(g,b)

>>f='sin(s+2*x)';>>int(f) %符号解ans =-cos(s + 2*x)/2>>int(f,pi/2,pi) %数值解ans =-cos(s)

网站首页 | 网站地图
All rights reserved Powered by www.yhkn.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com