results in the form of integral

조회 수: 16(최근 30일)
답변: John D'Errico 26 Feb 2021
i wrote this code:
clc
clear all
close all
%--------------------------------------------------------------------------
syms Alpha1 Betta2 Betta1 S1 S2 h q S
syms t R m h Etta H Et1 K STRu STRy n STRp Strc STRpc Et2 E_foam
%_________________
Gamma0=2*n*h*Etta;
Alpha01=acos(m);
Betta02=acos(1-m);
STR0=sqrt((STRy*STRu)/(1+K));
Mp=(STR0*(t^2))/4;
Np=STR0*t;
%________________________________________________________
E_foam=(pi*((R-(t/2))^2)*int((Et1*(S/H)+STRp),S,0,2*n*h*Etta))
%___________________________________________________________________________________________________
Eb=(4*pi*Mp)*(((R+(m*h))*acos(m))+(h*sqrt(1-m^2))+(R*asin(1-m))+((R-(h*(1-m)))*acos(1-m)+R*asin(m)))
%_______________
Em=2*pi*Np*(h)^2
%______________________________________________________________________________
PART1=(Et1*(((S1*cos(Alpha1))-(m*h))/R)+STRp)*(2*pi)*(R-(S1*cos(Alpha1)+(m*h)));
Eint_AB1=int(int((-S1*PART1),S1,(m*h)/cos(Alpha1),h),Alpha1,Alpha01,0)
%________________________________________________________________
PART2=(Et1*((S1*cos(Betta1))/R)+STRp)*(2*pi)*(R-(S1*cos(Betta1)));
Eint_BC1=int(int((-S1*PART2),S1,0,h),Betta1,pi/2,Betta02)
%____________________________________________________________________________________
PART3=(Et1*((((1-m)*h)-S2*cos(Betta2))/R)+STRp)*(2*pi)*(R-(S2*cos(Betta2))-((1-m)*h));
Eint_BC2=int(int((-S2*PART3),S2,0,((1-m)*h)/cos(Betta2)),Betta2,Betta02,0)
%______________________________________________
E_int=Eint_AB1+Eint_BC1+Eint_BC2
the answers that i get from matlab are in the form of integral .the results are as followed:
Eint_AB1 =
int(-(h^2*pi*(m - cos(Alpha1))*(3*Et1*h^2*cos(Alpha1)^3 - 3*Et1*h^2*m^3 - 6*R^2*STRp*cos(Alpha1) - 6*R^2*STRp*m + 2*Et1*R*h*m^2 + 10*R*STRp*h*m^2 - 4*Et1*R*h*cos(Alpha1)^2 + 4*R*STRp*h*cos(Alpha1)^2 + 3*Et1*h^2*m*cos(Alpha1)^2 - 3*Et1*h^2*m^2*cos(Alpha1) + 2*Et1*R*h*m*cos(Alpha1) + 10*R*STRp*h*m*cos(Alpha1)))/(6*R*cos(Alpha1)^2), Alpha1, acos(m), 0)
Eint_BC1 =
(2*STRp*h^3*pi*((1 - (m - 1)^2)^(1/2) - 1))/3 - (2*Et1*h^3*pi*((1 - (m - 1)^2)^(1/2) - 1))/3 + R*STRp*h^2*pi*(pi/2 - acos(1 - m)) - (Et1*h^4*pi*(pi/4 - acos(1 - m)/2 + (m*(1 - (m - 1)^2)^(1/2))/2 - (1 - (m - 1)^2)^(1/2)/2))/(2*R)
Eint_BC2 =
int(-(h^2*pi*(m - 1)^2*(6*R^2*STRp - 3*Et1*h^2 - 3*Et1*h^2*m^2 + 2*Et1*R*h - 10*R*STRp*h + 6*Et1*h^2*m - 2*Et1*R*h*m + 10*R*STRp*h*m))/(6*R*cos(Betta2)^2), Betta2, acos(1 - m), 0)
as you can see the results of Eint_AB1 and Eint_BC2 are in the form of integrals.how can i solve this problem? i need the answers to not be in form of integrals and i want the results of this integrals.what sould i do?
thanks.

댓글을 달려면 로그인하십시오.

채택된 답변

John D'Errico 26 Feb 2021
Just wanting a result from some computation to have an analytical solution is not enough. Sometimes it requires additional mathematics, or a transformation applied. But much of the time, there simply is no analytical solution, no matter how much magic you apply.
If you knew the values of these many constants in there, you could supply them, and then perform a numerical integration, using either vpaintegral or integral. However, as long as there are symbolic, unknown constants involved, it is likely you will find no solution.
So sorry, need is not enough. If it were, many people around the world who were starving would now have full stomachs.

댓글을 달려면 로그인하십시오.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by