程序如下----------------------------------------------------------------------------------
clear;
clc;
cssj=fopen('1.txt','rt'); %初始数据
q=fscanf(cssj,'%d',1); %均布荷载
L1=fscanf(cssj,'%d',1); %悬臂端长度
L2=fscanf(cssj,'%d',1); %非悬臂端长度
b=fscanf(cssj,'%d',1); %截面宽度b
h=fscanf(cssj,'%d',1); %截面高度h
alpha1=fscanf(cssj,'%d',1); %α1
fc=fscanf(cssj,'%d',1); %混凝土轴心抗压强度设计值fc
fy=fscanf(cssj,'%d',1); %普通钢筋强度设计值fy
A=[];
i=1;
%---------------------------循环画点,组成弯矩图
for x=0:1:(L1+L2)
if x<L1
M=0.5*q*x.^2;
else
M=0.5*q*L1^2*(L2-(x-L1))/L2-(0.5*q*L2*(x-L1)-0.5*q*(x-L1)^2);
end
A(i)=M;
plot(x,M,'k')
hold on
i=i+1;
end
title('弯矩图');
%---------------------------求最大正弯矩
[M,x]=max(A);
x=x-1;
fprintf('最大正弯矩:M=%i\n', M);
fprintf('对应的x值:x=%i\n', x);
%---------------------------求截面上部配筋
h0=h-40;
alphas=M./(alpha1*fc*b*h0^2);
E=1-sqrt(1-2*alphas);
As=alpha1*fc*b*h0*E/fy
%---------------------------求最大负弯矩
[M,x]=min(A);
x=x-1;
fprintf('最大负弯矩:M=%i\n', M);
fprintf('对应的x值:x=%i\n', x);
%---------------------------求截面下部配筋
h0=h-40;
alphas=M./(alpha1*fc*b*h0^2);
E=1-sqrt(1-2*alphas);
As=alpha1*fc*b*h0*E/fy
结果如下------------------------------------------------------------------------------------
最大正弯矩:M=5000000
对应的x值:x=1000
As =
[ ]
最大负弯矩:M=-2812500
对应的x值:x=2250
As =
[ ]
为什么 As=[ ] ------------------------------------------------- ????????????
clear;
clc;
cssj=fopen('1.txt','rt'); %初始数据
q=fscanf(cssj,'%d',1); %均布荷载
L1=fscanf(cssj,'%d',1); %悬臂端长度
L2=fscanf(cssj,'%d',1); %非悬臂端长度
b=fscanf(cssj,'%d',1); %截面宽度b
h=fscanf(cssj,'%d',1); %截面高度h
alpha1=fscanf(cssj,'%d',1); %α1
fc=fscanf(cssj,'%d',1); %混凝土轴心抗压强度设计值fc
fy=fscanf(cssj,'%d',1); %普通钢筋强度设计值fy
A=[];
i=1;
%---------------------------循环画点,组成弯矩图
for x=0:1:(L1+L2)
if x<L1
M=0.5*q*x.^2;
else
M=0.5*q*L1^2*(L2-(x-L1))/L2-(0.5*q*L2*(x-L1)-0.5*q*(x-L1)^2);
end
A(i)=M;
plot(x,M,'k')
hold on
i=i+1;
end
title('弯矩图');
%---------------------------求最大正弯矩
[M,x]=max(A);
x=x-1;
fprintf('最大正弯矩:M=%i\n', M);
fprintf('对应的x值:x=%i\n', x);
%---------------------------求截面上部配筋
h0=h-40;
alphas=M./(alpha1*fc*b*h0^2);
E=1-sqrt(1-2*alphas);
As=alpha1*fc*b*h0*E/fy
%---------------------------求最大负弯矩
[M,x]=min(A);
x=x-1;
fprintf('最大负弯矩:M=%i\n', M);
fprintf('对应的x值:x=%i\n', x);
%---------------------------求截面下部配筋
h0=h-40;
alphas=M./(alpha1*fc*b*h0^2);
E=1-sqrt(1-2*alphas);
As=alpha1*fc*b*h0*E/fy
结果如下------------------------------------------------------------------------------------
最大正弯矩:M=5000000
对应的x值:x=1000
As =
[ ]
最大负弯矩:M=-2812500
对应的x值:x=2250
As =
[ ]
为什么 As=[ ] ------------------------------------------------- ????????????