newmark法程序法计算多自由度体系的动力响应

合集下载

newmark-integral method -回复

newmark-integral method -回复

newmark-integral method -回复什么是新马克积分法(Newmark Integration Method)?新马克积分法,又称为Newmark Integration Method,是一种用于结构动力学分析的数值计算方法。

它是由美国工程师Nathan Newmark 于20世纪50年代初开发的。

新马克积分法可以用于分析结构在地震或其他动力荷载作用下的响应。

新马克积分法基于结构的运动方程,通过离散化时间步长,将连续时间的问题转化为离散时间的问题。

这种方法是基于中点积分的一阶差分离散化方法,它可以精确地模拟结构的振动响应。

新马克积分法的步骤如下:1. 定义系统的初始条件:首先需要定义结构的初始位移、初始速度和初始加速度。

这些初值可以通过实际测量或基于结构几何和质量特性的估计得出。

2. 确定时间步长:选择适当的时间步长用于离散化求解。

时间步长的选择取决于结构的特性以及所需的计算精度。

通常情况下,时间步长越小,计算结果越精确,但计算量也越大。

3. 计算加速度:基于初始条件和结构的动力学方程,可以通过求解牛顿第二定律得到当前时间步长下的加速度。

在新马克积分法中,采用中点积分的方法计算加速度。

4. 更新速度和位移:根据当前时间步长下的加速度,可以通过积分计算更新速度和位移。

由于采用中点积分的方法,需要先根据当前时间步长的加速度估计下一个时间步长的速度和位移。

然后,根据速度和位移的更新公式进行迭代计算,直至满足收敛要求。

5. 更新初始条件:将当前时间步长的速度和位移作为下一个时间步长的初始条件,并进一步迭代计算。

6. 重复步骤3至5,直至达到所需的计算时间或满足其他收敛准则。

新马克积分法的优点是可以精确地模拟结构的动力响应,并且可以考虑结构的非线性特性。

相比于其他数值计算方法,新马克积分法的数值稳定性较好,计算精度较高。

然而,由于需要迭代计算,计算量较大,且每个时间步长的计算结果都依赖于前一个时间步长的结果,所以计算效率较低。

matlab newmark法

matlab newmark法

matlab newmark法Matlab Newmark法是一种非线性动力学分析方法,主要用于求解动力学系统的时间响应。

该方法由Newmark在20世纪50年代提出,在工程结构领域得到了广泛应用。

本文将分步骤回答关于Matlab Newmark法的问题,包括算法原理、计算步骤、优缺点以及实际案例的应用。

一、算法原理1.1 基本原理Matlab Newmark法是一种基于离散时间步长的计算方法。

其基本原理是通过将系统的运动方程转化为等效的一阶微分方程组,然后使用步进法进行数值求解。

该方法采用了二阶精度的数值积分公式,具有较高的计算精度和稳定性。

1.2 新马克法公式Matlab Newmark法的核心公式为:δu(t+Δt) = u(t) + Δt * v(t) + Δt^2 * (0.5 - β) * a(t)δv(t+Δt) = v(t) + Δt * (1 - γ) * a(t)δa(t+Δt) = (1 - γ) * a(t) + γ* a(t+Δt)其中,δ表示增量,u(t)、v(t)和a(t)分别表示位移、速度和加速度在时间t的值,β和γ为Newmark法的两个参数。

二、计算步骤2.1 确定系统参数首先,需要确定系统的质量矩阵、刚度矩阵和阻尼矩阵,以及外部激励载荷等参数。

2.2 确定时间步长根据求解精度和计算效率的要求,选择合适的时间步长Δt。

2.3 初始化位移、速度和加速度给定初始位移、速度和加速度的值。

2.4 进行时间循环使用Newmark法的公式,根据当前时刻的位移、速度和加速度的值,计算下一时刻的位移、速度和加速度。

2.5 判断收敛条件在每个时间步长内,判断计算结果是否满足收敛要求。

如果满足要求,则继续计算下一个时间步长;如果不满足要求,则重新选择适当的步长,并重新进行计算。

2.6 输出结果将每个时间步长内计算得到的位移、速度和加速度的值保存起来,以获取系统的时间响应曲线。

三、优缺点3.1 优点Matlab Newmark法具有以下优点:- 可以处理复杂的非线性动力学系统。

[转载]newmark方法

[转载]newmark方法

