Добрый день, уважаемые коллеги,
передо мной стоит задача решения дифференциального уравнения (бесселя) с последующим интегрированием полученных результатов. Задачка решалась в матлабе. Использовал для решения диф. ур. dsolve - вроде без проблем получилось, но при интегрировании полученные результаты не становятся числовыми, как я понимаю, решение остаётся символьным. В матлабе новичок, использую его как калькулятор. Текст программы такой:
clear all close all clc format syms E0 unreal syms r a b c unreal
f=0.01; Edef=450.4; fef=f/0.34; hdef=0.9; hd=0.34*hdef;
pd=1;
hm=(hd/f)-hd; Em = 3.8; num=0.4; Gm = Em/(2+2*num);
pm=1; p=1; y1=1; x1=1;
Ed=(Em*(1-fef)-Em*(1-f)+Edef*fef)/f; nud=0.45; Gd = Ed/(2+2*nud);
ld=150 ;
[R1m, R1d]=dsolve('(r^2)*D2R1d+r*DR1d-(r^2)*((12*Ed*R1d/(Gd*(ld^2)))+12*pd/(Gd*(ld^2)))' , '(r^2)*D2R1m+r*DR1m-(r^2)*((12*Em*R1m/(Gm*(ld^2)))+12*pm/(Gm*(ld^2)))' , 'R1d(hd)=R1m(hd)' , 'Gm*DR1m(hd)=Gd*DR1d(hd)')
Ad=sym('R1d*r'); Am=sym('R1m*r');
U1=pi*ld*p*(int(Ad, r, a, b)+int(Am, r, b, c));
U=subs(U1, {a,b,c}, {(0), (hd), (hd+hm)})
U0=(1/2)*ld*(hd+hm)*(p^2)/E0; Eq5=U-U0; Eeqv1=solve(Eq5,E0)
Вопрос в следующем:как в решении вместо символа получить число, в чём у меня ошибка?
|