MATLAB求解微分方程问题

来源:百度知道 编辑:UC知道 时间:2024/05/04 19:07:04
微分方程为
y'=[tan(b)*y-x]/[tan(b)*x+y] 有边界条件x=0时y=0
请高手指导!
主要是要把y’=f(x)表示出来
谢谢高等数学答案,边界条件是我写错了,x=-h 时y=-k
tan(b)为什么能等效成b??
还有最主要的问题是,我想要得到y'=f(x)的表达式
请高手指导啊!!

%dsolve默认自变量为t
y=dsolve('Dy=(tan(b)*y-t)/(tan(b)*t+y)','y(-h)=-k')
dy=diff(y,'t')
dy=subs(dy,'t','x')
dy=simplify(dy)

结果:
y =

RootOf(log((t^2+_Z^2)/t^2)+2*tan(b)*atan(_Z/t)+2*log(t)-log((h^2+k^2)/h^2)-2*tan(b)*atan(k/h)-2*log(-h))

dy =

(-(2/t-2*(t^2+RootOf(log((t^2+_Z^2)/t^2)+2*tan(b)*atan(_Z/t)+2*log(t)-log((h^2+k^2)/h^2)-2*tan(b)*atan(k/h)-2*log(-h))^2)/t^3)/(t^2+RootOf(log((t^2+_Z^2)/t^2)+2*tan(b)*atan(_Z/t)+2*log(t)-log((h^2+k^2)/h^2)-2*tan(b)*atan(k/h)-2*log(-h))^2)*t^2+2*tan(b)*RootOf(log((t^2+_Z^2)/t^2)+2*tan(b)*atan(_Z/t)+2*log(t)-log((h^2+k^2)/h^2)-2*tan(b)*atan(k/h)-2*log(-h))/t^2/(1+RootOf(log((t^2+_Z^2)/t^2)+2*tan(b)*atan(_Z/t)+2*log(t)-log((h^2+k^2)/h^2)-2*tan(b)*atan(k/h)-2*log(-h))^2/t^2)-2/t)/(2*RootOf(log((t^2+_Z^2)/t^2)+2*tan(b)*atan(_Z/t)+2*log(t)-log((h^2+k^2)/h^2)-2*tan(b)*atan(k/h)-2*log(-h))/(t^2+RootOf(log((t^2+_Z^2)/t^2)+2*tan(b)*atan(_Z/t)+2*log(t)