matlab里面Conversion to double from sym is not possible.怎么回事啊?求大神y=dsolve('D2y+y=sin(t) * cos(30)','t') plot(y)结果提示Conversion to double from sym is not possible. 这是怎么回事 求大神
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/17 08:28:21
![matlab里面Conversion to double from sym is not possible.怎么回事啊?求大神y=dsolve('D2y+y=sin(t) * cos(30)','t') plot(y)结果提示Conversion to double from sym is not possible. 这是怎么回事 求大神](/uploads/image/z/13802086-46-6.jpg?t=matlab%E9%87%8C%E9%9D%A2Conversion+to+double+from+sym+is+not+possible.%E6%80%8E%E4%B9%88%E5%9B%9E%E4%BA%8B%E5%95%8A%3F%E6%B1%82%E5%A4%A7%E7%A5%9Ey%3Ddsolve%28%27D2y%2By%3Dsin%28t%29+%2A+cos%2830%29%27%2C%27t%27%29+plot%28y%29%E7%BB%93%E6%9E%9C%E6%8F%90%E7%A4%BAConversion+to+double+from+sym+is+not+possible.+%E8%BF%99%E6%98%AF%E6%80%8E%E4%B9%88%E5%9B%9E%E4%BA%8B+%E6%B1%82%E5%A4%A7%E7%A5%9E)
matlab里面Conversion to double from sym is not possible.怎么回事啊?求大神y=dsolve('D2y+y=sin(t) * cos(30)','t') plot(y)结果提示Conversion to double from sym is not possible. 这是怎么回事 求大神
matlab里面Conversion to double from sym is not possible.怎么回事啊?求大神
y=dsolve('D2y+y=sin(t) * cos(30)','t')
plot(y)
结果提示Conversion to double from sym is not possible.
这是怎么回事 求大神
matlab里面Conversion to double from sym is not possible.怎么回事啊?求大神y=dsolve('D2y+y=sin(t) * cos(30)','t') plot(y)结果提示Conversion to double from sym is not possible. 这是怎么回事 求大神
1、出错的原因是,使用dsolve求解微分方程,得到的是解析解,具体形式为一个符号表达式,不能直接用plot画图.
2、按你现在的写法,没有指定初始条件,得到的结果里面有C1、C2这样的常数,是无法绘图的.应按照类似下面的方式指定初值:
y=dsolve('D2y+y=sin(t) * cos(30)','y(0)=1,Dy(0)=2','t')其中的'y(0)=1,Dy(0)=2'分别指定y和y'在t=0时刻的值.
3、指定初值之后求解微分方程,得到的结果可以先指定t为一个时间向量,然后用subs代入t,然后用plot绘图.更简单的做法是用ezplot函数:
ezplot(y,[0 10])其中[0 10]为指定的时间范围,可根据需要自行修改.