数值计算杜哈梅积分

        结构动力学的大作业。记录下。

        给出如下系统:

        其中,F(t)为一个复杂激励。该系统的运动方程为:

        选取如下F(t)随时间变化的规律。

        杜哈梅积分是h(t)和F(t)的卷积。h(t)的表达形式为:

         为便于计算,可以将杜哈梅积分写成如下形式:

           如果用矩阵来表达的话,可以写作:

         其中,H矩阵由h矩阵倒序得到。

         因此可以写出matlab代码:

t=linspace(0,100,1001);
x=zeros(1,1001);
F_t=6*sin(0.5*t)+5.5*sin(3.6*t/2)+7.6*sin(-2.3*t/2)+4.4*sin(-1.1*t);
h=exp(-0.5*10*t).*sin(8.66*t)/8.66;
for i =1:1001
    x(1,i)=sum(flip(h(1:i)).*F_t(1:i));
end
plot(t,x(1,:),t,F_t(1,:)/5,'linewidth',1.2);
legend('X=X(t)单位:m','F=F(t),单位:5N');

         最终结果:

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值