登录论坛

查看完整版本 : [求助]matlab计算步长出错


kornberg
2009-01-15, 19:35
matlab计算步长出错

错误提示:
Warning: Failure at t=6.768651e-010. Unable to meet integration tolerances without reducing the step size below the smallest value allowed (1.654361e-024) at time t.
> In ode45 at 378

计算到此中止,不再继续了

用ode45求解微分方程,尺度较小,在纳米尺度。
我再matlab的ode45源程序中修改hmin值没有效果。


请问:
在哪里修改步长???


PS:我前几天做的计算没有出错,今天新搞一个出错后,以前可以计算的那个也出错了。

cui281
2009-02-23, 15:46
我不敢保证能够解决你的问题,如果你是用silulink做仿真的话,你可以试着修改一下simulation-configuration parameters-solveroptions-zero crossing control下面的三个选项,如果选择disable all可能不会出现这个问题。但是结果有些差异。可以试一试。我在仿真中也遇到了这个问题不知道是不是和你情况相同。