找回密码
 注册
关于网站域名变更的通知
查看: 515|回复: 3
打印 上一主题 下一主题

求解二阶微分方程

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-2-26 15:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
求解二阶微分方程v=1.33*0.5*(dv/dx)^2./[k-1.01*d(dv/dx)/dx],其中k是时变项,是一系列数据集,我用的ode45,代码如下:clear;clc% l* }6 w  @) e- \' F
E=xlsread('jisuan.xlsx');; |/ ?3 m; m- P! W1 N
x=E(:,1);       %位移,间隔为0.01
6 _. Y" _: k1 Y5 j* ?; C; N; j8 gy=E(:,2);       %作用力* }  W# ^6 Y4 N' n+ n
k=E(:,3);       %刚度) g5 j' t: B/ n0 x8 g
m=length(k);
! P0 I3 Y6 j3 Y& R) Z( ~* q4 Xfor i=1:length(k)$ k6 m# H: u+ E
K=k(i);
/ m: v( ]" \, ^$ v- ztspan=x;
4 X$ r0 }/ ^7 C9 [, m2 ^) |% Zodefun=@(x,v)[v(2);(k(i)/1.01-(1.33*0.5*(v(2)^2)/(v(1)*0.5)))];$ ^4 K* ~, H5 F! Y% |$ x
[x,v]=ode45(odefun,tspan,[0.0096 0.042]);) `" `6 j: k5 m( s4 r) ~: L
A=[x,v]* r! a! g) ?0 h( q) w
end) i6 F7 T7 Q; x
但是结果是多个k对应的一系列v(1)v(2),我希望得到的是已知初值后各个k对应的v(1)v(2),看help也没有弄明白,还试过interp1调用和定义函数也报错了,请教各位这种有时变项的二阶微分方程要怎么求?是for循环吗还是有其他方法?
# V6 N' ]1 a1 U+ F1 ~6 ?6 Y2 p: Y- W4 g* b: S- }

该用户从未签到

2#
发表于 2021-2-26 16:00 | 只看该作者
帮你顶一下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-10-6 11:17 , Processed in 0.125000 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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