24小时热门版块排行榜    

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

815292578

木虫 (著名写手)

[求助] Matlab数值求解非线性常微分方程 已有1人参与

现在遇到一个问题:求解非线性微分方程两点边值问题的数值解。如何用Matlab求解?(对matlab不熟悉),文中说采用差分方法将其离散化,然后用Newton迭代求解。可是如何用差分方法离散?如何迭代求解?请大侠指教....

方程为: d/dr(dy/dr)=d/dr(secy)*2/A-B*d/dr(tany/r) (其中,A和B都是常数)
如下图所示:

边值条件是:当r=0时,y=0
                    当r=5时,y=0.2
Matlab数值求解非线性常微分方程
20130831103501088.jpg
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

z65668396

金虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
1592203609: 金币+2, 谢谢回帖 2013-09-05 16:00:29
815292578: 金币+10, 有帮助, 感谢你的回复! 2013-09-05 16:43:55
我最近也在用牛顿迭代解一个非线性方程组
Newton迭代有程序
我拷给你你
编写Newton迭代法的M文件NewtonIterate.如下:
function s=NewtonIterate(x,eps)
%Newton迭代法求非线性方程组
%x为迭代初值,eps为允许误差值
if nargin==1
    eps=1.0e-6;
elseif nargin<1
    error
    return
end  
x1=fx1(x);%非线性方程组
x2=-dfx1(x);%非线性方程组导数
x3=inv(x2);
x0=x3*x1';
while norm(x0)>=eps %循环迭代
      x=x0'+x;
      x1=fx1(x);
      x2=-dfx1(x);
      x3=inv(x2);
      x0=x3*x1';
end
s=x0'+x;
return
例: x1.^2-10x1+x2.^2+b=0
     x1*x2.^2+x1-10x2+8=0
用MATLAB实现,编写非线性方程组的M文件fx1.m如下所示:
   function y=fx1(x)
   y(1)=x(1)*x(1)-10*x(1)+x(2)*x(2)+8;
   y(2)=x(1)*x(2)*x(2)+x(1)-10*x(2)+8;
   y=[y(1) y(2)];
编写非线性方程组导数的M文件dfx1.m
  function y=dfx1(x)
     y(1)=2*x(1)-10;
     y(2)=2*x(2);
     y(3)=x(2)*x(2)+1;
     y(4)=2*x(1)*x(2)-10;
     y=[y(1) y(2);y(3) y(4)];
心有猛虎,细嗅蔷薇。
3楼2013-09-05 11:34:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 6 个回答

815292578

木虫 (著名写手)

没人回复啊,自己顶一个....
2楼2013-09-01 15:10:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

815292578

木虫 (著名写手)

引用回帖:
3楼: Originally posted by z65668396 at 2013-09-05 11:34:17
我最近也在用牛顿迭代解一个非线性方程组
Newton迭代有程序
我拷给你你
编写Newton迭代法的M文件NewtonIterate.如下:
function s=NewtonIterate(x,eps)
%Newton迭代法求非线性方程组
%x为迭代初值,eps为允许 ...

感谢你的回复,本人金币不多,请你见谅。对于上面的非线性常微分方程的求解你有没有建议?我查阅过一些资料,现在没有找到合适的方法求解它,因为将这个方程化简后是
d/dr(dy/dr)=(2/A*sin(y)/cos^2(y)-B/cos^2(y)*1/r)dy/dr+sin(y)/cos(y)*B/r^2
这样一来,dy/dr和最后一项的系数中都含有r和y(自变量和因变量)。如何差分和迭代就不会了。
4楼2013-09-05 16:55:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

z65668396

金虫 (正式写手)

引用回帖:
4楼: Originally posted by 815292578 at 2013-09-05 16:55:26
感谢你的回复,本人金币不多,请你见谅。对于上面的非线性常微分方程的求解你有没有建议?我查阅过一些资料,现在没有找到合适的方法求解它,因为将这个方程化简后是
d/dr(dy/dr)=(2/A*sin(y)/cos^2(y)-B/cos^2(y ...

不好意思啊   
这方面我也不是很懂

我也是解非线性方程遇到问题来求助的
心有猛虎,细嗅蔷薇。
5楼2013-09-05 20:41:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[硕博家园] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +3 LIbGuocjEEYw 2026-08-26 4/200 2026-08-27 02:01 by Ie9AyIAvGbvs
[基金申请] 基金不中,共勉 +5 eulota 2026-08-26 5/250 2026-08-26 23:33 by young90
[基金申请] 国自然面上复盘~欢迎讨论 +4 晴天加油 2026-08-26 5/250 2026-08-26 21:27 by 木风9012
[基金申请] 2026年的国家社科基金项目通讯评审的新规则与新动向、新挑战 +7 process2012 2026-08-23 10/500 2026-08-26 19:23 by hmhminy
[基金申请] 能否退出参与的面上项目解除限项 +23 koalala 2026-08-24 26/1300 2026-08-26 14:29 by 宝贝虫子
[基金申请] 为什么国自然不能直接公布 +4 bjdxyxy 2026-08-26 4/200 2026-08-26 13:12 by qingmu1201
[基金申请] 国际合作可查了,中了面上 +18 Ldrop2023 2026-08-26 18/900 2026-08-26 11:15 by cmrandy
[基金申请] 系统进不去 +4 yanglien 2026-08-26 5/250 2026-08-26 11:10 by wenfengw83
[基金申请] 项目信息和经费信息在系统里都可以看到了 +6 wittyboy 2026-08-26 14/700 2026-08-26 10:55 by wittyboy
[基金申请] 怎么看青基中了没有啊 +4 叶九微 2026-08-26 4/200 2026-08-26 10:52 by xiacongxu
[基金申请] 今天务委会开完了,明天出结果吗 +19 angus9576 2026-08-25 23/1150 2026-08-26 10:03 by zp519
[基金申请] 国合现在查不到了吗? +10 chengyan1220 2026-08-24 20/1000 2026-08-26 08:57 by peasantsprig
[基金申请] 牛来!米来!面来! +8 beefly 2026-08-26 8/400 2026-08-26 08:37 by xuzhipiao
[基金申请] 在坚冰还盖着北海的时候,我看到了怒放的梅花。 (金币+10) +6 ziyangfang 2026-08-25 9/450 2026-08-25 20:26 by huagongfeihu
[基金申请] 今日不放榜?网传国自然预计 8 月 27 日可查结果 +17 医学老男孩 2026-08-20 22/1100 2026-08-25 15:36 by 医学老男孩
[基金申请] 如果此刻你正在为国基感到焦虑,不妨来听听这首《基金之外》 +8 scalable 2026-08-24 8/400 2026-08-25 12:52 by jnhyjjm
[基金申请] 没有任何消息-是不是就凉了 +9 图啦图啦 2026-08-24 10/500 2026-08-25 11:59 by 南海小哥
[教师之家] 导师吐槽:我怎么摊上了这么个极品研究生! +3 苏东坡二世 2026-08-23 3/150 2026-08-25 10:35 by shisan1313
[基金申请] 建议基金发布提前给出明确的时间点 +13 kulium 2026-08-21 16/800 2026-08-24 16:27 by superceng
[教师之家] 跳槽后在研项目怎么办? +5 简单化xn 2026-08-22 10/500 2026-08-23 12:38 by 简单化xn
信息提示
请填处理意见