results are Fractional and long

조회 수: 2 (최근 30일)
sajjad barzigar
sajjad barzigar 2021년 2월 26일
댓글: John D'Errico 2021년 2월 26일
i wrote this code:
clc
clear all
close all
%--------------------------------------------------------------------------
syms Alpha1 Betta2 Betta1 S1 S2 h q S
t=2;
R=27;
H=96;
h=13;
STRp=3.7;
STRy=360;
STRu=760;
Etta=0.75;
K=0.14;
n=1;
m=0.65;
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)*STRp*2*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=(STRp)*(2*pi)*(R);
Eint_AB1=int(int(-S1*PART1,S1,(m*h)/cos(Alpha1),h),Alpha1,acos(m),0)
PART2=(STRp)*(2*pi)*(R);
Eint_BC1=int(int((-S1*PART2),S1,0,h),Betta1,pi/2,acos(1-m))
PART3=(STRp)*(2*pi)*(R);
Eint_BC2=int(int((-S2*PART3),S2,0,((1-m)*h)/cos(Betta2)),Betta2,acos(1-m),0)
E_int=Eint_AB1+Eint_BC1+Eint_BC2
some of the results that matlab gives me are fractional and matlab will not solve them and show the result number, instead gives me some long answers
answers:
Eint_AB1 =
-(168831*pi*(95138542128201728*tan(7775121492917933/9007199254740992) - 194378037322948325))/2251799813685248000
Eint_BC1 =
(168831*pi*(pi/2 - 5463880662892063/4503599627370496))/10
Eint_BC2 =
(8272719*pi*tan(5463880662892063/4503599627370496))/4000
how can i simplify this results and find the final answer in a simpler form?

채택된 답변

Stephan
Stephan 2021년 2월 26일
double(Eint_AB1)
  댓글 수: 1
John D'Errico
John D'Errico 2021년 2월 26일
Or if you want a solution in the form of a symbolic number, but still in a long precision result, then
vpa(Eint_AB1)

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Number Theory에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by