资源描述
#include<stdio.h>
#include<math.h>
#define pi 3.141592654
#define ip 0.017453292
double L1=0.16,L2=0.52,L3=0.15,a=0.12,b=0.16,A0=0,n=500,P=5.3,i=0.7,R=0.12,Fy=4200,Fz=2300,Fby=0,Fbz=0,
Fay,Faz,Fcy,Fdz,Fdy,Fcz,Fey,Fez,Me,Mby,Mbz,Mdy,Mdz,
Mcy,Mcz,Mey,Mez,Md,Mc,www,xxx=150,eee=0.21,ddd,fby0,fbz0,fby1,fbz1,
fffe=0.00035,fffd=0.00033,aaac=0.0028,aMb,aMc,aMe,aaaac,fffb=0.00005,
fffbb,big,SM,SN,B1,SD,FFF;
void zaihe()
{
long double Ft,Fr,An=20.0,Bn=10.0;
Me=9549*P/n;
Ft=Me/R;
Fr=Ft*tan(An*ip)/(cos(Bn*ip));
Fey=Ft*sin(A0*ip)-Fr*cos(A0*ip);
Fez=Ft*cos(A0*ip)+Fr*sin(A0*ip);
Md=-Me;Fdy=Fy;Fdz=Fz;
Mdy=Fdy*b;Mdz=Fdz*b;
}
void waili()
{ Fay=(Fdy*L3+Mdy-Fey*a)/(L1+L2);
Fcy=(-Fdy*(L1+L2+L3)-Mdy-Fey*(L1+L2-a))/(L1+L2);
Faz=(-Fdz*L3-Mdz-Fez*a)/(L1+L2);
Fcz=(Fdz*(L1+L2+L3)+Mdz-Fez*(L1+L2-a)) /(L1+L2);
Mby=Fay*L1;Mbz=Faz*L1;
Mey=Fay*(L1+L2-a)+Fby*(L2-a);
Mez=Faz*(L1+L2-a)+Fbz*(L2-a);
Mcy=Fay*(L1+L2)+Fby*L2+Fey*a;
Mcz=Faz*(L1+L2)+Fbz*L2+Fez*a;
}
void qiangdu()
{
long double Xmax,Mmax,Xmax1,Xmax3,Xmax2=0.0;
Mc=sqrt(Mcy*Mcy+Mcz*Mcz);Xmax=Mc/www;Mmax=Me/(2*www);
Xmax3=-Xmax/2-sqrt((Xmax/2)*(Xmax/2)+Mmax*Mmax);
Xmax1=-Xmax/2+sqrt((Xmax/2)*(Xmax/2)+Mmax*Mmax); ddd=sqrt(((Xmax1-Xmax2)*(Xmax1-Xmax2)+(Xmax2-Xmax3)*(Xmax2-Xmax3)+(Xmax3-Xmax1)*(Xmax3-Xmax1))/2)/xxx;
ddd=pow(ddd,0.333333333333333333333);ddd=ddd/100;
ddd=(float)ddd;
}
void naodu()
{
long double fffd1,fffdy,fffdz;
fffdy=L1*Mby*L1*aMc/(L1+L2)/0.147/eee;
fffdy+=(L2-a)*(Mby*(2*aMc*L1/(L1+L2)+aMc*(L1+L2-a)/(L1+L2))+Mey*(2*aMc*(L1+L2-a)/(L1+L2)+aMc*L1/(L1+L2)))/(0.294*eee);
fffdy+=a*(Mey*(2*aMc+(L1+L2-a)*aMc/(L1+L2)+aMc)+Mcy*(2*aMc+(L1+L2-a)*aMc/( L1+L2)))/(0.294*eee);
fffdy+=L3*aMc*(Mdy-2*Mcy)/(0.294*eee);
fffdz=L1*Mbz*L1*aMc/(L1+L2)/0.147/eee;
fffdz+=(L2-a)*(Mbz*(2*aMc*L1/(L1+L2)+aMc*(L1+L2-a)/(L1+L2))+Mez*(2*aMc*(L1+L2-a)/(L1+L2)+aMc*L1/(L1+L2)))/(0.294*eee);
fffdz+=a*(Mez*(2*aMc+(L1+L2-a)*aMc/(L1+L2)+aMc)+Mez*(2*aMc+(L1+L2-a)*aMc/(L1+L2)))/(0.294*eee);
fffdz+=L3*aMc*(Mdz+2*Mcz)/(0.294*eee);
fffd1=pi*sqrt(fffdy*fffdy+fffdz*fffdz)/www/32/fffd;
ddd=pow(fffd1,0.25);ddd=ddd/1000;ddd=(float)ddd;
}
void naodue()
{
long double fffe1,fffey,fffez;
fffey=L1*Mby*L1*aMe/(L1+L2-a)/0.147/eee;
fffey+=(L2-a)*(Mby*(2*aMe*L1/(L1+L2-a)+aMe)+Mey*(2*aMe*aMe*L1/(L1+L2-a)))/ 0.294/eee;
fffey+=a*aMe*(Mcy+2*Mey)/(0.294*eee);
fffez=L1*Mbz*L1*aMe/(L1+L2-a)/0.147/eee;
fffez+=(L2-a)*(Mbz*(2*aMe*L1/(L1+L2-a)+aMe)+Mez*(2*aMe*L1/(L1+L2-a)))/(0.294*eee);
fffez+=a*aMe*(Mcz-2*Mez)/(0.294*eee);
fffe1=pi*sqrt(fffey*fffey+fffez*fffez)/www/32/eee;
ddd=pow(fffe1,0.25);ddd=ddd/1000;ddd=(float)ddd;
}
void zhuanjiaoc()
{
long double aaac1,aaacy,aaacz;
aaacy=L1*Mby*L1*aaac/(L1+L2)/0.147/eee;
aaacy+=(L2-a)*(Mby*(2*aaaac*L1/(L1+L2)+aaaac*(L1+L2-a)/(L1+L2))+Mey*(2*aaaac*(L1+L2-a)/(L1+L2)+aaaac*L1/(L1+L2)))/(0.294*eee);
aaacy+=a*(Mey*(2*(L1+L2-a)*aaaac/(L1+L2)+aaaac)+Mcy*(2*aaaac+(L1+L2-a)/(L1+L2) ))/(0.294*eee);
aaacz=L1*Mbz*L1*aaac/(L1+L2)/0.147/eee;
aaacz+=(L2-a)*(Mbz*(2*aaaac*L1/(L1+L2)+aaaac*(L1+L2-a)/(L1+L2))+Mez*(2*aaaac*(L1+L2-a)/(L1+L2)+aaaac*L1/(L1+L2)))/(0.294*eee);
aaacz+=a*(Mez*(2*(L1+L2-a)*aaaac/(L1+L2)+aaaac)+Mcz*(2*aaaac+(L1+L2-a)/( L1+L2) ))/(0.294*eee);
aaac1=pi*sqrt(aaacy*aaacy+aaacz*aaacz)/www/32/aaac;
ddd=pow(aaac1,0.25);ddd=ddd/1000;ddd=(float)ddd;
}
void fanlib()
{
long double fffb1,fffby,fffbz;
fffby=L1*Mby*aMb/0.147/eee;
fffby+=(L1+L2-a)*(Mby*(2*aMb+(L2-a)/L2*aMb)+Mey*(2*(L2-a)/L2*aMb+aMb))/0.294/eee;
fffby+=a*(L2-a)*aMb*(Mcz+2*Mey)/(0.294*eee);
fffbz=L1*Mbz*aMb/0.147/eee;
fffbz+=(L1+L2-a)*(Mbz*(2*aMb+(L2-a)/L2*aMb)+Mez*(2*(L2-a)/L2*aMb+aMb))/ (0.294*eee);
fffbz+=a*(L2-a)/L2*aMb*(Mcz+2*Mez)/(0.294*eee);
fby0=fffby;fbz0=fffbz; fffb1=pi*sqrt(fffby*fffby+fffbz*fffbz)*pi/www/big/big/big/big/640e11;
fffbb=(float)fffb1;
printf("B点的实际位移:S=%fm\n",fffbb);
}
/*void waili()
{
Fby=fffb*SD*SD*SD*SD*(1-i*i*i*i)/FFF*10e12;
Fbz=Fby*fbz0/fby0;
}
*/
void xunhuan()
{
double AAAA, big1,big2,big3,big4;
do{
waili();
qiangdu();
big1=ddd;big=big1;
naodue();
big2=ddd;
if(big<big1)
big=big2;
naodue();
big3=ddd;
if(big<big3)
big=big3;
zhuanjiaoc();
big4=(float)ddd;
if(big<big4)
big=big4;
SM=SN;SN=big;SD=(SN+SM)/2;AAAA=fabs(SD-big);
fanlib();
}while(AAAA>=0.0001);
printf("在超静定情况下的直径 :D=%fm\n",big);
}
void main()
{
float big1=0,big2,big3,big4;
printf(" 输入原始数据:\n");
scanf("%f,%f,%f,%f,%f,%f,%f,%f,%f,%f,%f,%f",&L1,&L2,&L3,&a,&b,&R,&A0,&n,&P,&i,&Fy,&Fz);
printf(" 所输入数据为:\nL1=%fm,L2=%fm,L3=%fm,a=%fm,b=%fm,R=%fm,A0=%f\n",L1,L2,L3,a,b,R,A0);
printf("n=%fr/min,P=%fKW,i=%f,Fy=%fN,Fz=%fN\n",n,P,i,Fy,Fz);
aMc=1*L3;
aMe=(L1+L2-a)*a/(L1+L2)*1;
aaaac=1;
aMb=1*L1*12/(L1+L2);
www=pi*(1-i*i*i)/32;
zaihe();
waili();
printf("辅助计算外力(静定):\nFay=%fN,Faz=%fN,Fby=%fN,Fbz=%fN,Fcy=%fN,Fcz=%fN,",Fay,Faz,Fby,Fbz,Fcy,Fcz);
printf("Fdy=%fN,Fdz=%fN,Fey=%fN,Fez=%fN,Mby=%fN.m,Mbz=%fN.m,Mcy=%fN.m,Mcz=%fN.m ",Fdy,Fdz,Fey,Fez,Mby,Mbz,Mcy,Mcz);
printf("Mdy=%fN.m,Mdz=%fN.m,Mey=%fN.m,Mez=%fN.m,Me=%fN.m,Md=%fN.m\n",Mdy,Mdz,Mey,Mez,Me,Md);
qiangdu();
printf("D1=%fm\n",big1);big=big1;
naodue();
printf("D2=%fm\n",ddd);big2=(float)ddd;
if(big<big2) big=big2;
naodue();
printf("D3=%fm\n",ddd);big3=(float)ddd;
if(big<big3) big=big3;
zhuanjiaoc();
printf("D4=%fm\n",ddd);big4=(float)ddd;
if(big<big4) big=big4;
printf("D=%fm\n",big);
fanlib();
if(fffbb<=fffb) printf("可判定此结构为静定结构\n");
else
{printf(" 可判定此结构为超静定结构\n");
SM=0;SN=big;SD=(SN+SM)/2;
B1=1+fbz0*fbz0/(fby0*fby0);
B1=sqrt(B1);
FFF=(L1+L2)*aMb*aMb/(eee*0.147);
fanlib();
xunhuan();
printf(" \n");}
}
展开阅读全文