声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2246|回复: 10

[分形与混沌] 请教用荣格库塔法解结构振动微分方程,程序问题,结果不正确

[复制链接]
发表于 2011-3-7 11:06 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 huazi071783 于 2011-3-7 16:23 编辑

用荣格-库塔发解结构振动微分方程,Mx''+cx'+kx=F(t),我设激振力为正弦周期力F(t)=f*cos(omeg*t),变化后:x'=y;dy=-(c./m)*y-(k./m)*x+F(t);求解后画出结果的相轨迹图,但是得到的结果矩阵y的第一列全为零,第二列是周期值看似正确,为什么第一列为零呢?这结果不对啊!不知道什么原因,请高手解答,谢谢!
clear;clc
global m omeg k c f
m=0.5;                 %质量
c=0.2;                   %阻尼
k=1;                      %刚度
omeg=6.3;
f=5;
x0=[0;0];               %初始值
tspan=[0:0.01:100];
[t,y]=ode45('vibration',tspan,x0);      %y为结果矩阵
plotmatrix (y);  figure(gcf)
figure(2)
plot(y(:,1),y(:,2))                %相轨迹图

调用结构振动函数
function dy=vibration(t,y)
global m omeg k c f
dy=[y(1);-(c./m)*y(2)-(k./m)*y(1)+f*cos(omeg*t)];
回复
分享到:

使用道具 举报

 楼主| 发表于 2011-3-7 13:56 | 显示全部楼层
本来得到的结果y(:,1)应该是周期震荡值,但是结果全是0,怎么解释呢?
发表于 2011-3-7 23:00 | 显示全部楼层
回复 2 # huazi071783 的帖子

应该是初值的问题吧,你用[0.1,0]试试
 楼主| 发表于 2011-3-8 10:20 | 显示全部楼层
回复 3 # hsfy919 的帖子

主任啊,我已经试过了,y(:,1)是单调递增的,也不是震荡值,不对啊,晕了
 楼主| 发表于 2011-3-8 16:38 | 显示全部楼层
还没有解决,高手帮我看看是什么问题
发表于 2011-3-9 18:45 | 显示全部楼层
本帖最后由 hsfy919 于 2011-3-9 18:45 编辑

回复 5 # huazi071783 的帖子

是你的方程输错了“dy=[y(2);-(c./m)*y(2)-(k./m)*y(1)+f*cos(omeg*t)];”,再检查一下
 楼主| 发表于 2011-3-10 08:57 | 显示全部楼层
回复 6 # hsfy919 的帖子

谢谢主任,这样写的确结果不为0了,我这个是故意这样写的,在方程中y(2)代表的是x',y(1)代表的是原方程的x,如果结果写成dy=[y(2);-(c./m)*y(2)-(k./m)*y(1)+f*cos(omeg*t)]时得到的结果第一列应该是x’,第二列应该是dx'也就是dy。如果结果写成dy=[y(1);-(c./m)*y(2)-(k./m)*y(1)+f*cos(omeg*t)],结果第一列应该是x,第二列应该是dy。不知道是不是这样?我是想输出解方程后x的值,然后再求一次解出y值,这样可作出相轨迹图来。呵呵,指教
发表于 2011-3-10 10:39 | 显示全部楼层
回复 7 # huazi071783 的帖子

不是的,利用龙格-库塔方法求出的数值解是对y的迭代,其结果是[y(1);y(2)]的排列,直接就能画相轨迹图
 楼主| 发表于 2011-3-10 13:29 | 显示全部楼层
回复 8 # hsfy919 的帖子

还是没有明白,结构振动响应应该是x的时间序列,相轨迹也应该是基于x时间序列得出。用龙格-库塔发求解得到的结果,像你说的那样按[y(1),y(2)]排列,那么这结果各代表什么?第一列y(1)是y,也就是x'?y(2)是dy?还是第二列y(2)是基于y(1)重构后的时间延迟后的y值?我看了matlab的help也没明白,呵呵,谢主任
发表于 2011-3-10 20:07 | 显示全部楼层
回复 9 # huazi071783 的帖子

我习惯把未知量用y表示,第一列是y(1)(也就是x),第二列是y(2)(也就是x'),没有dy。
 楼主| 发表于 2011-3-10 21:49 | 显示全部楼层
回复 10 # hsfy919 的帖子

主任,非常感谢,终于弄懂了
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-12-19 12:05 , Processed in 0.083898 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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