martin_eden 发表于 2011-3-26 12:04

求教:怎么求解瞬时动力学响应问题?

我刚开始学结构动力学的计算问题。请问一下,瞬时动力学的响应是否就是用时间积分方法求解二阶常微分方程 d^2 U(x)/dx^2 + dU(x)/dx + = ?

瞬时动力学问题是否考虑到了结构在运动中的变形问题?是否对于小变形问题中,每个时间步体积积分是不变的?

有没有这方没的书,请大牛推荐一下!万分感激!!!

Rainyboy 发表于 2011-3-26 20:28

除了时间积分法,还有一大类方法是振型叠加法,在算系统在较短时间内的响应时,时间积分法比较有效率,在考虑系统在较长时间内的响应时,振型叠加法更快。

“运动中的变形”指的是什么?“体积积分”指的又是什么?

书的话,张雄、王天舒的《计算动力学》还行。

martin_eden 发表于 2011-3-27 09:07

回复 2 # Rainyboy 的帖子

谢谢你得回复!你推荐得那本书我已经买了,大概看了一遍,但是还是有些地方不懂。你提到的变形和积分是关键,我想问的就是在计算这个微分方程的时候,质量矩阵、阻尼矩阵、刚度矩阵是时间的常数还是函数,因为如果是时间的函数则在解这个方程的时候,这几个矩阵就要随着时间变化,反应在瞬时分析中就应该表现为物体的变形——从而导致了计算质量矩阵、阻尼矩阵、刚度矩阵时的体积积分改变。如果不是时间的函数,那么就是一个直接求解常微分方程的问题了,就要简单的多了。

Rainyboy 发表于 2011-3-27 09:48

回复 3 # martin_eden 的帖子

在线性振动理论中,是常微分方程组

martin_eden 发表于 2011-3-27 10:14

回复 4 # Rainyboy 的帖子

((em:14))多谢!正在看你在计算版里面发的用python写的程序

meiyongyuandeze 发表于 2011-3-27 13:02

关注,共同学习{:{39}:}

ME! 发表于 2012-12-19 15:50

Rainyboy 发表于 2011-3-27 09:48 static/image/common/back.gif
回复 3 # martin_eden 的帖子

在线性振动理论中,是常微分方程组

如果我的质量矩阵和刚度矩阵为非对角阵,求解微分方程很困难,怎么办

Rainyboy 发表于 2012-12-20 22:18

ME! 发表于 2012-12-19 15:50 static/image/common/back.gif
如果我的质量矩阵和刚度矩阵为非对角阵,求解微分方程很困难,怎么办

不管是对角还是非对角,用像NEWMARK方法这样的数值积分方法流程是一样的吧?

ME! 发表于 2012-12-22 09:43

可是我用newmark法求出来的响应图片怎么是这样的啊
K=sysK;% K ----- 调用刚度矩阵
M=sysM; % M ----- 调用质量矩阵
%C=0.03*M+0.02*K;% C ----- 阻尼矩阵
   C=0;
dt=0.01;% dt ----- 时间步长
tend=20;% tend --- 结束时间
w=600;
= size( K ) ;
%Newmark算法
gama = 0.5 ;
beta = 0.25 ;
= size( K ) ;
Nalpha0 = 1/beta/dt^2 ;
Nalpha1 = gama/beta/dt ;
Nalpha2 = 1/beta/dt ;
Nalpha3 = 1/2/beta - 1 ;
Nalpha4 = gama/beta - 1 ;
Nalpha5 = dt/2*(gama/beta-2) ;
Nalpha6 = dt*(1-gama) ;
Nalpha7 = gama*dt ;
NK1 = K + Nalpha0*M + Nalpha1*C ;
Nd = zeros( n, floor(tend/dt) + 1 ) ;
Nv = zeros( n, floor(tend/dt) + 1 ) ;
Na = zeros( n, floor(tend/dt) + 1 ) ;
Nd(:,1) = 0.01 ;   %%%%%%%%%%%%%%%%%%%%%%%%初始位移
Nv(:,1) = 0 ;%%%%%%%%%%%%%%%%%%%%%%%%初始速度
f(:,1) =0 ;%初始载荷
Na(:,1) = M\(f(:,1)-K*Nd(:,1)-C*Nv(:,1));%初始加速度
t=0:dt:tend;
for i=2:1:length(t)
f(:,i)=0*100*sin(w*t(i));
f2 = f(:,i) + M*(Nalpha0*Nd(:,i-1)+Nalpha2*Nv(:,i-1)+Nalpha3*Na(:,i-1))+ C*(Nalpha1*Nd(:,i-1)+Nalpha4*Nv(:,i-1)+Nalpha5*Na(:,i-1)) ;
Nd(:,i) = inv(NK1)*f2 ;
Na(:,i) = Nalpha0*(Nd(:,i)-Nd(:,i-1)) - Nalpha2*Nv(:,i-1) - Nalpha3*Na(:,i-1) ;
Nv(:,i) = Nv(:,i-1) + Nalpha6*Na(:,i-1) + Nalpha7*Na(:,i) ;
end
figure ;
plot(t,Nd(1,:),'g')
xlabel('t');
ylabel('u(t)');
title('Newmark-beta位移与时间的关系');

莽荒纪 发表于 2012-12-22 17:03

新人必须露脸{:{03}:}

Rainyboy 发表于 2012-12-27 09:29

ME! 发表于 2012-12-22 09:43 static/image/common/back.gif
可是我用newmark法求出来的响应图片怎么是这样的啊
K=sysK;% K ----- 调用刚度矩阵
M=sysM; % M ----- 调 ...

你算的方程是什么?把矩阵写出来,我用我的程序跑一跑

ME! 发表于 2012-12-28 13:26

我就是调用这里面的刚度矩阵K和质量矩阵M,然后用newmark法解

Rainyboy 发表于 2013-1-8 16:44

ME! 发表于 2012-12-28 13:26 static/image/common/back.gif
我就是调用这里面的刚度矩阵K和质量矩阵M,然后用newmark法解

我今天刚看到哈……你回复的是楼主……没有回复我……
我今晚有空算算

ME! 发表于 2013-1-8 17:52

Rainyboy 发表于 2013-1-8 16:44 static/image/common/back.gif
我今天刚看到哈……你回复的是楼主……没有回复我……
我今晚有空算算

好的,谢谢!

Rainyboy 发表于 2013-1-9 09:59

ME! 发表于 2013-1-8 17:52 static/image/common/back.gif
好的,谢谢!

报错了,少了全局变量a的定义。




页: [1] 2
查看完整版本: 求教:怎么求解瞬时动力学响应问题?