基础底面尺寸MATLAB源程序

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

基础底面尺寸MATLAB源程序

源程序作者:黄太华

将以下源程序复制,在MA TLAB中运算即可直接算出任意偏心下单向偏心基础底面尺寸,由于程序采用直接求解,所得基础底面尺寸即为精确解。

源程序如下:

% fundation_area.m

% 单向偏心矩形基础底面积直接求解程序

clear

format bank,format compact

disp('单向偏心矩形基础底面积直接求解程序');

fa=input('输入地基承载力kPa:');

famax=1.2*fa;

rG=input('输入基础及基础以上土的平均重度kN/m^3(一般为20):');

d=input('输入基础平均埋深m:');

Fk=input('输入柱脚轴力标准值kN:');

Mk=input('输入相对于基础底面的弯矩标准值kN*m:');

n=input('输入基础长宽比b/l=:');

n1=1/n;

b=sqrt(n*Fk/(fa-rG*d));b=round(b*100+0.5)/100;

l=b/n;l=round(l*100+0.5)/100;

A=b*l;

ek=Mk/(Fk+rG*d*A);

if(ek<=b/30)

disp('中心受压或近中心受压基础,ek<=b/30')

disp('基础底面长向尺寸b为m:'),b

disp('基础底面短向尺寸l为m:'),l

disp('基础底面平均反力标准值为kPa:')

pk=(Fk+rG*d*A)/A

pkmin=NaN;

else

c3=1.2*fa-rG*d;c1=n*Fk;c0=6*n*Mk;

p=[c3,0,-c1,-c0];

c=roots(p);

for k=1:3

if(isreal(c(k))&(real(c(k))>0))

b=c(k);b=round(b*100+0.5)/100;

end

end

l=b/n;l=round(l*100+0.5)/100;

pkmax=(Fk+rG*d*b*l)/(b*l)+6*Mk/(l*b^2);

pkmin=(Fk+rG*d*b*l)/(b*l)-6*Mk/(l*b^2);

end

if(pkmin>=0)

disp('偏心受压基础而且基底未出现零应力区,6/30

disp('基础底面长向尺寸b为m:'),b

disp('基础底面短向尺寸l为m:'),l

disp('基础底面最大反力标准值为kPa:'),pkmax

disp('1.2fa=:'),famax

disp('基础底面最小反力标准值为kPa:'),pkmin

elseif pkmin<0

c4=0.9*n1^2*rG*d*fa-(n1*rG*d)^2;

c2=(0.9*n1*fa-2*n1*rG*d)*Fk;

c1=1.8*n1*fa*Mk;

c0=Fk^2;

p=[c4,0,c2,-c1,-c0];

c=roots(p);

for k=1:4

if(isreal(c(k))&(real(c(k))>0))

b=c(k);b=round(b*100+0.5)/100;

end

end

l=b/n;l=round(l*100+0.5)/100;

disp('偏心受压基础而且基底出现零应力区,ek>b/6')

disp('基础底面长向尺寸b为m:'),b

disp('基础底面短向尺寸l为m:'),l

ek=Mk/(Fk+rG*d*b*l);

pkmax=2*(Fk+rG*d*b*l)/(3*l*(b/2-ek));

disp('基础底面最大反力标准值为kPa:'),pkmax

disp('1.2fa=:'),famax

end

相关文档
最新文档