matlab中int函数无法得出解

一、问题:最近在matlab中用int函数求积分时一直得不出解,软件左下角一直显示正忙。 二、已尝试过如下解决办法: 1、更换积分函数:可以得出解,怀疑原函数本身过于复杂; 2、更换积分上下限为常数:同样显示正忙。 综上,认为原函数的存在问题 三、求助各位大神: 这种情况如何处理?跪谢! 四、代码: syms x h u=1*10^-6; a_33=12.56*10^(-9); F=h; L=50*h; b=h; G_E=1.41*(10^10)*h^4; k_w=1.12*10^4; k_p=2.8*(10^7)*h^2; s_1=k_p/G_E; s_2=k_w/G_E; O_1=((s_1+(s_1^2-4*s_2)^0.5)/2)^0.5; O_2=((s_1-(s_1^2-4*s_2))^0.5/2)^0.5; m=O_1^3*cosh(O_1*L)-O_1*(O_2^2)*cosh(O_2*L); n=O_1^3*sinh(O_1*L)-(O_2^3)*sinh(O_2*L); t=O_1^3*sinh(O_1*L)-(O_1^2)*O_2*sinh(O_2*L); Z=2*G_E*(m^2-n*t); u_1=cosh(O_1*L)- cosh(O_2*L); u_2=O_2*sinh(O_2*L)-O_1*sinh(O_1*L); A31=O_1*O_1*sinh(O_1*x)-O_1*O_2*sinh(O_2*x); B31=O_2*O_2*cosh(O_2*x)-O_1*O_1*cosh(O_1*x); O3=(h*F*u*(m*O_1*u_1+t*u_2))/(2*(u^2)*b*O_1*h*(O_1*n*u_1+m*u_2)-Z*a_33*L); C31=(2*u*b*O_1*O3*n-F*m)/Z; D31=(2*u*b*O_1*O3*m-F*t)/Z; W3(2)=(C31*A31+D31*B31)^2; W03(2)=((-F*m/Z)*A31+(-F*t/Z)*B31)^2; Y31=int(W3(2),x,-h/2,h/2); Y32=int(W03(2),x,-h/2,h/2); Y33=Y32/Y31;

复杂的积分未必能够求出解析解(精确解),建议退而求其次,使用trapz等函数求数值积分。

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632