查看: 201|回复: 9|关注: 0

[已解决] 用matlab数值求解下面微分方程组

[复制链接]

新手

14 麦片

财富积分


050


3

主题

10

帖子

0

最佳答案
1593505829(1).jpg
function dy=qwer1234567(t,y)
dy=zeros(2,1);        %y1代表q1 ,y2代表q2
global F k2 k1 c
%可以改变的参数值
k1=0.2;
k2=0.9;
c=0.2;
F=5*sin(1.1*t);
dy(1)=-(k1/c)*y(1)+(F/c)+dy(2);
dy(2)=-(k2/c)*y(2)+dy(1);
end


for i=1:100
tt=1;
[~,y]=ode45(@qwer1234567,0:tt/20:5*tt,[0,0]);
end;

这是我照网上求解微分方程组写的,其中dy(1)是通过第一个方程得到的。觉得这个不太对,因为假如dy(1)是通过第二个方程得到后算的结果与之前算的结果不一样啊。不清楚该如何算了。    其中这个方程组是两个自由度的耗散系统的方程

回复主题 已获打赏: 0 积分

举报

论坛优秀回答者

中级

1193 麦片

财富积分


5001500


0

主题

2757

帖子

256

最佳答案
  • 关注者: 170
发表于 6 天前 | 显示全部楼层 |此回复为最佳答案
是隐式形式的微分方程求解问题了吧,用1stOpt试了下:

  1. Constant k1=0.2, k2=0.9, c=0.2, tt=1;
  2. ConstStr F=5*sin(1.1*t);
  3. Variable t=[0:tt/20:5*tt],y1=0,y2=0;
  4. Plot t[x],y1,y2[y2];
  5. ODEFunction
  6. y1'=-(k1/c)*y1+(F/c)+y2';
  7. y2'=-(k2/c)*y2+y1';

复制代码


p4.jpg
回复此楼 已获打赏: 2 积分

举报

新手

14 麦片

财富积分


050


3

主题

10

帖子

0

最佳答案
 楼主| 发表于 5 天前 | 显示全部楼层
shihe 发表于 2020-6-30 22:18
是隐式形式的微分方程求解问题了吧,用1stOpt试了下:

非常感谢shihe的回答。现在还有个问题,怎么才能把y1,y2和t导出来了。我在使用手册上没有找到。希望能够解决
回复此楼 已获打赏: 0 积分

举报

论坛优秀回答者

中级

1193 麦片

财富积分


5001500


0

主题

2757

帖子

256

最佳答案
  • 关注者: 170
发表于 5 天前 | 显示全部楼层
直接有输出结果的,没有贴出而已。
回复此楼 已获打赏: 0 积分

举报

新手

14 麦片

财富积分


050


3

主题

10

帖子

0

最佳答案
 楼主| 发表于 5 天前 | 显示全部楼层
直接输出的结果就是这个吧。我是想把结果导出到excel表。在这里的结果不能被复制是不是由于我用的是试用版的软件 1593581909(1).jpg
回复此楼 已获打赏: 0 积分

举报

新手

14 麦片

财富积分


050


3

主题

10

帖子

0

最佳答案
 楼主| 发表于 5 天前 | 显示全部楼层
shihe 发表于 2020-7-1 09:45
直接有输出结果的,没有贴出而已。

大神,我是想把结果导出到excel表中,这个可以实现吗
回复此楼 已获打赏: 0 积分

举报

论坛优秀回答者

中级

1193 麦片

财富积分


5001500


0

主题

2757

帖子

256

最佳答案
  • 关注者: 170
发表于 5 天前 | 显示全部楼层
都可以的

新手

14 麦片

财富积分


050


3

主题

10

帖子

0

最佳答案
 楼主| 发表于 5 天前 | 显示全部楼层

那是如何导出的,求告知
回复此楼 已获打赏: 0 积分

举报

论坛优秀回答者

中级

1193 麦片

财富积分


5001500


0

主题

2757

帖子

256

最佳答案
  • 关注者: 170
发表于 5 天前 | 显示全部楼层
nnn17901 发表于 2020-7-1 13:48
直接输出的结果就是这个吧。我是想把结果导出到excel表。在这里的结果不能被复制是不是由于我用的是试用版 ...

版本有问题吧,Min. Value对应的那一列数据应该趋于0才对。
p4.jpg
回复此楼 已获打赏: 0 积分

举报

新手

14 麦片

财富积分


050


3

主题

10

帖子

0

最佳答案
 楼主| 发表于 4 天前 | 显示全部楼层
shihe 发表于 2020-7-1 23:19
版本有问题吧,Min. Value对应的那一列数据应该趋于0才对。

大神我下载的几个1stOpt只能打开那个不对的版本。能不能帮我跑一下。我一共需要4种情况,在我新开的令一个贴中有说明,其中取样频率是0.001
回复此楼 已获打赏: 0 积分

举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

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