[转载]newmark⽅法原⽂地址:newmark⽅法作者:冷⽉有声newmark⽅法⽅法介绍/wiki/Newmark-beta_methodfunction [X,t] = newmark(M,C,K,f,dt,gam,beta,Xi,Xdi)% % 输⼊参数说明:% [M] = 质量 (nxn)% [C] = 阻尼矩阵 (nxn)% [K] = 刚度矩阵 (nxn)% {f} = 激励⼒矩阵 (nxm), f的第k列是t(k)时刻的激励⼒,m-1为总的计算步数% dt = 步长% beta= Newmark 常数 (1/6 or 1/4 usually)% gam = Newmark 常数 (1/2)% Xi = 初始位移向量 (nx1)% Xdi = 初始速度向量 (nx1)% % 输出参数说明:% {t} = 时间 (mx1)% [X] = 响应 (nxm),X的第k列为t(k)时刻的位移响应%================================================================ n = size(M,1);m = size(f,2);t = zeros(m,1);X = zeros(n,m);Xd = zeros(n,m);Xdd = zeros(n,m);% 系数c0 = 1/(beta*dt*dt) ;c1 = gam/(beta*dt) ;c2 = 1/(beta*dt) ;c3 = 1/(beta*2) - 1 ;c4 = gam/beta - 1 ;c5 = 0.5*dt*(gam/beta - 2 ) ;c6 = dt*(1 - gam ) ;c7 = dt* gam;% 初始刚度Keff = c0*M + c1*C + K ;Kinv = inv(Keff) ;% 初始加速度R0 = f(:,1);Xddi= inv(M)*(R0 - K*Xi - C*Xdi);% 第⼀步f(:,1) = f(:,1) + M*(c0*Xi+c2*Xdi+c3*Xddi) ...+C*(c1*Xi+c4*Xdi+c5*Xddi);X(:,1) = Kinv*f(:,1);Xdd(:,1)= c0*(X(:,1)-Xi) - c2*Xdi - c3*Xddi ;Xd(:,1) = Xdi + c6*Xddi + c7*Xdd(:,1);t(1) = 0;% 后续步% ========================for i=1:m-1t(i+1) = t(i) + dt;f(:,i+1) = f(:,i+1) + M * ...(c0*X(:,i)+c2*Xd(:,i)+c3*Xdd(:,i)) ...+ C*(c1*X(:,i)+c4*Xd(:,i)+c5*Xdd(:,i)) ;X(:,i+1) = Kinv*f(:,i+1) ;Xdd(:,i+1)= c0*(X(:,i+1)-X(:,i))-c2*Xd(:,i)-c3*Xdd(:,i) ;Xd(:,i+1) = Xd(:,i)+c6*Xdd(:,i)+c7*Xdd(:,i+1) ;end;程序转⾃xyz999newmark⽅法⽅法介绍/wiki/Newmark-beta_methodfunction [X,t] = newmark(M,C,K,f,dt,gam,beta,Xi,Xdi)% % 输⼊参数说明:% [M] = 质量 (nxn)% [C] = 阻尼矩阵 (nxn)% [K] = 刚度矩阵 (nxn)% {f} = 激励⼒矩阵 (nxm), f的第k列是t(k)时刻的激励⼒,m-1为总的计算步数% dt = 步长% beta= Newmark 常数 (1/6 or 1/4 usually)% gam = Newmark 常数 (1/2)% Xi = 初始位移向量 (nx1)% Xdi = 初始速度向量 (nx1)% % 输出参数说明:% {t} = 时间 (mx1)% [X] = 响应 (nxm),X的第k列为t(k)时刻的位移响应%================================================================ n = size(M,1);m = size(f,2);t = zeros(m,1);X = zeros(n,m);Xd = zeros(n,m);Xdd = zeros(n,m);% 系数c0 = 1/(beta*dt*dt) ;c1 = gam/(beta*dt) ;c2 = 1/(beta*dt) ;c3 = 1/(beta*2) - 1 ;c4 = gam/beta - 1 ;c5 = 0.5*dt*(gam/beta - 2 ) ;c6 = dt*(1 - gam ) ;c7 = dt* gam;% 初始刚度Keff = c0*M + c1*C + K ;Kinv = inv(Keff) ;% 初始加速度R0 = f(:,1);Xddi= inv(M)*(R0 - K*Xi - C*Xdi);% 第⼀步f(:,1) = f(:,1) + M*(c0*Xi+c2*Xdi+c3*Xddi) ...+C*(c1*Xi+c4*Xdi+c5*Xddi);X(:,1) = Kinv*f(:,1);Xdd(:,1)= c0*(X(:,1)-Xi) - c2*Xdi - c3*Xddi ;Xd(:,1) = Xdi + c6*Xddi + c7*Xdd(:,1);t(1) = 0;% 后续步% ========================for i=1:m-1t(i+1) = t(i) + dt;f(:,i+1) = f(:,i+1) + M * ...(c0*X(:,i)+c2*Xd(:,i)+c3*Xdd(:,i)) ...+ C*(c1*X(:,i)+c4*Xd(:,i)+c5*Xdd(:,i)) ;X(:,i+1) = Kinv*f(:,i+1) ;Xdd(:,i+1)= c0*(X(:,i+1)-X(:,i))-c2*Xd(:,i)-c3*Xdd(:,i) ;Xd(:,i+1) = Xd(:,i)+c6*Xdd(:,i)+c7*Xdd(:,i+1) ;end;本⽂来⾃CSDN博客,转载请标明出处:/yangzj208/archive/2007/04/03/1550151.aspx 本⽂来⾃CSDN博客,转载请标明出处:/yangzj208/archive/2007/04/03/1550151.aspx 本⽂来⾃CSDN博客,转载请标明出处:/yangzj208/archive/2007/04/03/1550151.aspx。

基于Newmark-β法的建筑结构地震响应简化计算

基于Newmark-β法的建筑结构地震响应简化计算

基于Newmark-β法的建筑结构地震响应简化计算摘要:地震是人类最严重的自然灾害之一,分析地震荷载下建筑结构体系的振动响应十分重要。

而对于建筑结构体系,一般将其离散为多自由度体系。

地震荷载下多自由度体系的响应可以采用中心差分法、分段解析法、Newmark-β法、Wilson-法等方法进行分析,其中Newmark-β法可以用来求解任意荷载下多自由度体系响应分析,包括地震荷载下的多自由度体系响应分析,精度较高。

本文主要结合振型叠加法和Newmark-β法思想,将建筑结构简化为多自由度体系,采用Python语言进行编程以获得基于Newmark-β法的建筑结构地震响应简化计算程序,最后通过简化算例验证了该算法程序的可行性,且由于Newmark-β法是一种显式求解法,故求解速度较快。

关键词:建筑结构;Newmark-β法;多自由度;地震响应;简化计算中图分类号:文章编号: 1000-565X1 引言地震是人类最严重的自然灾害之一。

有关记录表明,二十世纪因地震灾害造成的死亡人数至少在120万人以上。

发生在1976年我国的唐山大地震,死亡人数超过24.2万,因地震造成的直接间接损失超过百亿元。

减少因地震造成的生命财产损失对于国民经济的发展和人民生命财产的安全意义重大,其主要途径是工程结构抗震设计。

随着人类抗震经验的不断积累以及电子计算机的飞速进步,地震工程的理论和应用得到很大发展。

从早期的线性单自由度分析到如今的高度复杂的结构体系非线性弹塑性分析,并结合大型的模拟地震台作为检验,人们已经积累了一套相对完善的反映工程实际的抗震设计方法。

而地震反应的理论分析中,对响应的准确计算和分析是抗震设计的前提和基础。

结构地震响应计算方法经历了从静力法到反应谱法[1],最后落脚在时程分析法[2]的三大发展历程。

静力法只有在自振周期远小于地面运动周期时才足够精确,它忽略了结构自身的动力特性,因而存在很大局限性。

上世纪40年代提出了反应谱理论,但设计过程仍是静态方法,且无法反映许多实际复杂因素。

newmark法计算多自由度结构响应

newmark法计算多自由度结构响应

newmark法计算多自由度结构响应多自由度结构是指具有多个独立振动模式的结构,在地震、风荷载等外部力作用下,结构会产生复杂的振动响应。

为了分析这种结构的振动响应,工程师通常使用有限元法中的newmark法。

本文将介绍newmark法的基本原理,以及如何使用该方法计算多自由度结构的振动响应。

一、newmark法的基本原理newmark法是一种常用的求解结构动力学问题的数值方法,它通过离散化结构的振动方程,将结构的振动响应分解为一系列的时间步长来进行计算。

newmark法的基本原理是基于结构的动力学方程和位移速度加速度之间的关系,通过数值积分的方法求解结构的位移、速度和加速度随时间的变化。

newmark法的基本框架可以表示为:\[ M\Delta \ddot{u}^{n+1} + C\Delta\dot{u}^{n+1} +Ku^{n+1} = P^n \]其中\(M\)是结构的质量矩阵,\(C\)是结构的阻尼矩阵,\(K\)是结构的刚度矩阵,\(\Delta \ddot{u}^{n+1}\)是时间步长\(n+1\)时刻的加速度增量,\(\Delta\dot{u}^{n+1}\)是时间步长\(n+1\)时刻的速度增量,\(u^{n+1}\)是时间步长\(n+1\)时刻的位移,\(P^n\)是时间步长\(n\)时刻的外部荷载。

通过对上述结构动力学方程进行离散化,并选取合适的数值积分格式,可以得到newmark法的具体计算公式,其中包括了位移、速度和加速度的更新公式。

因此,newmark法可以方便地用于求解多自由度结构的振动响应。

