Warning: Explicit integral could not be found, not taking integral
1 回表示 (過去 30 日間)
古いコメントを表示
May u please find, where i am doing wrong? It is not working...
Warning: Explicit integral could not be found.
It is giving me this error message. It will find firstly Y then , with the result of Y it will find X value...This will be a loop. I wrote where the error is happening .U can see on below %%%%%%Should i take the integral numerically ?
clc;clear all
a =10;
b =10;
h =0.1;
E =210*10^9;
v =0.3;
q=100;
Dp = E*h^3/(12*(1-v^2));
%%%%------------
pi=3.1415926;
syms x
X1 = 1-cos(2*pi*x/a);
p=X1
for i=1:2
dXdxx=diff(p,x,2);
dXdxxxx=diff(p,x,4);
b1= simplify(int(p*dXdxxxx,0,a));
b2= 2*(int(p*dXdxx,0,a));
b3=int(p*p,0,a);
bv= int(p*(q/Dp),0,a)
k1=b1;
k2=b2;
k3=b3;
kv=bv;
syms y %d1 d2 d3 d4 h1 h2 h3 hv
denk1='k1*Y+k2*D2Y+k3*D4Y-kv=0'
bs1='Y(0)=0,DY(0)=0,Y(10)=0,Y(10)=0,DY(10)=0','y';
Y1=dsolve(denk1,bs1,'y');
m=Y1
dYdyy = diff(m,y,2);
dYdyyyy = diff(m,y,4);
%%%%error is happening in there. It is not taking integral of function. And also function is including k1,k2,k3... insteading of showing me the integers of k1 k2 k3... Because k1 k2 k3 they are already integers...But i am seeing symbolic .For example dYdyyyy , it is taking diferantial with symbolicly. When i copy and paste the result on a below line, it is giving me integer values of k1 k2 k3....in dYdyyyy(for example)
d1 = int(m*m,0,10);
d2 = 2*(int(m*dYdyy,0,b));
d3 = int(m*dYdyyyy,0,b);
dv = int(m*(q/Dp),0,b);
h1=d1;
h2=d2;
h3=d3;
hv=dv;
A=dsolve('h1*D4X+h2*D2X+h3*D4X-hv=0','X(0)=0','DX(0)=0','X(10)=0','DX(10)=0','x');
p=A
end
Xson=p
Yson=m
function w=fin(x,y)
w=p*m
end
0 件のコメント
採用された回答
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Calculus についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!