声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 3025|回复: 11

[编程技巧] [求助]哪位有杜芬方程和范德波方程的matlab实现程序

[复制链接]
发表于 2006-3-12 19:23 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
rt,急求,请好心人发到我油箱里:sun20022727@56.com
小生在此先谢过了!
回复
分享到:

使用道具 举报

发表于 2006-3-12 19:26 | 显示全部楼层
参考ode45的例子,自己写一下,很方便的
发表于 2006-3-13 07:23 | 显示全部楼层
可以采用保辛的摄动方法,参考钟万勰院士最近一两年的文章。计算精度非常高
 楼主| 发表于 2006-3-13 10:40 | 显示全部楼层
可以采用保辛的摄动方法,参考钟万勰院士最近一两年的文章。计算精度非常高


这一方面我实在是个外行,请问能否给指点一下文章名字,先谢过了!
 楼主| 发表于 2006-3-15 10:11 | 显示全部楼层
继续求助,哪位能把杜芬方程的M文件上传一下??<BR>多谢了
发表于 2006-3-16 10:25 | 显示全部楼层
  1. % Duffing方程仿真图==相轨迹图
  2. % 方程在duffing.m文件中定义
  3. [t,x]=ode45(@duffing,[0,2800],[0,1.5]);
  4. x1=x(:,1);
  5. x2=x(:,2);
  6. x1=mod(x1,2*pi);
  7. x1(x1>pi)=x1(x1>pi)-2*pi;
  8. figure
  9. h=plot(x1,x2)

  10. %%%%%%%%%% 以下部分定义Duffing方程,此文件另存为duffing.m
  11. function dx=duffing(t,x)
  12. % 定义达芬Duffing方程:
  13. % diff(x,2)+mu*diff(x,1)-x+x^3=F*cos(w*t)
  14. mu=0.1;
  15. F=2.09;
  16. w=0.5;
  17. dx=[x(2);F*cos(w*t)-mu*x(2)+x(1)-x(1).^3];
复制代码
发表于 2006-3-16 16:30 | 显示全部楼层
上面的程序中ode45是不是要改成ode15s,达分方程是刚性方程,而解刚性方程要用ode15s。不知道对不对!
发表于 2006-3-16 21:04 | 显示全部楼层
你可以看看《时间有限元与保辛》这篇文章,是钟院士2005年发表在《机械强度》上的一篇文章。里面专门讲到求解duffing方程的例子了。
发表于 2006-3-17 07:25 | 显示全部楼层

回复:(jumpwolf)ode45还是ode15s?

  1. 上面的程序中ode45是不是要改成ode15s,达分方程是刚性方程,而解刚性方程要用ode15s。不知道对不对!
复制代码

就是ode45,上述方程并不是刚性的
发表于 2006-3-17 15:18 | 显示全部楼层
恩,是的。
但是我用ode45和ode15s得到的结果是一样的。是不是ode15s的适用面更广一点,他的精度是几阶的?
发表于 2006-3-17 15:42 | 显示全部楼层

回复:(jumpwolf)恩,是的。但是我用ode45和ode15s得...

恩,是的。
但是我用ode45和ode15s得到的结果是一样的。是不是ode15s的适用面更广一点,他的精度是几阶的?


一般用的都是ode45,如果ode45失败可以用ode15s参试求解
ode15s采用的是多步法是一种变阶法
 楼主| 发表于 2006-3-19 12:00 | 显示全部楼层
谢谢楼上各位的帮忙,谢谢!
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-6-17 07:42 , Processed in 0.059031 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表