djchen93 发表于 2015-10-22 20:33

bvp4c求边值问题,出错,请教各位

本人用bvp4c求解图片中所示边值问题,为何报错:

警告: 不使用 2500 个以上的网格点,无法满足公差要求。
输出参数中提供了最后一个 10000 点网格与解。
最大残差为 1.38873,但所要求的准确度为 0.001。


请教各位,先谢谢了

主程序:solinit = bvpinit(linspace(0,1,10000),[-0.5,0.5,0.5,0.5]);
sol = bvp4c(@fourode,@fourbc,solinit);fourode:
function dydx = fourode(x,y)
dydx = [- y(3);y(1);- y(4);-0.64/(1 - 8*y(2))^2];fourbc:

function res = fourbc(y0,y1)
res = ;

Frank 发表于 2015-10-22 21:17

bvpset
试试降低精度,提高最大网格数看看

NASA 发表于 2015-10-23 09:35

调整初值看看是否能够收敛

djchen93 发表于 2015-10-24 20:56

本帖最后由 djchen93 于 2015-10-24 20:57 编辑

我试着增加网格后该警告就消失了,运行正常,貌似已解决,感谢帮助
页: [1]
查看完整版本: bvp4c求边值问题,出错,请教各位