newmark法程序

合集下载

newmark算法

newmark算法

function [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;。

固体力学中的数值方法_Newmark算法

固体力学中的数值方法_Newmark算法

Newmark 算法程序计算报告1.Newmark 算法理论基础在~t t t +∆的时间区域内,Newmark 积分方法采用下列的假设,即()2112t t t t t t t tt t t t t t t tδδαα+∆+∆+∆+∆=+-+∆⎡⎤⎣⎦⎡⎤⎛⎫=+∆+-+∆ ⎪⎢⎥⎝⎭⎣⎦a a a a a a a a a (1.1) 其中α和δ是按积分精度和稳定性要求决定的参数。

另一方面,α和δ取不同的值则代表了不同的数值积分方案。

当1/6,1/2αδ==时,(1.1)式相应于线性加速度法,因为这时他们可以由下式得到()/ (0)t t t t t t t t ττ+∆+∆=+-∆≤≤∆a a a a (1.2)当1/4,1/2αδ==时,Newmark 算法相应于常平均加速度法这样一种无条件稳定的积分方案。

此时,t ∆内的加速度为()12t t t t t +∆+∆=+a a a (1.3) 因此,将(1.1)式可以得到()211112t t t t t t t t t ααα+∆+∆⎛⎫=---- ⎪∆∆⎝⎭a a a a a (1.4) 代入到动力学平衡方程中可以得到22111112 112t t t t t t t t t t t t t t t t δαααααδδδααα+∆+∆⎡⎤⎛⎫⎛⎫++=+++-+ ⎪ ⎪⎢⎥∆∆∆∆⎝⎭⎝⎭⎣⎦⎡⎤⎛⎫⎛⎫+-+-∆ ⎪ ⎪⎢⎥∆⎝⎭⎝⎭⎣⎦K M C a Q M a a a C a a a (1.5)2.Newmark 算法计算步骤(1)形成刚度矩阵 K 、质量矩阵M 、阻尼矩阵 C 。

(2)给定0 a ,0a ,和0a(3)选择时间步长t ∆及参数α和δ,并计算积分常数。

这里要求:()20.5,0.250.5δαδ≥≥+()012324567111,,,121,2,1,2c c c c t t t t c c c t c t δααααδδδδαα====-∆∆∆∆⎛⎫=-=-=∆-=∆ ⎪⎝⎭(4)形成有效刚度矩阵01ˆˆc c + K :K =K +M C (5)三角分解ˆˆTK:K =LDL 对于每一个时间步长(1)计算时间t t +∆的有效载荷()()023145ˆt t t t t t t t t t c c c C c c c +∆+∆=++++++Q Q M a a a a a a(2)求解时间t t +∆的位移ˆT t t t t+∆+∆=LDL a Q (3)计算时间t t +∆的加速度和速度()02367t t t t t t t t t t t t tc c c c c +∆+∆+∆+∆=---=++a a a a a a a a a3.程序设计思路(1) 读入质量矩阵、刚度矩阵、阻尼矩阵、载荷列向量;读入初始状态值,如初始位移、初始速度、初始加速度;读入控制变量,如时间步长、时间步; (2) 计算8个积分常数;(3) 计算有效刚度矩阵ˆK并对有效刚度矩阵ˆK 进行LU 分解; (4) 求解时间t t +∆的有效载荷向量ˆt t+∆Q ; (5) 求解时间t t +∆的位移t t +∆a ;(6) 求解时间t t +∆的的加速度t t +∆a 和速度t t +∆a (7)计算下一时刻的有效载荷向量并循环。

结构动力学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法计算

1.考虑一个单自由度体系,质量m=1,刚度k=π2/4,阻尼c=0.2π。

外荷载为p(t)=1,0<t<1; p(t)=0,t>1. 初始条件为:位移u(0)=4/π2 ,速度为v(0)=0。

分析的时间段为0<t<12。

(1) 给出如上问题的速度和位移的准确解。

(2) 采用三种Newmark- β法(γ=1/2,而β分别取0,1/6,1/4)分别在时间步长为2,1,0.5,0.25的条件下求解如上单自由度体系,并绘出速度、位移随时间变化的结果图。

(3) 第(2)问中,采用数值计算的位移和速度结果是有误差的。

结合已经给出的准确解,绘出不同时间步长下,绘出三种Newmark法计算得到的速度和位移的误差在不同时间点处的图。

并分析误差变化的规律。

%(1)function dq=qq(t,q)dq=zeros(2,1);dq(1)=q(2);if t<=1dq(2)=1-(0.2*pi*q(2)+pi^2/4*q(1));elsedq(2)=-(0.2*pi*q(2)+pi^2/4*q(1));end[t,u]=ode45(@qq,[0,12],[4/pi^2,0]);plot(t,u)v=[0 12 -0.5 0.5];axis(v);xlabel('t');ylabel('Displacement or Velocity');legend('D','V');title('准确解')%(2)function [D,V,A]=NM_beta(n,dt,beta,gama,d,v,K,M,C,P)a0=1/(beta*dt^2);a1=gama/beta/dt;a2=1/beta/dt;a3=1/2/beta-1;a4=gama/beta-1;a5=dt/2*(gama/beta-2);a6=dt*(1-gama);a7=dt*gama;Kd=K+a0*M+a1*C;a=(P-C*v-K*d)/M;D(1)=d;V(1)=v;A(1)=a;if beta==0for i=1:n-1D(i+1)=D(i);A(i+1)=A(i);V(i+1)=V(i);endelsefor i=1:n-1Pdi=P+M*(a0*D(i)+a2*V(i)+a3*A(i))+C*(a1*D(i)+a4*V(i)+a5*A(i));D(i+1)=inv(Kd)*Pdi;A(i+1)=a0*(D(i+1)-D(i))-a2*V(i)-a3*A(i);V(i+1)=V(i)++a6*A(i)+a7*A(i+1);endendD=D';V=V';A=A';endclearbeta=1/4; %还取了1/6、0gama=0.5;dt=0.25; %还取了0.5、1(当时间步长取2时,P(t)的分段情况不知如何处理,故不予展示)tm=12;tn=1;N=tm/dt+1;D=zeros(N,1);n=tn/dt+1;d=4/pi^2;v=0;K=pi^2/4;M=1;C=0.2*pi;P=1;[D_1,V_1,A_1]=NM_beta(n,dt,beta,gama,d,v,K,M,C,P); d=D_1(n);v=V_1(n);D(1:n,1)=D_1;V(1:n,1)=V_1;A(1:n,1)=A_1;m=(tm-tn)/dt+1;P=0;[D_2,V_2,A_2]=NM_beta(m,dt,beta,gama,d,v,K,M,C,P); D((n+1):(m+n-1),1)=D_2(2:m,1);V((n+1):(m+n-1),1)=V_2(2:m,1);A((n+1):(m+n-1),1)=A_2(2:m,1);t=0:dt:12;plot(t,D,t,V);xlabel('t');ylabel('Displacement or Velocity');legend('D','V');title('\beta=1/4 \Deltat=0.25');grid on(3)当beta一定时,时间步长越短,误差越小。

newmarkbeta法 -回复

newmarkbeta法 -回复

newmarkbeta法-回复什么是newmarkbeta法?Newmarkbeta法,也被称为Wilson-Newmark法,是一种数值积分方法,用于求解结构动力学问题。

它是基于普通微分方程的数值求解方法之一,适用于求解线性和非线性、自由和强迫响应的结构动力学问题。

该方法基于Newmark积分方法,考虑了质量矩阵和刚度矩阵对结构响应的影响,通过引入一个积分参数beta,使得在不同的参数设定下可以得到不同阶数的数值积分方法。

注意事项:在使用Newmarkbeta法时,需要明确一些注意事项:1. 时间步长的选择:时间步长需要根据所研究的问题和模型的特性来进行选择。

通常情况下,较小的时间步长可以提高精度,但也增加了计算量。

如果时间步长选择过大,可能会导致数值解的不稳定性。

2. 弛豫因子的选择:在Newmarkbeta法中,引入了一个松弛因子gamma来平衡速度和加速度的权重。

gamma为0.5时,等效于中点积分法。

gamma为0时,等效于显式向前差分法。

根据所研究问题的稳定性和精度要求,可以选择不同的gamma值。

3. 初始条件的设定:在数值解求解之前,需要设定初始条件,即结构的初始位移和速度。

这些初始条件将影响数值解的准确性和稳定性。

通常情况下,可以根据结构的静态平衡状态设定初始条件。

数值解求解步骤:下面将一步一步介绍使用Newmarkbeta法求解结构动力学问题的步骤:步骤1:建立结构模型首先,需要根据所研究的结构问题建立相应的有限元模型。

这包括定义结构的几何形状、材料性质和边界条件等。

步骤2:离散化将结构模型离散化,将结构划分成一系列有限元单元。

对于每个有限元单元,可以根据其几何形状和材料性质计算出相应的刚度矩阵和质量矩阵。

步骤3:时间积分将时间划分成一系列离散时间步长。

通过使用Newmarkbeta法中的数值积分公式,可以迭代计算每个时间步长内的结构响应。

步骤4:计算每个时间步长内的位移和速度根据Newmarkbeta法的数值积分公式,可以计算出每个时间步长内的位移和速度。

时程分析法 newmark-b

时程分析法  newmark-b

ti
&x&ti
2
t
ti 2
&x&
i
6t
t ti 3
(6)
ti t 时刻的速度向量为:
x&ti
t
x&ti
&x&ti
t
&x& i 2t
t
2
速度增量为:
x&i
x&ti
t x&ti
&x&ti
t
&x& i 2
t
(8)
位移增量为:
x i
x ti
t
x
ti
x&ti
t
&x&ti
2
t 2
&x&i
6
t
3&x&ti
从而可以得出ti t 时刻的位移,速度和加速度向量
x
ti
t
x
ti
x i
x&ti
t
x&ti
x&i
3 t
x&i
2x&ti
t 2
&x&ti
&x&ti t M 1 P ti t fD ti t fs ti t
(11)
fI (t) fD (t) fs (t) P(t)
d
t
ti &x&ti
ቤተ መጻሕፍቲ ባይዱ
d
t
ti
&x&i
t
ti
d
x&
t ti
&x&ti

基于newmark法的一种新精细直接积分法_郭泽英

基于newmark法的一种新精细直接积分法_郭泽英

2007年6月 陕 西 理 工 学 院 学 报J u n e .2007第23卷第2期 J o u r n a l o f S h a a n x i U n i v e r s i t y o f T e c h n o l o g yV o l .23 N o .2[文章编号]1673-2944(2007)02-0065-04基于N e w m a r k 法的一种新精细直接积分法郭泽英1,2, 李青宁1(1.西安建筑科技大学土木工程学院, 陕西西安 710055;2.山西师范大学工程学院, 山西临汾 041000)[摘 要] 将N e w m a r k 法中常平均加速度法的基本假定引入结构动力微分方程中,运用指数矩阵的精细运算技巧和精度较高的柯特斯积分格式逐步积分,形成新精细直接积分法。

与精细时程积分法相比,文中方法在将二阶微分方程降为一阶时,方程的数量没有增加,其迭代公式明显。

文中对该方法的稳定性进行分析。

结果表明该方法虽是条件稳定的,但其稳定性条件非常容易满足。

数值例题显示了本文新精细直接积分法的精度。

[关 键 词] N e w m a r k -β法; 精细指数运算; 柯特斯积分; 稳定性[中图分类号] T U 311.3 [文献标识码] A 收稿日期:2006-11-03 基金项目:国家自然科学基金项目(10572107)。

作者简介:郭泽英(1974—),女,山西临汾人,山西师范大学讲师,西安建筑科技大学博士生,主要研究方向为高层建筑结构分析与设计。

离散系统的动力微分方程一般表示为:Mx ¨+C x ¨+K x=F(1) 式中:x ,x ﹒,x ¨分别为体系的水平位移、速度和加速度向量;M ,C ,K 分别为体系的质量、阻尼和刚度矩阵;F 为给定的外力列向量。

方程(1)在时域内的数值求解方法有传统的中心差分法、威尔逊法、N e w m a r k 法[1]等。

基于Newmark-β法的Matlab简单程序编写

基于Newmark-β法的Matlab简单程序编写

基于Newmark-β法的Matlab简单程序编写李坤明;黄菲【摘要】我们知道,对于结构动力学问题的直接求解往往是比较困难的,而Newmark-β法的出现,很巧妙地将这种困难化解.Newmark-β法是一种时程分析的方法,它将动力学微分方程的求解问题转化为若干个代数方程逐步求解,是一种隐式积分法,可以得到足够精确的解.本文基于Newmark-β法的理论知识,用Matlab 对一个简单动力学问题的求解进行编程运算.【期刊名称】《四川建材》【年(卷),期】2018(044)009【总页数】3页(P65-66,90)【关键词】Newmark-β法;编程;结构力学【作者】李坤明;黄菲【作者单位】西华大学土木建筑与环境学院,四川成都 610039;西华大学土木建筑与环境学院,四川成都 610039【正文语种】中文【中图分类】TP3131 逐步积分法在结构动力学问题的分析中,对于承受任意动荷载的线性结构,我们可以采用Duhamel、频域分析等方法,这些方法都可以很方便地求解出所需要的结果。

但是上面的两种方法都用到了叠加原理,所以它们只适用于求解线性结构体系,同时也必须要求这种体系的特性在反应过程中不能发生变化[1]。

然而,在另一方面,我们的实际生活中有很多重要的结构动力学问题,整个反应体系并不能单纯地认为是线性变化的,比如,在足以引起强烈破坏的地震作用下,很多建筑物的反应,我们都必须考虑非线性反应的影响。

所以,我们还必须要发展对于非线性结构的动力响应的分析方法。

对于非线性体系的动力响应问题,发展出了最有效的分析方法—逐步积分法[1]。

在这种方法中,我们采用一系列的短时间增量Δt来计算反应,而通常为了方便起见,我们将Δt取为等间距的时间步长。

在每个时间间隔的起点和终点建立动力平衡方程,并以一个假设的反应机理为根据,近似地计算在时间间隔内体系的运动(通常忽略在时间间隔内产生的不平衡),体系的非线性特性可以用每个时间间隔的起点所求得的当前变形状态的新特性来说明。

wilson法和newmark法的理论过程

wilson法和newmark法的理论过程

第三章离散化结构动力方程的解法(2013.4.24)§3.1 绪言对于一个实际结构,由有限元法离散化处理后,应用瞬时最小势能原理可导出动力方程[]{}[]{}[]{}{}++=(3.1)M u C u K u F(t)这里,{}u、{}u、{}u及{}F t分别表示加速度、速度、位移及所()作用的外力矢量,他们都是与时间有关的。

从数学的角度来看,式(3.1)是一个常系数的二阶线性常微分方程组,对于它的求解原则上并无困难。

但是,由于[]M、[]C 和[]K的阶数非常高,使得式(3.1)的求解必须花费很大的代价,便促使人们去寻求一些效率高的近似计算方法。

目前,用于求解式(3.1)的方法,大致可分为两大类。

一是坐标变换法,它是对结构动力方程式(3.1),在求解之前,进行模态坐标变换,实际上就是一种Ritz变换,即把原物理空间的动力方程变换到模态空间中去求解。

现在,普遍使用的方法是模态(振型)迭加法,即用结构的前q阶实际主模态集(主振型阵)构成坐标变换阵进行变换。

通过这一变换,实现降阶,求较好的近似解,而且,还用解除耦合的办法,简化方程的计算。

还有一种所谓假设模态法,即是用一组假设模态,构成模态坐标变换阵进行变换,获得一组降阶的而不解耦的模态基坐标方程。

显然,这种方法的计算精度,取决于所假设的模态。

用Ritz矢量法求解的近似模态作为假设模态,可得到满足要求的精度。

二是直接积分法,它是对式(3.1)在求解之前,不进行坐标变换,直接进行数值积分计算。

这种方法的特点是对时域进行离散,将式(3.1)分为各离散时刻的方程,然后,将该时刻的加速度和速度用相邻时刻的各位移线性组合而成,于是,式(3.1)就化为一个由位移组成的该离散时刻上的响应值,通常又称为逐步积分法。

线性代数方程组的解法与静力时刻的位移来线性组合,就导致了各种不同的方法。

主要有中央差分法,Houbolt 方法,Wilson -θ法和Newmark 方法等。

newmark法 流程

newmark法 流程

newmark法流程下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。

文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor. I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!Newmark 法是一种用于求解结构动力学问题的数值方法。

以下是Newmark 法的一般流程:1. 建立结构的有限元模型:将结构离散为有限个单元,并确定单元的节点和连接方式。

纽马克-贝塔法原理

纽马克-贝塔法原理

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

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

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

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

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

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

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

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

newmark-β法求解转子动力学

newmark-β法求解转子动力学

主题:newmark-β法求解转子动力学内容:1. 转子动力学是动力学领域的一个重要分支,研究转子系统在运转过程中的振动特性和稳定性。

2. 在转子动力学的研究中,求解转子系统的运动方程是一个重要的问题。

传统的方法包括有限元法、模态叠加法等,但随着计算机技术的发展,数值方法在转子动力学中的应用越来越广泛。

3. newmark-β法是一种常用的数值求解转子动力学问题的方法,它是一种基于有限差分的算法,能够较为准确地求解非线性动力学问题。

4. newmark-β法的基本思想是将转子系统的运动方程离散化,然后利用迭代的方式求解离散化的方程组。

其优点在于能够处理非线性效应和耗散效应,适用于各种转子系统的振动分析。

5. 在应用newmark-β法求解转子动力学问题时,需要首先建立转子系统的数学模型,包括转子的几何形状、材料性质、支承刚度等参数,然后对转子系统进行离散化处理,得到离散化的运动方程。

6. 在进行数值求解时,需要选取适当的时间步长和迭代次数,以保证求解的准确性和稳定性。

需要对新马克-β方法的参数进行合理的选择,以获得最佳的求解效果。

7. newmark-β法求解转子动力学问题的过程中,还需要对边界条件和初始条件进行合理的设定,以保证求解的可靠性。

对于一些特定的问题,还需要进行稳定性分析和收敛性分析,以评估方法的适用性。

8. 在实际工程中,newmark-β法已经被广泛应用于求解各种转子动力学问题,例如离心压缩机、涡轮机等。

其准确性和高效性得到了工程界的认可和广泛应用。

结论:通过对newmark-β法求解转子动力学的方法和过程进行研究和探讨,我们可以发现该方法具有一定的适用性和实用性,能够帮助工程师和研究人员更好地理解和分析转子系统的振动特性和稳定性,为工程实践提供可靠的数值模拟和分析手段。

然而,对于一些复杂的非线性和耗散问题,仍需要进一步研究和改进该方法,以满足工程实际应用的需求。

希望在未来的研究中,能够进一步优化和推广newmark-β法,为转子动力学问题的分析和求解提供更加可靠和高效的计算方法。

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法能够较好地处理非线性材料模型和非线性几何模型。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

用matlab 编程Newmark -β法
一、Newmark -β法原理
Newmark-β法是一种逐步积分的方法,避免了任何叠加的应用,能很好的适应非线性的反应分析。

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

当β=0.5,γ=0.25时,为常平均加速度法,即假定从t 到t +∆t 时刻的速度不变,取为常数
)}{}({2
1
t 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 t
u
}){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
][][2
C t M t K K ∆γβ∆γ++
=
)}{)12(}){1(}{](
[)}){121
(}{1}{1](
[}{}{2
t t t t t t t t u t u
u t C u u t u t
M 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 、参数β、γ,并计算积分常数
2
01t ∆γα=
,t ∆γβα=1,t ∆γα1
2
=,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 u
u C u u
u M F F αααααα∆∆++++++=++
(2)求解t +∆t 时刻的位移:
[]t t t
t 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 -β法计算
四层框架结构在顶部受一个简谐荷载01
4=sin(
)t
F F t π的作用,力的作用时间1t =5s ,计算响应的时间为100s ,分2000步完成。

阻尼矩阵由Rayleigh 阻尼构造。

具体数据如下图:
图一:计算简图三、Newmark-β法程序
m=[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=0.05*m+0.02*k;
f0=100;
t1=5;
nt=2000;
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);
for i=2:nt
t=(i-1)*dt;
if (t<t1), f=[f0*sin(4*pi*t/t1);0;0;0]; else f=[0;0;0;0]; end
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);
v(:,i)=v(:,i-1)+a6*a(:,i-1)+a7*a(:,i);
end
四、计算结果截图
最后程序分别计算出四个质点的位移、速度、加速度响应。

现将部分截图如下:
1、位移响应:
图二:1质点的位移
图三:4质点的位移
2、速度响应
图四:1质点的速度
图五:4质点的速度3、加速度响应
图六:1质点的加速度响应
图七:4质点的加速度响应
______________________________________________________________________________________________________________
Welcome To Download !!!
欢迎您的下载,资料仅供参考!
精品资料。

相关文档
最新文档