24小时热门版块排行榜    

查看: 5546  |  回复: 24
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

馨香诺言

新虫 (小有名气)

[求助] matlab求解二阶微分方程 已有3人参与

我想求解这样一个二阶微分方程(下图1),我使用了matlab边值函数,按着书上编写的程序如下(下图2),可为什么求不出来。提示错误:错误使用 bvp4c (line 251)
无法求解排列方程式 - 遇到了奇异性雅可比行列式。
有做过的大神帮忙给看看哪里出错了,不胜感激。

matlab求解二阶微分方程
1.jpg


matlab求解二阶微分方程-1
2.jpg
回复此楼

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : 程序.m
  • 2016-03-26 15:54:55, 561 bytes

» 猜你喜欢

走好每一步!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Mr__Right

专家顾问 (著名写手)

【答案】应助回帖

感谢参与,应助指数 +1
引用回帖:
11楼: Originally posted by 馨香诺言 at 2016-03-28 10:32:51
是一篇中文文献,我上传了,红线标出了求解方程。他不是用边值法,他用的是四阶龙格库塔法。...

用Mathematica求解发现,当前的边值条件下可以得到两个完全符合条件的数值解。

非线性的微分方程其解的唯一性本来就难以确定,这看上去也很正常。这个问题因为简单,所以,两个解容易发现,复杂的问题就难说。

首先要把问题变成初值形式,比如y'[0]=某个给定的值,然后求微分方程,打靶、迭代直至给定的值求出微分方程数值解y[x]中对于的y[1]=1

给定了y'[0]=v 的情况下,求y[1]的函数写成这样:
CODE:
obj[v_] :=
Module[{yy1, y, x},
  yy1[x_] =
   y[x] /. NDSolve[{y''[x] ==
        204/100 (1 - x) (1 + y'[x]^2)^(1/2) + (1 + y'[x]^2)/y[x],
       y[0] == 1, y'[0] == v}, y[x], {x, 0, 2}][[1]];
  yy1[1]
  ]

绘图可以发现,这个函数等于1 (也就是y[1]=1)有两种初值v都能满足条件
matlab求解二阶微分方程-2

这两个初值分别是:
-2.58238958868605

-3.59253658799395

这用牛顿法对上面的函数等于1的方程,从-2 , -4初值出发迭代就可以分别得到
CODE:
FindRoot[obj[x] == 1, {x, -2}, Evaluated -> False]
FindRoot[obj[x] == 1, {x, -4}, Evaluated -> False]

然后可以求两个不同的非线性常微分方程的初值问题得到两个都满足条件的数值解。
matlab求解二阶微分方程-3
文章乃身外之物,要多考虑编辑、审稿人和读者的感受。
13楼2016-03-28 14:00:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 25 个回答

cooooldog

铁杆木虫 (著名写手)

ส็็็

问题可能出在方程的边值条件

方程自己无解。

应该看原始问题的具体背景,方程是如何得到和建立的?尤其两个边值条件?
ส็็็็็็็็็็็็็็็็็็็็
2楼2016-03-26 21:42:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cooooldog

铁杆木虫 (著名写手)

ส็็็

【答案】应助回帖

感谢参与,应助指数 +1
原常微分方程的数值解不唯一,这个问题可以改成初值问题来做。
即,用迭代的方法

y[0]=1;
y'[0]=u ; (设置不同的u,直到得到数值解满足 y[1]=1为止)

得到的满足条件的数值解不唯一。

不过为何边值方法不能求解?这个的确很奇怪。
ส็็็็็็็็็็็็็็็็็็็็
3楼2016-03-27 09:43:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

馨香诺言

新虫 (小有名气)

引用回帖:
3楼: Originally posted by cooooldog at 2016-03-27 09:43:21
原常微分方程的数值解不唯一,这个问题可以改成初值问题来做。
即,用迭代的方法

y=1;
y'=u ; (设置不同的u,直到得到数值解满足 y=1为止)

得到的满足条件的数值解不唯一。

不过为何边值方法不能求解?这 ...

谢谢你的回答,我使用的这个公式是一篇文献上推导出的无量纲方程,我使用边值法一直出错。
你说的初值问题,我一开始想用四阶龙格库塔法求,但当时认为y'(0)不知道,就放弃了。你能详细说一下你指的这个迭代法怎么求吗?
走好每一步!
4楼2016-03-27 11:14:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 生物学调剂 +4 Surekei 2026-03-21 4/200 2026-03-22 07:18 by ilovexiaobin
[考研] 22 350 本科985求调剂,求老登收留 +3 李轶男003 2026-03-20 3/150 2026-03-21 13:28 by 搏击518
[考研] 310求调剂 +3 baibai1314 2026-03-16 3/150 2026-03-21 03:56 by JourneyLucky
[考研] 083200学硕321分一志愿暨南大学求调剂 +3 innocenceF 2026-03-17 3/150 2026-03-21 02:35 by JourneyLucky
[考研] 307求调剂 +10 冷笙123 2026-03-17 10/500 2026-03-21 01:54 by JourneyLucky
[考研] 一志愿华中科技大学,080502,354分求调剂 +5 守候夕阳CF 2026-03-18 5/250 2026-03-21 01:06 by JourneyLucky
[考研] 一志愿重庆大学085700资源与环境专硕,总分308求调剂 +3 墨墨漠 2026-03-18 3/150 2026-03-21 00:39 by JourneyLucky
[考研] 311求调剂 +5 冬十三 2026-03-18 5/250 2026-03-21 00:16 by JourneyLucky
[考研] 南京大学化学376求调剂 +3 hisfailed 2026-03-19 6/300 2026-03-20 23:43 by hisfailed
[考研] 一志愿武理材料工程348求调剂 +3  ̄^ ̄゜汗 2026-03-19 4/200 2026-03-20 21:01 by zhukairuo
[考研] 295复试调剂 +8 简木ChuFront 2026-03-19 8/400 2026-03-20 20:44 by zhukairuo
[考研] 08工学调剂 +5 用户573181 2026-03-20 5/250 2026-03-20 15:47 by xia_2003
[考研] 求调剂 +3 暗涌afhb 2026-03-16 3/150 2026-03-20 00:28 by 河南大学校友
[考研] 一志愿中国海洋大学,生物学,301分,求调剂 +5 1孙悟空 2026-03-17 6/300 2026-03-19 23:46 by zcl123
[考研] 材料与化工求调剂 +7 为学666 2026-03-16 7/350 2026-03-19 14:48 by 尽舜尧1
[考研] 0703化学调剂 +5 pupcoco 2026-03-17 8/400 2026-03-19 13:58 by houyaoxu
[考研] 301求调剂 +4 A_JiXing 2026-03-16 4/200 2026-03-17 17:32 by ruiyingmiao
[考研] 326求调剂 +5 上岸的小葡 2026-03-15 6/300 2026-03-17 17:26 by ruiyingmiao
[考研] 308求调剂 +4 是Lupa啊 2026-03-16 4/200 2026-03-17 17:12 by ruiyingmiao
[考研] 东南大学364求调剂 +5 JasonYuiui 2026-03-15 5/250 2026-03-16 21:28 by 木瓜膏
信息提示
请填处理意见