www.gusucode.com > matlab非线性混凝土模型计算分析源码程序 > linear.m
function [d,v,a]=linear(para,np,per,xg,t,dt) st=length(xg); m=1;%先假定为单位质量; k1=m*(2*pi/per)^2;%初始弹性刚度,计算时频反应谱是一个系列; %此为恢复力模型输入参数; eta=0.05; txg=zeros(1,2); x1=zeros(1,3); x2=zeros(1,3); x1(3)=-xg(1); for nt=1:st if (nt==1)%初始时刻位移和速度为零,加速度为负初始时刻地震加速度; d(1)=0; v(1)=0; a(1)=-xg(1); ff(1)=0; else txg(1)=xg(nt-1); txg(2)=xg(nt); [x2]=newmark_single(dt,k1,m,eta,txg,x1); f2=k1*x2(1); d(nt)=x2(1); v(nt)=x2(2); a(nt)=x2(3); x1=x2; ff(nt)=f2; end end