24小时热门版块排行榜    

CyRhmU.jpeg
查看: 2648  |  回复: 21

shengjunjie

木虫 (正式写手)

[求助] 如何求解描述振动的二阶微分方程

那位大侠给看看这种描述振动的二阶微分方程,困扰我一阵子了

其中C1=0.08;C2=2.3;e=0.3*(sin(335*t))^2
如何根据上面的公式求解λ和时间的关系,用matlab画出类似下面的图形
回复此楼

» 猜你喜欢

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

好好学习,多运动,多发Paper...
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

dbb627

荣誉版主 (著名写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
shengjunjie: 金币+10, ★★★很有帮助 2012-04-17 09:35:06
臭水沟: 金币+1, 谢谢交流~~ 2012-04-17 10:11:24
引用回帖:
5楼: Originally posted by shengjunjie at 2012-04-16 20:54:38:
画出来了,如下图,你好,能否赐教如何画振幅,还有,我该如何给你赠送金币呢
ec/75/988929_1334580862_122.jpg

做下傅立叶变化画出幅频曲线求相应频率的振幅
The more you learn, the more you know, the more you know, and the more you forget. The more you forget, the less you know. So why bother to learn.
6楼2012-04-16 20:56:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

dbb627

荣誉版主 (著名写手)

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
臭水沟: 金币+2, 谢谢交流~~ 2012-04-16 15:55:10
需要给初值条件
假设λ(0)=0.1 一阶导初值为0.01,
odefun=@(t,x)[x(2);3*x(2)./(2*x(1)*(1+0.08*x(1).^3))-2.3*(x(1).^4-x(1)+0.3*(sin(335*t)).^2)./(1+0.08*x(1).^3)];
[t,x]=ode45(odefun,[0 1],[0.1 0.01]);
plot(t,x(:,1))
The more you learn, the more you know, the more you know, and the more you forget. The more you forget, the less you know. So why bother to learn.
2楼2012-04-16 15:02:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

shengjunjie

木虫 (正式写手)

引用回帖:
2楼: Originally posted by dbb627 at 2012-04-16 15:02:28:
需要给初值条件
假设λ(0)=0.1 一阶导初值为0.01,
odefun=@(t,x);
=ode45(odefun,,);
plot(t,x(:,1))

非常感谢。你好,我今天下午用了一个类似的方法计算出来了。忘记写初始条件了,λ(0)=1,λ(0)的导数为0.
你知道怎么根据这个方程求振幅不:其中C1=0.08;C2=1.342*10^7;e=9.23*(sin(2*pi*f*t))^2.
好好学习,多运动,多发Paper...
3楼2012-04-16 20:34:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

shengjunjie

木虫 (正式写手)

引用回帖:
2楼: Originally posted by dbb627 at 2012-04-16 15:02:28:
需要给初值条件
假设λ(0)=0.1 一阶导初值为0.01,
odefun=@(t,x);
=ode45(odefun,,);
plot(t,x(:,1))

非常感谢你的答复,太好啦。

下面是初始条件和各个参数

怎么根据他们求振幅
好好学习,多运动,多发Paper...
4楼2012-04-16 20:43:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

shengjunjie

木虫 (正式写手)

引用回帖:
2楼: Originally posted by dbb627 at 2012-04-16 15:02:28:
需要给初值条件
假设λ(0)=0.1 一阶导初值为0.01,
odefun=@(t,x);
=ode45(odefun,,);
plot(t,x(:,1))

画出来了,如下图,你好,能否赐教如何画振幅,还有,我该如何给你赠送金币呢
好好学习,多运动,多发Paper...
5楼2012-04-16 20:54:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

shengjunjie

木虫 (正式写手)

引用回帖:
6楼: Originally posted by dbb627 at 2012-04-16 20:56:55:
做下傅立叶变化画出幅频曲线求相应频率的振幅

你好,该如何做傅里叶变换,直接针对求出的lambda,还是怎么样,能否给个基本的程序,感谢啦
好好学习,多运动,多发Paper...
7楼2012-04-17 09:36:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dbb627

荣誉版主 (著名写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
shengjunjie: 金币+10, ★★★很有帮助 2012-04-17 10:23:04
xiegangmai: 金币+1, 谢谢参与! 2012-04-17 12:48:56
引用回帖:
5楼: Originally posted by shengjunjie at 2012-04-16 20:54:38:
画出来了,如下图,你好,能否赐教如何画振幅,还有,我该如何给你赠送金币呢
ec/75/988929_1334580862_122.jpg

把你画这个图的代码,贴一下,由于你的条件没有给f,我画不出这样的图
得到数据后,我可以给你做下fourier分析
The more you learn, the more you know, the more you know, and the more you forget. The more you forget, the less you know. So why bother to learn.
8楼2012-04-17 10:16:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

shengjunjie

木虫 (正式写手)

引用回帖:
6楼: Originally posted by dbb627 at 2012-04-16 20:56:55:
做下傅立叶变化画出幅频曲线求相应频率的振幅

你好,这样编程对不对
%其中lambda(0)=1,D(lambda(0))=0
odefun=@(t,x)[x(2);3*x(2).^2/(2*x(1)*(1+0.08*x(1).^3))-1.342*10^7*(x(1).^4-x(1)+(61.98/6.71)*(0.185*sin(2*pi*335*t)).^2)./(1+0.08*x(1).^3)];
[t,x]=ode45(odefun,[0 0.06],[1 0]);% 自变量的范围和初始值
figure(1);
plot(t,x(:,1))
figure(2);
y=fft(x(:,1));
plot(abs(y)); % 画幅频曲线
figure(3);
plot(angle(y)); % 画相频曲线

在你的基础上直接加了这句话,
figure(2);
y=fft(x(:,1));
plot(abs(y)); % 画幅频曲线
figure(3);
plot(angle(y)); % 画相频曲线

这样的结果好像不对
但是函数中的2*pi*f=335是固定的
好好学习,多运动,多发Paper...
9楼2012-04-17 10:21:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

shengjunjie

木虫 (正式写手)

引用回帖:
8楼: Originally posted by dbb627 at 2012-04-17 10:16:54:
把你画这个图的代码,贴一下,由于你的条件没有给f,我画不出这样的图
得到数据后,我可以给你做下fourier分析

频率f的范围是0-1000hz
好好学习,多运动,多发Paper...
10楼2012-04-17 10:22:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 shengjunjie 的主题更新
信息提示
请填处理意见