用matlab编程实现法计算多自由度体系的动力响应样本.docx
- 文档编号:28516764
- 上传时间:2023-07-18
- 格式:DOCX
- 页数:7
- 大小:91.01KB
用matlab编程实现法计算多自由度体系的动力响应样本.docx
《用matlab编程实现法计算多自由度体系的动力响应样本.docx》由会员分享,可在线阅读,更多相关《用matlab编程实现法计算多自由度体系的动力响应样本.docx(7页珍藏版)》请在冰豆网上搜索。
用matlab编程实现法计算多自由度体系的动力响应样本
《结构动力学》作业
用matlab编程实现
法计算多自由度体系的动力响应
姓名:
学号:
班级:
专业:
用matlab编程实现
法
计算多自由度体系的动力响应
一、
法的基本原理
Newmark-法是一种逐步积分的方法,避免了任何叠加的应用,能很好的适应非线性的反应分析。
Newmark-法假定:
(1-1)
(1-2)
式中,和是按积分的精度和稳定性要求进行调整的参数。
当=0.5,=0.25时,为常平均加速度法,即假定从t到t+t时刻的速度不变,取为常数
。
研究表明,当≥0.5,≥0.25(0.5+)2时,Newmark-法是一种无条件稳定的格式。
由式(2-141)和式(2-142)可得到用
及
表示的
表示式,即有
(1-3)
(1-4)
考虑t+t时刻的振动微分方程为:
(1-5)
将式(2-143)、式(2-144)代入(2-145),得到关于ut+t的方程
(1-6)
式中
求解式(2-146)可得
然后由式(2-143)和式(2-144)可解出
和
。
由此,Newmark-法的计算步骤如下:
1.初始计算:
(1)形成刚度矩阵[K]、质量矩阵[M]和阻尼矩阵[C];
(2)给定初始值
和
;
(3)选择积分步长t、参数、,并计算积分常数
;
(4)形成有效刚度矩阵
;
2.对每个时间步的计算:
(1)计算t+t时刻的有效荷载:
(2)求解t+t时刻的位移:
(3)计算t+t时刻的速度和加速度:
Newmark-方法是一种无条件稳定的隐式积分格式,时间步长t的大小不影响解的稳定性,t的选择主要根据解的精度确定。
二、本文用
法计算的基本问题
四层框架结构在顶部受一个简谐荷载
的作用,力的作用时间
=5s,计算响应的时间为100s,分步完成。
阻尼矩阵由Rayleigh阻尼构造。
具体数据如下图:
图一:
结构基本计算简图
三、计算
法的源程序
m=[1,2,3,4];
m=diag(m);
k=[800-80000;
-8002400-16000;
0-16004800-3200;
00-32008000];
c=0.05*m+0.02*k;
f0=100;
t1=5;
nt=;
dt=0.01;
alfa=0.25;
beta=0.5;
a0=1/alfa/dt/dt;
a1=beta/alfa/dt;
a2=1/alfa/dt;
a3=1/2/alfa-1;
a4=beta/alfa-1;
a5=dt/2*(beta/alfa-2);
a6=dt*(1-beta);
a7=dt*beta;
d=zeros(4,nt);
v=zeros(4,nt);
a=zeros(4,nt);
fori=2:
nt
t=(i-1)*dt;
if(t ke=k+a0*m+a1*c; fe=f+m*(a0*d(: i-1)+a2*v(: i-1)+a3*a(: i-1))+c*(a1*d(: i-1)+a4*v(: i-1)+a5*a(: i-1)); d(: i)=inv(ke)*fe; a(: i)=a0*(d(: i)-d(: i-1))-a2*v(: i-1)-a3*a(: i-1);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab 编程 实现 计算 自由度 体系 动力 响应 样本