%运行本程序之前请运行 CYGD1.M 和 CYGD2.M 求解框架水平侧移刚度 %本程序未考虑扭转耦联振动,只能用于平面框架计算。求解所有振型。 %结构地震影响系数按高规 3.3.8 选取 %地震作用和作用效应按高规 3.3.10 计算 clear %清理 WORKSPACE
k0=[263770 263770 263770 263770 123582]; %各层框架侧移刚度
m0=[1.904 2.677 2.677 2.677 2.677]*1.0e3./9.8; %各层质量,重力荷载代表值/g n1= 0.21712; %单榀框架地震力分配系数 Tg=0.35; %特征周期(按规范选取) s=0.05; %阻尼比(按规范选取) r=0.9; %衰减系数(按规范选取)
y1=0.02; %阻尼比调整系数 1(按规范选取) y2=1; %阻尼比调整系数 2(按规范选取)
amax=0.08; %水平地震最大影响系数(按规范选取) zjxu=0.7 %周期折减系数(按规范选取) cn=length(m0) %计算楼层数 l=diag(ones(cn));
m=diag(m0); %计算质量矩阵
ik=matrixju(k0,cn); %计算刚度矩阵
[x,d]=eig(ik,m) %求解特征值和特征向量 d=diag(sqrt(d)) %求解结构圆频率
T=zjxu*2*pi./d %求解结构特征周期并作折减,折减系数 0.7 for i=1:cn;
[dl(i),j]=min(d); xgd(:,i)=x(:,j); d(j)=max(d)+1; end
w=dl; %输出结构自振频率 x=xgd;
for j=1:cn; %求解结构振型参与系数和各质点的水平相对位移 x x(:,j)=x(:,j)/x(cn,j);
zhcan(j)=(x(:,j))'*m*l/((x(:,j))'*m*x(:,j)); end
y=zhcan'
alpha=zeros(cn,1); for i=1:cn; if T(i)<0.1
alpha(i)=5.5*amax*T(i)+0.45*amax; else
if T(i) alpha(i)=[0.2.^r-y1*(T(i)-5*Tg)/y2]*amax; else alpha(i)=(Tg/T(i)).^r*amax; end end end end a=alpha %输出地震影响系数 F=zeros(cn); %求解各振型下,各层水平地震力 for i=1:cn; F(:,i)=x(:,i).*m0.*y(i).*a(i).*9.8; %输出振型参与系数 %求解地震影响系数 End f=F.*n1 %求解分配后地震力,并排序 z=zeros(cn,cn); b=cn+1; for n=1:cn; z(b-n,:)=f(n,:); end p=z %输出地震力 v=zeros(cn,1); %求解水平地震力效应值 for i=1:cn; v(i)=sum(p(i,:).^2); end V=v.^0.5 子程序 function kcju=matrixju(korc,cn) kcju=zeros(cn,cn); for i=1:cn-1; kcju(i,i)=korc(i)+korc(i+1); kcju(i,i+1)=-korc(i+1); kcju(i+1,i)=-korc(i+1); end kcju(cn,cn)=korc(cn); 因篇幅问题不能全部显示,请点此查看更多更全内容