二、使用newmark法计算多自由度结构的振动响应1.模型建立首先,需要对多自由度结构进行建模。

建模过程包括确定结构的几何形状、确定结构的材料性质、确定结构的边界条件等。

一般来说,可以采用有限元法来对多自由度结构进行离散化,将结构划分为多个小单元,并在每个小单元上建立适当的位移场和应变场。

结构动力学newmark法程序

结构动力学newmark法程序

用matlab编程实现Newmark-β法计算多自由度体系的动力响应姓名:***学号:**************专业:结构工程用matlab 编程实现Newmark -β法 计算多自由度体系的动力响应一、Newmark -β法的基本原理Newmark-β法是一种逐步积分的方法,避免了任何叠加的应用,能很好的适应非线性的反应分析。

Newmark-β法假定:t u u u ut t t t t t ∆ββ∆∆]}{}){1[(}{}{+++-+= (1-1)2]}{}){21[(}{}{}{t u u t uu u t t t t t t ∆γγ∆∆∆+++-++= (1-2) 式中,β和γ是按积分的精度和稳定性要求进行调整的参数。

当β=0.5,γ=0.25时,为常平均加速度法,即假定从t 到t +∆t 时刻的速度不变,取为常数)}{}({21t t t u u ∆++ 。

研究表明,当β≥0.5, γ≥0.25(0.5+β)2时,Newmark-β法是一种无条件稳定的格式。

由式(2-141)和式(2-142)可得到用t t u ∆+}{及t u }{,t u}{ ,t u }{ 表示的t t u ∆+}{ ,t t u ∆+}{ 表达式,即有t tt t t t t u u t u u t u}){121(}{1)}{}({1}{2----=++γ∆γ∆γ∆∆ (1-3) t t t t t t t u t uu u t u}{)21(}){1()}{}({}{ ∆γβγβ∆γβ∆∆-+-+-=++ (1-4) 考虑t +∆t 时刻的振动微分方程为:t t t t t t t t R u K u C uM ∆∆∆∆++++=++}{}]{[}]{[}]{[ (1-5) 将式(2-143)、式(2-144) 代入(2-145),得到关于u t +∆t 的方程t t t t R u K ∆∆++=}{}]{[ (1-6)式中][][1][][2C t M tK K ∆γβ∆γ++= )}{)12(}){1(}{]([)}){121(}{1}{1]([}{}{2t t t t t t t t u t uu t C u u t u tM R R ∆γβγβ∆γβγ∆γ∆γ∆-+-++-+++=+求解式(2-146)可得t t u ∆+}{,然后由式(2-143)和式(2-144)可解出t t u∆+}{ 和t t u ∆+}{ 。

newmark法计算多自由度结构响应

newmark法计算多自由度结构响应

Newmark方法是一种用于计算自由结构多度响应的数值技术。

在地震工程中通常用于预测地震加载下的建筑物和其他结构的行为。

Newmark方法考虑了结构的质量,硬度和坝积,以计算迁移,速度,以及每个自由度的加速。

这使得工程师能够评价结构反应,并评估损坏或故障的可能性。

要使用Newmark方法,结构首先分为离散自由度,一般在关节或连接点。

然后根据结构几何和物质特性来确定每一自由度的质量、坚硬度和筑坝特性。

这些属性用于构成结构的支配性运动方程,这些方程可以使用Newmark方法进行数字解析。

Newmark方法是一个迭代过程,它计算每个时段的结构响应。

每个自由度的迁移、速度和加速都根据应用负荷、结构特性和坝积效应加以更新。

通过穿越每个时间步,Newmark方法可以准确预测结构随时间推移的动态响应。

Newmark方法的关键优势之一是它能够同时对结构中的线性和非线性行为进行衡算。

这在地震工程中尤其重要,在强地运动下,建筑物和其他结构的反应可以高度非线性。

Newmark方法使工程师能够准确捕捉地震加载下的结构的复杂行为,对它的性能和脆弱性提供了宝贵的见解。

除地震工程外,Newmark方法也被用于风力工程和振动分析等其他领域。

在这些应用中,该方法可用于评估结构对不同类型的环境装载的动态反应,使工程师能够优化设计并确保结构安全。

总体而言,Newmark方法是预测多度自由结构的动态响应的有力工具。

它对非线性行为和复杂装载条件的衡算能力,使它成为在不同领域工作的工程师的一种宝贵的技术。

通过使用Newmark方法,工程师可以更深入地了解结构行为,做出知情的决定,以确保建筑环境的安全和复原力。

newmark法程序法计算多自由度体系地动力响应

newmark法程序法计算多自由度体系地动力响应

用matlab 编程实现Newmark -β法计算多自由度体系的动力响应用matlab 编程实现Newmark -β法 计算多自由度体系的动力响应一、Newmark -β法的基本原理Newmark-β法是一种逐步积分的方法,避免了任何叠加的应用,能很好的适应非线性的反应分析。

Newmark-β法假定:t u u u ut t t t t t ∆ββ∆∆]}{}){1[(}{}{+++-+= (1-1)2]}{}){21[(}{}{}{t u u t uu u t t t t t t ∆γγ∆∆∆+++-++= (1-2) 式中,β和γ是按积分的精度和稳定性要求进行调整的参数。

当β=0.5,γ=0.25时,为常平均加速度法,即假定从t 到t +∆t 时刻的速度不变,取为常数)}{}({21t t t u u ∆++ 。

研究表明,当β≥0.5, γ≥0.25(0.5+β)2时,Newmark-β法是一种无条件稳定的格式。

由式(2-141)和式(2-142)可得到用t t u ∆+}{及t u }{,t u}{ ,t u }{ 表示的t t u ∆+}{ ,t t u ∆+}{ 表达式,即有t tt t t t t u u t u u t u}){121(}{1)}{}({1}{2----=++γ∆γ∆γ∆∆ (1-3) t t t t t t t u t uu u t u}{)21(}){1()}{}({}{ ∆γβγβ∆γβ∆∆-+-+-=++ (1-4) 考虑t +∆t 时刻的振动微分方程为:t t t t t t t t R u K u C uM ∆∆∆∆++++=++}{}]{[}]{[}]{[ (1-5) 将式(2-143)、式(2-144) 代入(2-145),得到关于u t +∆t 的方程t t t t R u K ∆∆++=}{}]{[ (1-6)式中][][1][][2C t M tK K ∆γβ∆γ++= )}{)12(}){1(}{]([)}){121(}{1}{1]([}{}{2t t t t t t t t u t uu t C u u t u tM R R ∆γβγβ∆γβγ∆γ∆γ∆-+-++-+++=+求解式(2-146)可得t t u ∆+}{,然后由式(2-143)和式(2-144)可解出t t u∆+}{ 和t t u ∆+}{ 。

Newmark

Newmark

多自由度系统的振动——Newmark-β数值积分方法要求:(1)计算程序可以求出多自由度系统在任意荷载作用下的响应;(2)编写程序流程图;(3)做示例验算;(4)总结分析算法的稳定性及精度。

算例:计算图示结构的响应。

阻尼采用Rayleigh阻尼,α、β值自拟。

答:(1)程序流程图:是否(2)程序代码:%Newmark-β法求多自由度结构的响应dt=0.001; %计算时间间隔a=0.0452; b=0.0463; %计算阻力矩阵的α,β(Rayleigh阻尼) A=0.5;B=0.25; %Newmark-β法中的α,βa0=1/(A*dt^2); a1=B/(A*dt); a2=1/(A*dt); a3=1/(2*A)-1;a4=B/A-1; a5=dt/2*(B/A-2); a6=dt*(1-B); a7=B*dt;%计算所需数据T=30; %计算终点时刻n=T/dt+1;t=0:dt:T; %时间向量m=3; %质点个数M=[1,0,0;0,1,0;0,0,1]; %质量矩阵y=ones(m,n); %位移矩阵v=ones(m,n); %速度矩阵ac=ones(m,n); %加速度矩阵%确定初始位移、初速,计算初始加速度y(:,1)=[0;0;0];v(:,1)=[0;0;0];%K=[t(1)+1,0,0;0,t(1)+1,0;0,0,t(1)+2];%以时间为自变量的刚度矩阵K=[1,-1,0;-1,3,-2;0,-2,5];%常量刚度矩阵C=a.*K+b.*M;F=[sin(t(1));0;0]; %t0时刻荷载向量ac(:,1)=M\(F-C*v(:,1)-K*y(:,1)); %t0时刻加速度%计算等效刚度矩阵、位移向量、加速度向量、速度向量fori=2:n%K=[t(i)+1,0,0;0,t(i)+1,0;0,0,t(i)+2];%以时间为自变量的刚度矩阵C=a.*K+b.*M;F=[sin(t(i));0;0];F1=F+M*(a0*y(:,i-1)+a2*v(:,i-1)+a3*ac(:,i-1))...+C*(a1*y(:,i-1)+a4*v(:,i-1)+a5*ac(:,i-1)); %等效力K1=K+a0*M+a1*C; %等效刚度矩阵y(:,i)=K1\F1; %计算位移向量ac(:,i)=a0*(y(:,i)-y(:,i-1))-a2*v(:,i-1)-a3*ac(:,i-1);%计算加速度向量v(:,i)=v(:,i-1)+a6*ac(:,i-1)+a7*ac(:,i);%计算速度向量end%提取某些指点的位移、速度、加速度向量,绘制响应图plot(t,y(1,:),':b',t,y(2,:),'-r',t,y(3,:),'--g');grid onlegend('质点1','质点2','质点3');xlabel('时间t');ylabel('位移y');figure(2)plot(t,v(1,:),':b',t,v(2,:),'-r',t,v(3,:),'--g');grid onlegend('质点1','质点2','质点3');xlabel('时间t');ylabel('速度v');figure(3)plot(t,ac(1,:),':b',t,ac(2,:),'-r',t,ac(3,:),'--g');grid onlegend('质点1','质点2','质点3');xlabel('时间t');ylabel('加速度ac');程序运行结果:(3)算法稳定性及精度Newmark-β法基于泰勒公式将t(k+1)时刻的速度、位移在t(k)时刻展开,并将未知项做近似替换。

newmark法程序法计算多自由度体系的动力响应

newmark法程序法计算多自由度体系的动力响应

用matlab 编程实现Newmark -β法计算多自由度体系的动力响应用matlab 编程实现Newmark -β法一、析。

t ∆(1-1) 2t (1-2) 式中,?,由式 t } (1-3) t } (1-4) t ∆+(1-5) 将式(2-143)、式(2-144)代入(2-145),得到关于u t +?t 的方程t t t t R u K ∆∆++=}{}[(1-6)式中求解式(2-146)可得t t u ∆+}{,然后由式(2-143)和式(2-144)可解出t t u∆+}{ 和t t u ∆+}{ 。

由此,Newmark-?法的计算步骤如下:1.初始计算:(1)形成刚度矩阵[K ]、质量矩阵[M ]和阻尼矩阵[C ];(2)给定初始值0}{u ,0}{u和0}{u ; (3)选择积分步长?t 、参数?、?,并计算积分常数201t ∆γα=,t ∆γβα=1,t ∆γα12=,1213-=γα, 14-=γβα,)2(25-=γβ∆αt ,)1(6β∆α-=t ,t ∆βα=7; (4)形成有效刚度矩阵][][][[10C M K K αα++=;?t 的选二、 时间为三、 c=2*m*0.05*sqrt(k/m);t1=5;%力的作用时间nt=2000;%分2000步完成dt=0.01;%时间步长alfa=0.25;%?=0.25beta=0.5;%?=0.5a0=1/alfa/dt/dt;%201t ∆γα=a1=beta/alfa/dt;%t∆γβα=1 a2=1/alfa/dt;%t ∆γα12= a3=1/2/alfa-1;%1213-=γα a4=beta/alfa-1;%14-=βαT=[0:dt:19.99];%离散系统dt 为采样周期19.99为终端时间closeallfigure%控制窗口数量plot(T,[d])%绘制位移函数图像title('?÷?êμ???ò?×üí?')%添加标题为各质点位移总图legend('?êμ?ò?','?êμ??t','?êμ?èy','?êμ???')%添加图例的标注xlabel('ê±??(s)')%对x 轴进行标注为时间(s )ylabel('??ò?(m)')%对y 轴进行标注为位移(m )grid%显示画图中的个网线figureplot(T,[a])%绘制加速度函数图像title('?÷?êμ??ó?ù?è×üí?')%添加标题为各质点加速度总图legend('?êμ?ò?','?êμ??t','?êμ?èy','?êμ???')xlabel('ê±??(s)')%对x轴进行标注为时间(s)ylabel('?ó?ù?è(m/s^2)')%对y轴进行标注为加速度(m/s2)grid%figureplot(T,[v])%绘制速度函数图像title('?÷?êμ??ù?è×üí?')%添加标题为各质点速度总图legend('?êμ?ò?','?êμ??t','?êμ?èy','?êμ???')四、123。

动力学系统时域响应计算的六种方法Matlab源程序(Newmark,Houbolt法,中心差分法)

动力学系统时域响应计算的六种方法Matlab源程序(Newmark,Houbolt法,中心差分法)
vel(:,1)=dq0; % initial velocity
acc(:,1)=inv(mm)*(fd(:,1)-kk*dsp(:,1)-cc*vel(:,1));
dsp0=dsp(:,1)-vel(:,1)*dt+0.5*acc(:,1)*dt^2;
dsp(:,1)=q0; % initial displacement
vel(:,1)=dq0; % initial velocity
dsp(:,it+1)=inv(ekk)*efd; % find the displacement at time t+dt
acc(:,it+1)=(dsp(:,it+1)-dsp(:,it))/(alpha*dt^2)-vel(:,it)/(alpha*dt)...
alpha=0.5; beta=0.5; % select the parameters
acc(:,1)=inv(mm)*(fd(:,1)-kk*dsp(:,1)-cc*vel(:,1)); % compute the initial acceleration (t=0)
cfc=dsp(:,it)*beta/(alpha*dt)+vel(:,it)*(beta/alpha-1)...
+acc(:,it)*(0.5*beta/alpha-1)*dt;
efd=fd(:,it)+mm*cfm+cc*cfc; % compute the effective force vector
-acc(:,it)*(0.5/alpha-1); % find the acceleration at time t+dt

newmark法程序法计算多自由度体系的动力响应知识讲解

newmark法程序法计算多自由度体系的动力响应知识讲解

用matlab 编程实现Newmark -β法计算多自由度体系的动力响应用matlab 编程实现Newmark -β法 计算多自由度体系的动力响应一、Newmark -β法的基本原理Newmark-β法是一种逐步积分的方法,避免了任何叠加的应用,能很好的适应非线性的反应分析。

Newmark-β法假定:t u u u ut t t t t t ∆ββ∆∆]}{}){1[(}{}{+++-+= (1-1)2]}{}){21[(}{}{}{t u u t uu u t t t t t t ∆γγ∆∆∆+++-++= (1-2) 式中,β和γ是按积分的精度和稳定性要求进行调整的参数。

当β=0.5,γ=0.25时,为常平均加速度法,即假定从t 到t +∆t 时刻的速度不变,取为常数)}{}({21t t t u u ∆++ 。

研究表明,当β≥0.5, γ≥0.25(0.5+β)2时,Newmark-β法是一种无条件稳定的格式。

由式(2-141)和式(2-142)可得到用t t u ∆+}{及t u }{,t u}{ ,t u }{ 表示的t t u ∆+}{ ,t t u ∆+}{ 表达式,即有t t t t t t t u u t u u tu}){121(}{1)}{}({1}{2----=++γ∆γ∆γ∆∆ (1-3) t t t t t t t u t uu u t u}{)21(}){1()}{}({}{ ∆γβγβ∆γβ∆∆-+-+-=++ (1-4) 考虑t +∆t 时刻的振动微分方程为:t t t t t t t t R u K u C uM ∆∆∆∆++++=++}{}]{[}]{[}]{[ (1-5) 将式(2-143)、式(2-144) 代入(2-145),得到关于u t +∆t 的方程t t t t R u K ∆∆++=}{}]{[ (1-6)式中][][1][][2C t M tK K ∆γβ∆γ++= )}{)12(}){1(}{]([)}){121(}{1}{1]([}{}{2t t t t t t t t u t uu t C u u t u tM R R ∆γβγβ∆γβγ∆γ∆γ∆-+-++-+++=+求解式(2-146)可得t t u ∆+}{,然后由式(2-143)和式(2-144)可解出t t u∆+}{ 和t t u ∆+}{ 。

matlab newmark法 -回复

matlab newmark法 -回复

matlab newmark法-回复一、引言(150-200字)在工程学和地震工程中,结构动力学分析是非常重要的一项任务。

传统的动力学分析方法可以精确地反映结构的动力响应,但通常需要耗费大量计算时间。

因此,为了更高效地分析结构的动力响应,人们提出了许多快速动力学分析方法,其中之一就是Newmark法。

Newmark法是一种常用的数值积分方法,用于求解动力学方程,特别适用于分析结构在地震荷载下的响应。

本文将详细介绍Newmark法的原理、步骤和应用。

二、Newmark法概述(200-300字)Newmark法由美国加州大学伯克利分校的Nathaniel Newmark于1959年提出,是一种线性加速度法,通过对动力学方程进行离散化和近似求解来估计结构的响应。

与其他数值积分方法相比,Newmark法具有更高的精度和数值稳定性。

据其原理,结构的加速度、速度和位移可以通过近似求解一个差分方程组得到。

在Newmark方法中,加速度和速度采用一阶差分逼近,位移则采用二阶差分逼近。

该方法根据结构当前状态的速度和加速度估计其未来状态。

三、Newmark法的步骤(400-600字)Newmark法的求解步骤主要可以划分为以下几个部分:1. 建立动力学方程:根据结构的质量、刚度和阻尼,可以得到结构的动力学方程。

一般而言,地震响应分析采用单自由度体系,方程形式为:\[M\ddot{u}+C\dot{u}+Ku=F(t)\]其中,\(M\)为结构的质量矩阵,\(\ddot{u}\)为结构的加速度向量,\(C\)为阻尼矩阵,\(\dot{u}\)为结构的速度向量,\(K\)为结构的刚度矩阵,\(u\)为结构的位移向量,\(F(t)\)为结构受到的外部荷载。

2. 离散化:将动力学方程离散化,得到几个离散时间步点上的方程。

这可以通过使用定义在连续时间步长上的加速度和速度进行近似来实现。

一般而言,采样时间步长会远小于结构的固有周期,以保证精度。

结构动力学方程常用数值解法教学文案

结构动力学方程常用数值解法教学文案

结构动力学方程常用数值解法结构动力学方程常用数值解法对于一个实际结构,由有限元法离散化处理后,动力学方程可写为:...M x C x Kx F t++=()从数学角度看,这是一个常系数的二阶线性常微分方程组,计算数学领域,常微分数值算法常用的有两大类:-、针对一阶微分方程数值积分法发展的欧拉法,中点法,Rugge-kutta(龙格—库塔)方法。

二、直接基于二阶动力学方程发展的方法。

对结构动力学问题的数值求解,常用的有两大类:一是坐标变换法,它是对结构动力方程式,在求解之前,进行模态坐标变换,实际上就是一种Rize变换,即把原物理空间的动力方程变换到模态空间中去求解。

现在,普遍使用的方法是模态(振型)迭加法。

二是直接积分法,它是对结构动力方程式在求解之前不进行坐标变换,直接进行数值积分计算。

这种方法的特点是对时域进行离散,然后将该时刻的加速度和速度用相邻时刻的各位移线性组合而成。

通常又称为逐步积分法。

模态迭加方法,比较常用,但如下情况通常使用直接积分方法(即求解之前不进行模态分析)一、非比例阻尼,非线性情况。

二、有冲击作用,激起高频模态,力作用持续时间较短,模态迭加计算量太大。

一振型迭加法与Duhamel积分数值解按照有限单元法的一般规则, 经过边界条件的约束处理, 结构在强迫振动时多自由度体系的运动平衡方程可以表示为:&&& (1)++=MU CU KU R其中, M 是体系的质量矩阵, C 是体系的阻尼矩阵, 而K 则是刚度矩阵. R 为外荷载向量. U 、U &和U &&则分别是体系单元节点的位移、速度和加速度向量. 上述动力平衡方程实质上是与加速度有关的惯性力MU &&和与速度有关的阻尼力CU &及与位移有关的弹性力KU 在时刻t 与荷载的静力平衡。

振型叠加法是把多自由度体系的结构的整体振动分解为与振型次数相对应的单自由度体系, 求得各个单自由度体系的动力响应后, 再进行叠加得出结构整体响应. 振型叠加法原理是利用结构无阻尼自由振动的振型矩阵作为变换矩阵, 将结构动力方程式(1)式变换成一组非耦合的微分方程. 逐个地求解这些方程后, 将解叠加即可得到动力方程的解。

第七章多自由度体系的动力响应分析

第七章多自由度体系的动力响应分析

第七章多自由度体系的动力响应分析在第七章中,我们将学习多自由度体系的动力响应分析。

多自由度体系是指由多个部件或质点相互作用而构成的体系,在动力学中具有广泛应用。

其动力学行为比单自由度体系更为复杂,需要采用不同的方法进行分析。

多自由度体系的动力响应分析可分为两个主要步骤:建立动力学模型和求解动力学方程。

首先,我们需要根据实际问题建立多自由度体系的动力学模型。

常见的模型包括单自由度体系的推广、多质点系统和连续体模型等。

根据问题的特点选择合适的模型是十分重要的。

其次,我们需要求解多自由度体系的动力学方程。

一般来说,动力学方程可以通过运动方程和力学关系两个方面来建立。

运动方程描述了系统的几何特征,力学关系则描述了系统受到的力和约束。

通常,我们采用拉格朗日方程或哈密顿方程来建立动力学方程,并通过使用牛顿—克尔系统简化计算过程。

在求解动力学方程之后,我们可以通过模拟和分析来获得多自由度体系的动力响应。

常见的动力响应包括自由振动、强迫振动和阻尼振动等。

自由振动是指系统在无外力作用下的自我周期性振动。

强迫振动是指系统受到外界力作用而产生的振动。

阻尼振动是指系统在存在耗散力的情况下的振动。

在分析多自由度体系的动力响应时,我们还需要考虑共振现象和模态分析。

共振是指外界激励频率与系统固有频率相等时产生的特殊现象。

通过研究系统的固有频率和激励频率之间的关系,我们可以预测系统是否会发生共振,并作出相应的调整。

模态分析则是通过分解系统的振动模态,研究每个模态的特性和相互之间的耦合关系。

通过模态分析,我们可以更好地理解多自由度体系的动力响应。

在实际应用中,多自由度体系的动力响应分析经常涉及到复杂的计算和仿真。

因此,我们可以借助于计算机辅助工具,例如有限元分析和动力学仿真软件,来进行更精确和高效的分析。

总之,多自由度体系的动力响应分析是动力学中的一个重要课题。

它不仅具有理论研究的价值,还具有广泛的工程应用。

通过深入理解和掌握多自由度体系的动力响应分析方法,我们可以更好地分析和设计复杂的工程系统,推动科学技术的进步。

用matlab编程实现法计算多自由度体系的动力响应

用matlab编程实现法计算多自由度体系的动力响应

用matlab 编程实现Newmark -β法计算多自由度体系的动力响应姓名:学号: 班级: 专业:用matlab 编程实现Newmark -β法 计算多自由度体系的动力响应一、Newmark -β法的基本原理Newmark-β法就是一种逐步积分的方法,避免了任何叠加的应用,能很好的适应非线性的反应分析。

Newmark-β法假定:t u u u u t t t t t t ∆ββ∆∆]}{}){1[(}{}{+++-+=&&&&&&(1-1)2]}{}){21[(}{}{}{t u u t u u u t t t t t t ∆γγ∆∆∆+++-++=&&&&& (1-2)式中,β与γ就是按积分的精度与稳定性要求进行调整的参数。

当β=0、5,γ=0、25时,为常平均加速度法,即假定从t 到t +∆t 时刻的速度不变,取为常数)}{}({21t t t u u ∆++&&&&。

研究表明,当β≥0、5, γ≥0、25(0、5+β)2时,Newmark-β法就是一种无条件稳定的格式。

由式(2-141)与式(2-142)可得到用t t u ∆+}{及t u }{,t u}{&,t u }{&&表示的t t u ∆+}{&,t t u ∆+}{&&表达式,即有t t t t t t t u u t u u tu }){121(}{1)}{}({1}{2&&&&&----=++γ∆γ∆γ∆∆ (1-3)t t t t t t t u t u u u t u }{)21(}){1()}{}({}{&&&&∆γβγβ∆γβ∆∆-+-+-=++ (1-4)考虑t +∆t 时刻的振动微分方程为:t t t t t t t t R u K u C u M ∆∆∆∆++++=++}{}]{[}]{[}]{[&&& (1-5)将式(2-143)、式(2-144) 代入(2-145),得到关于u t +∆t 的方程t t t t R u K ∆∆++=}{}]{[ (1-6)式中][][1][][2C t M t K K ∆γβ∆γ++=)}{)12(}){1(}{]([)}){121(}{1}{1]([}{}{2t t t t t t t t u t u u t C u u t u tM R R &&&&&&∆γβγβ∆γβγ∆γ∆γ∆-+-++-+++=+求解式(2-146)可得t t u ∆+}{,然后由式(2-143)与式(2-144)可解出t t u∆+}{&与t t u ∆+}{&&。

纽马克-贝塔法原理

纽马克-贝塔法原理

纽马克-贝塔法原理
纽马克-贝塔法(Newmark-Beta Method)是一种结构动力学分析方法,用于确定结构在地震或其他外部荷载作用下的动态响应。

该方法最初由纽马克(Newmark)和贝塔(Beta)于1959年提出,它基于有限元法和数值积分法,利用加速度和位移来估计结构的响应。

该方法的基本原理是通过将结构模型离散化为有限元模型,然后采用数值积分法求解动力学方程,其中加速度和位移是用时间步长 iteration 迭代求解的。

纽马克-贝塔法基于一个参数β,它决定了数值积分方案中的加速度和位移权重。

根据不同的β值,可以得到不同的计算结果,实现了系数方法(coefficient method)和增量方法(incremental method)之间的平衡。

在进行结构动力学分析时,通常会设置适当的β 值,以获得最佳的计算效果。

不同的结构类型和地震情况可能需要不同的β 值,因此需要通过反复试验和验证来确定最佳的β 值。

纽马克-贝塔法是一种高效而准确的预测结构响应的方法,已经广泛应用于结构设计和地震工程领域。

newmarkbeta法 -回复

newmarkbeta法 -回复

newmarkbeta法-回复什么是Newmark Beta法?Newmark Beta法是一种针对结构动力学问题的数值求解方法。

它使用了简单而直观的计算算法,适用于各种结构的动力响应分析。

该方法是由Richard Newmark在1960年提出,因此得名为Newmark Beta法。

在结构工程中,我们经常需要分析结构在地震、风荷载或其他外部载荷作用下的动力响应情况。

Newmark Beta法提供了一种计算这些动力响应的有效方式。

该方法的核心思想是将结构在时域中的响应转化为位移和速度的时间历史计算。

其基本步骤如下:1. 划分时间步长:为了在计算机上对时间进行离散化和数值模拟,我们需要将整个分析过程划分为若干个时间步长。

通常情况下,时间步长的选择取决于结构的特性和外部载荷的频率特性。

时间步长过小将增加计算量,而过大则可能导致计算结果不准确。

2. 计算加速度:首先,我们需要计算结构在每个时间步长内的加速度。

这可以通过求解结构的动力学方程来实现。

结构的动力学方程可以根据牛顿第二定律得到,即F=ma,其中F是结构受到的外部载荷,m是结构的质量,a是结构的加速度。

通过对这个方程进行求解,可以得到结构在每个时间步长内的加速度。

3. 更新速度和位移:一旦我们得到了结构在每个时间步长内的加速度,我们可以利用数值积分的方法来计算结构的速度和位移。

通常情况下,我们可以使用欧拉数值积分或Newmark Beta数值积分来更新结构的速度和位移。

Newmark Beta方法通过引入一个参数β来控制算法的阻尼效果,从而使得计算结果更加准确。

4. 迭代求解:在每个时间步长内,我们需要进行迭代求解,直到得到每个时间步长的速度和位移。

在每次迭代中,我们需要根据前一次迭代的结果来计算下一次迭代的加速度、速度和位移。

5. 输出结果:一旦我们完成了所有时间步长的计算,我们就可以得到结构在整个分析过程中的位移、速度和加速度时间历史。

这些结果可以用于评估结构的动态性能,比如结构的变形、振动等。

Newmark

Newmark

多自由度系统的振动——Newmark-β数值积分方法要求:(1)计算程序可以求出多自由度系统在任意荷载作用下的响应;(2)编写程序流程图;(3)做示例验算;(4)总结分析算法的稳定性及精度。

算例:计算图示结构的响应。

阻尼采用Rayleigh阻尼,α、β值自拟。

答:(1)程序流程图:是否(2)程序代码:%Newmark-β法求多自由度结构的响应dt=0.001; %计算时间间隔a=0.0452; b=0.0463; %计算阻力矩阵的α,β(Rayleigh阻尼)A=0.5;B=0.25; %Newmark-β法中的α,βa0=1/(A*dt^2); a1=B/(A*dt); a2=1/(A*dt); a3=1/(2*A)-1;a4=B/A-1; a5=dt/2*(B/A-2); a6=dt*(1-B); a7=B*dt;%计算所需数据T=30; %计算终点时刻n=T/dt+1;t=0:dt:T; %时间向量m=3; %质点个数M=[1,0,0;0,1,0;0,0,1]; %质量矩阵y=ones(m,n); %位移矩阵v=ones(m,n); %速度矩阵ac=ones(m,n); %加速度矩阵%确定初始位移、初速,计算初始加速度y(:,1)=[0;0;0];v(:,1)=[0;0;0];%K=[t(1)+1,0,0;0,t(1)+1,0;0,0,t(1)+2];%以时间为自变量的刚度矩阵K=[1,-1,0;-1,3,-2;0,-2,5];%常量刚度矩阵C=a.*K+b.*M;F=[sin(t(1));0;0]; %t0时刻荷载向量ac(:,1)=M\(F-C*v(:,1)-K*y(:,1)); %t0时刻加速度%计算等效刚度矩阵、位移向量、加速度向量、速度向量for i=2:n%K=[t(i)+1,0,0;0,t(i)+1,0;0,0,t(i)+2];%以时间为自变量的刚度矩阵C=a.*K+b.*M;F=[sin(t(i));0;0];F1=F+M*(a0*y(:,i-1)+a2*v(:,i-1)+a3*ac(:,i-1))...+C*(a1*y(:,i-1)+a4*v(:,i-1)+a5*ac(:,i-1)); %等效力K1=K+a0*M+a1*C; %等效刚度矩阵y(:,i)=K1\F1; %计算位移向量ac(:,i)=a0*(y(:,i)-y(:,i-1))-a2*v(:,i-1)-a3*ac(:,i-1);%计算加速度向量v(:,i)=v(:,i-1)+a6*ac(:,i-1)+a7*ac(:,i);%计算速度向量end%提取某些指点的位移、速度、加速度向量,绘制响应图plot(t,y(1,:),':b',t,y(2,:),'-r',t,y(3,:),'--g');grid onlegend('质点1','质点2','质点3');xlabel('时间t');ylabel('位移y');figure(2)plot(t,v(1,:),':b',t,v(2,:),'-r',t,v(3,:),'--g');grid on legend('质点1','质点2','质点3');xlabel('时间t');ylabel('速度v');figure(3)plot(t,ac(1,:),':b',t,ac(2,:),'-r',t,ac(3,:),'--g');grid on legend('质点1','质点2','质点3');xlabel('时间t');ylabel('加速度ac');程序运行结果:(3)算法稳定性及精度Newmark-β法基于泰勒公式将t(k+1)时刻的速度、位移在t(k)时刻展开,并将未知项做近似替换。

matlab newmark法 -回复

matlab newmark法 -回复

matlab newmark法-回复Newmark法是一种常用于结构动力学中的数值计算方法,用于求解大挠度、大变形的结构动力响应问题。

本文将一步一步回答以下问题,介绍Newmark法的原理、实现步骤以及一些应用案例。

一、什么是Newmark法?Newmark法是一种被广泛应用于结构动力学中求解非线性动力响应的数值计算方法。

它是由美国工程师Nathaniel M. Newmark于1959年提出的,广泛应用于土木工程、航空航天工程、机械工程等领域。

二、Newmark法的原理是什么?Newmark法主要基于两个基本原理:受力平衡和位移一致性。

在求解结构动力问题时,我们需要找到结构在任意时间点的位移、速度和加速度。

先计算结构受力平衡,然后根据位移一致性进行迭代,逐步求得结构的动力响应。

三、Newmark法的具体实现步骤是什么?1. 将结构模型离散化为有限个质点,并将其连接为刚性结构体系。

2. 建立结构的动力学方程,可以使用拉格朗日方程、哈密尔顿原理等来描述结构的振动行为。

3. 通过数值积分方法,将结构动力学方程转化为差分形式。

常用的数值积分方法有欧拉法、中点法、Newmark法等,其中Newmark法是基于加速度前推法的一种积分方法。

4. 根据Newmark法的公式,计算每个离散质点的位移、速度和加速度。

主要步骤包括:- 计算预测位移和预测速度。

- 计算系统的预测加速度。

- 根据预测位移、预测速度和预测加速度,计算结构的残余力。

- 根据残余力修正预测加速度。

- 根据修正后的预测加速度和预测速度,计算结构的修正位移和修正速度。

- 更新位移、速度和加速度的值,进行下一时刻的计算。

5. 迭代以上步骤,直到达到要求的时间点或收敛条件。

四、Newmark法的优点和缺点是什么?优点:1. Newmark法适用于求解大挠度、大变形的结构动力响应问题。

2. 该方法具有较高的计算精度和稳定性,在工程实践中被广泛应用。

3. Newmark法能够较好地处理非线性材料模型和非线性几何模型。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

用matlab 编程实现Newmark -β法计算多自由度体系的动力响应用matlab 编程实现Newmark -β法 计算多自由度体系的动力响应一、Newmark -β法的基本原理Newmark-β法是一种逐步积分的方法,避免了任何叠加的应用,能很好的适应非线性的反应分析。

Newmark-β法假定:t u u u ut t t t t t ∆ββ∆∆]}{}){1[(}{}{+++-+= (1-1)2]}{}){21[(}{}{}{t u u t uu u t t t t t t ∆γγ∆∆∆+++-++= (1-2) 式中,β和γ是按积分的精度和稳定性要求进行调整的参数。

当β=0.5,γ=0.25时,为常平均加速度法,即假定从t 到t +∆t 时刻的速度不变,取为常数)}{}({21t t t u u ∆++ 。

研究表明,当β≥0.5, γ≥0.25(0.5+β)2时,Newmark-β法是一种无条件稳定的格式。

由式(2-141)和式(2-142)可得到用t t u ∆+}{及t u }{,t u}{ ,t u }{ 表示的t t u ∆+}{ ,t t u ∆+}{ 表达式,即有t t t t t t t u u t u u tu}){121(}{1)}{}({1}{2----=++γ∆γ∆γ∆∆ (1-3) t t t t t t t u t uu u t u}{)21(}){1()}{}({}{ ∆γβγβ∆γβ∆∆-+-+-=++ (1-4) 考虑t +∆t 时刻的振动微分方程为:t t t t t t t t R u K u C uM ∆∆∆∆++++=++}{}]{[}]{[}]{[ (1-5) 将式(2-143)、式(2-144) 代入(2-145),得到关于u t +∆t 的方程t t t t R u K ∆∆++=}{}]{[ (1-6)式中][][1][][2C t M tK K ∆γβ∆γ++= )}{)12(}){1(}{]([)}){121(}{1}{1]([}{}{2t t t t t t t t u t uu t C u u t u tM R R ∆γβγβ∆γβγ∆γ∆γ∆-+-++-+++=+求解式(2-146)可得t t u ∆+}{,然后由式(2-143)和式(2-144)可解出t t u∆+}{ 和t t u ∆+}{ 。

由此,Newmark-β法的计算步骤如下:1.初始计算:(1)形成刚度矩阵[K ]、质量矩阵[M ]和阻尼矩阵[C ];(2)给定初始值0}{u , 0}{u和0}{u ; (3)选择积分步长∆t 、参数β、γ,并计算积分常数201t ∆γα=,t ∆γβα=1,t ∆γα12=,1213-=γα, 14-=γβα,)2(25-=γβ∆αt ,)1(6β∆α-=t ,t ∆βα=7; (4)形成有效刚度矩阵][][][][10C M K K αα++=; 2.对每个时间步的计算:(1)计算t +∆t 时刻的有效荷载:)}{}{}{]([)}{}{}{]([}{}{541320t t t t t t t t t t u uu C u uu M F F αααααα∆∆++++++=++(2)求解t +∆t 时刻的位移:[]t t tt F u K ∆+∆+=}{}{(3)计算t +∆t 时刻的速度和加速度:t t t t t t t u u u u u}{}{)}{}({}{320 ααα∆∆---=++ t t t t t t u u u u∆∆αα++++=}{}{}{}{76 Newmark-β方法是一种无条件稳定的隐式积分格式,时间步长∆t 的大小不影响解的稳定性,∆t 的选择主要根据解的精度确定。

二、 本文用Newmark -β法计算的基本问题四层框架结构在顶部受一个简谐荷载014=sin()tF F t π的作用,力的作用时间1t =5s ,计算响应的时间为100s ,分2000步完成。

阻尼矩阵由Rayleigh 阻尼构造。

具体数据如下图:图一:结构基本计算简图三、 计算Newmark -β法的源程序clc clearm=[1,2,3,4];m=diag(m); %计算质量矩阵k= [800 -800 0 0; -800 2400 -1600 0; 0 -1600 4800 -3200;0 0 -3200 8000];%计算刚度矩阵c=2*m*0.05*sqrt(k/m) ;t1=5; %力的作用时间 nt=2000; %分2000步完成 dt=0.01; %时间步长 alfa=0.25; %γ=0.25 beta=0.5; %β=0.5a0=1/alfa/dt/dt; % 201t∆γα=a1=beta/alfa/dt; %t∆γβα=1 a2=1/alfa/dt; %t∆γα12=a3=1/2/alfa-1; %1213-=γα a4=beta/alfa-1; %14-=γβα a5=dt/2*(beta/alfa-2); % )2(25-=γβ∆αt a6=dt*(1-beta); %)1(6β∆α-=t a7=dt*beta; % t ∆βα=7d=zeros(4,nt); %初位移为0 v=zeros(4,nt); % 初速度为0 a=zeros(4,nt); % 初加速度为0 for i=2:ntt=(i-1)*dt;if (t<t1),f=[300*sin(6*pi*t)-50*cos(3*pi*t);0;0;0]; %力作用时间内对结构进行加载elsef=[0;0;0;0]; %力作用时间外结构不受力endke=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));% t+∆t时刻的有效荷载d(:,i)=inv(ke)*fe; %求解t+∆t时刻的位移a(:,i)=a0*(d(:,i)-d(:,i-1))-a2*v(:,i-1)-a3*a(:,i-1); %计算t+∆t时刻的加速度v(:,i)=v(:,i-1)+a6*a(:,i-1)+a7*a(:,i); %计算t+∆t时刻的速度endT=[0:dt:19.99]; %离散系统dt为采样周期19.99为终端时间close allfigure %控制窗口数量plot(T,[d]) %绘制位移函数图像title('¸÷ÖʵãλÒÆ×Üͼ') %添加标题为各质点位移总图legend('ÖʵãÒ»','Öʵã¶þ','ÖʵãÈý','ÖʵãËÄ') %添加图例的标注xlabel('ʱ¼ä(s)') %对x轴进行标注为时间(s)ylabel('λÒÆ(m)') %对y轴进行标注为位移(m)grid %显示画图中的个网线figureplot(T,[a]) %绘制加速度函数图像title('¸÷Öʵã¼ÓËÙ¶È×Üͼ') %添加标题为各质点加速度总图legend('ÖʵãÒ»','Öʵã¶þ','ÖʵãÈý','ÖʵãËÄ')xlabel('ʱ¼ä(s)') %对x轴进行标注为时间(s)ylabel('¼ÓËÙ¶È(m/s^2)') %对y轴进行标注为加速度(m/s2)grid%figureplot(T,[v]) %绘制速度函数图像title('¸÷ÖʵãËÙ¶È×Üͼ') %添加标题为各质点速度总图legend('ÖʵãÒ»','Öʵã¶þ','ÖʵãÈý','ÖʵãËÄ')xlabel('ʱ¼ä(s)') %对x轴进行标注为时间(s)ylabel('ËÙ¶È(m/s^2)') %对y轴进行标注为加速度(m/s2)grid四、计算结果截图最后程序分别计算出四个质点的位移、速度、加速度响应。

现将部分截图如下:1、位移响应:图二:1质点的位移响应图三:4质点的位移响应2、速度响应图四:1质点的速度响应图五:4质点的速度响应3、加速度响应图六:1质点的加速度响应图七:4质点的加速度响应。

相关文档
最新文档