六跨连续梁内力计算程序程序.docx

上传人:b****5 文档编号:28680118 上传时间:2023-07-19 格式:DOCX 页数:15 大小:233.44KB
下载 相关 举报
六跨连续梁内力计算程序程序.docx_第1页
第1页 / 共15页
六跨连续梁内力计算程序程序.docx_第2页
第2页 / 共15页
六跨连续梁内力计算程序程序.docx_第3页
第3页 / 共15页
六跨连续梁内力计算程序程序.docx_第4页
第4页 / 共15页
六跨连续梁内力计算程序程序.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

六跨连续梁内力计算程序程序.docx

《六跨连续梁内力计算程序程序.docx》由会员分享,可在线阅读,更多相关《六跨连续梁内力计算程序程序.docx(15页珍藏版)》请在冰豆网上搜索。

六跨连续梁内力计算程序程序.docx

六跨连续梁内力计算程序程序

 

六跨连续梁内力计算程序

说明文档

 

一.程序适用范围

本程序用来解决六跨连续梁在荷载作用下的弯矩计算。

荷载可以是集中力Fp(作用于跨中)、分布荷载q(分布全垮)、集中力偶m(作用于结点)的任意组合情况。

端部支承可为铰支或固支。

二.程序编辑方法

使用TurboC按矩阵位移法的思路进行编辑,用TurboC中的数组来完成矩阵的实现,关键的求解K⊿=P的步骤用高斯消元法。

三.程序使用方法

运行程序后,按照提示,依次输入结点编号,单元编号,单元长度,抗弯刚度(EI的倍数),集中力,均部荷载,集中力偶,各个数据间用空格隔开,每一项输入完毕后按回车键,所有数据输入完毕后按任意键输出结果。

输出结果中包括输入的数据(以便校核),角位移的值(以1/EI为单位)以及每个单元的左右两端弯矩值。

四.程序试算

1.算例1

算力图示:

输入数据:

结点:

1234560;单元:

123456;长度:

466846;EI:

11.51211.5;

Fp:

0128060;q:

800406;m:

00-801000

运行程序如下:

结果为:

角位移为:

单元编号

1

2

3

4

5

6

左端弯矩

0.00000

-14.92439

-7.30243

-12.37565

-8.16809

-7.95197

右端弯矩

14.92439

-0.69757

12.37565

18.16809

7.95197

23.02401

弯矩图如下:

 

2.算例2

算例图示:

输入数据:

结点:

0123456;单元:

123456;长度:

466846;EI:

11.51211.5;

Fp:

0128060;q:

800406;m:

00-801000

运行程序如下:

结果为:

角位移为:

单元编号

1

2

3

4

5

6

左端弯矩

-9.82331

-12.35339

-7.76314

-12.55393

-6.58562

-14.10360

右端弯矩

12.35339

-0.23686

12.55393

16.58562

14.10360

0.00000

弯矩图如下:

 

3.算例3

算例图示:

输入数据:

结点:

0123450;单元:

123456;长度:

466846;EI:

11.51211.5;

Fp:

0128060;q:

800406;m:

00-801000

运行程序如下:

结果为:

角位移为:

单元编号

1

2

3

4

5

6

左端弯矩

-9.83978

-12.32059

-7.87793

-12.19318

-8.21722

-7.93794

右端弯矩

12.32059

-0.12207

12.19318

18.21722

7.93794

23.03103

弯矩图如下:

 

4.算例4

算例图示:

输入数据:

结点:

1234567;单元:

123456;长度:

466846;EI:

11.51211.5;

Fp:

0128060;q:

800406;m:

00-801000

运行程序如下:

结果为:

角位移为:

单元编号

1

2

3

4

5

6

左端弯矩

-0.00000

-14.25984

-7.18863

-12.73600

-6.53707

-14.11573

右端弯矩

14.95284

-0.81137

12.73600

16.53707

14.11573

0.00000

弯矩图如下:

 

五.源程序

#include

#include

定义变量

intjoint[7];结点编号

intunit[6];单元编号

floatlength[6];长度

floatEI[6];抗弯刚度

floatP[6];集中力

floatq[6];均部荷载

floatm[7];集中力偶

doubleI[6];线刚度

intnumber=7,i,j;

doubleK[7][7]={0};整体刚度矩阵

doublek[6][2][2];单元刚度矩阵

doubleMP[6][2],Mq[6][2],Mlast[6][2],M[7]={0},tatleM[7],mm[7],Mqueue[7]={0},antiM[7]={0};

依次为:

集中力、均布荷载引起的固端弯矩,最终杆端弯矩,全部荷载引起的弯矩,总的结点荷载,按结点编号排列的结点集中力偶,按结点编号排列的固端弯矩,等效结点弯矩

doubleangle[7]={0};角位移

voidinput();输入函数

voidsolve();求解函数

voidoutput();输出函数

voidGauss();高斯消元法

voidmain()

{

input();

solve();

output();

}

voidinput()

{

clrscr();

printf("Pleaseinputdata.\n\nThejointnumber:

");

for(i=0;i<7;i++)

scanf("%d",&joint[i]);

printf("\nTheunitnumber:

");

for(i=0;i<6;i++)

scanf("%d",&unit[i]);

printf("\nThelength:

");

for(i=0;i<6;i++)

scanf("%f",&length[i]);

printf("\nTheEI:

");

for(i=0;i<6;i++)

scanf("%f",&EI[i]);

printf("\nTheFp:

");

for(i=0;i<6;i++)

scanf("%f",&P[i]);

printf("\nTheq:

");

for(i=0;i<6;i++)

scanf("%f",&q[i]);

printf("\nThem:

");

for(i=0;i<6;i++)

scanf("%f",&m[i]);

}

voidsolve()

{

for(i=0;i<7;i++){if(joint[i]==0)number-=1;}

 

for(i=0;i<6;i++)

{

MP[i][0]=-P[i]*length[i]/8;MP[i][1]=P[i]*length[i]/8;

}

for(i=0;i<6;i++)

{

Mq[i][0]=-q[i]*length[i]*length[i]/12;Mq[i][1]=q[i]*length[i]*length[i]/12;

}

for(i=1;i<6;i++)

{

M[i]=MP[i-1][1]+MP[i][0]+Mq[i-1][1]+Mq[i][0];

}

M[0]=MP[0][0]+Mq[0][0];

M[6]=MP[5][1]+Mq[5][1];

if(joint[0]==0)j=1;elsej=0;

for(i=j;i<7&&joint[i]>=1;i++)

{

Mqueue[joint[i]-1]=M[i];

mm[joint[i]-1]=m[i];

}

for(i=0;i<7;i++)

antiM[i]=-Mqueue[i];

for(i=0;i<7;i++)

tatleM[i]=antiM[i]+mm[i];

for(i=0;i<6;i++)

I[i]=(EI[i]/length[i]);

if(joint[0]==0)K[joint[1]-1][joint[1]-1]+=4*I[0];

if(joint[6]==0)K[joint[5]-1][joint[5]-1]+=4*I[5];

for(i=0;i<6;i++)

{

k[i][0][0]=4*I[i],k[i][0][1]=2*I[i],k[i][1][0]=2*I[i],k[i][1][1]=4*I[i];

}

for(i=j;joint[i]>=1&&joint[i+1]>=1&&i<6;i++)

{

K[joint[i]-1][joint[i]-1]+=k[i][0][0];

K[joint[i]-1][joint[i+1]-1]+=k[i][0][1];

K[joint[i+1]-1][joint[i]-1]+=k[i][1][0];

K[joint[i+1]-1][joint[i+1]-1]+=k[i][1][1];

}

getch();

}

voidoutput()

{

clrscr();

printf("Thedatayouputin:

\n\tjoint:

");

for(i=0;i<7;i++)

{

printf("\t");

printf("%d",joint[i]);

}

printf("\n\n\tunit:

");

for(i=0;i<6;i++)

{

printf("\t");

printf("%d",unit[i]);

}

printf("\n\n\tlength:

");

for(i=0;i<6;i++)

{

printf("\t");

printf("%1.0f",length[i]);

}

printf("\n\n\tEI:

");

for(i=0;i<6;i++)

{

printf("\t");

printf("%1.1f",EI[i]);

}

printf("\n\n\tFp:

");

for(i=0;i<6;i++)

{

printf("\t");

printf("%1.0f",P[i]);

}

printf("\n\n\tq:

");

for(i=0;i<6;i++)

{

printf("\t");

printf("%1.0f",q[i]);

}

printf("\n\n\tm:

");

for(i=0;i<6;i++)

{

printf("\t");

printf("%1.0f",m[i]);

}

Gauss();

for(i=0;i<6;i++)

{

Mlast[i][0]=k[i][0][0]*angle[joint[i]-1]+k[i][0][1]*angle[joint[i+1]-1]+MP[i][0]+Mq[i][0];

Mlast[i][1]=k[i][1][0]*angle[joint[i]-1]+k[i][1][1]*angle[joint[i+1]-1]+MP[i][1]+Mq[i][1];

}

printf("\n--------------------------------------------------------------------------------");

printf("\nTheangle(1/EI):

\n\n");

for(i=0;i

{

printf("%12.6f",angle[i]);

}

printf("\n--------------------------------------------------------------------------------");

printf("\nunitnumber");

for(i=0;i<6;i++)

{

printf("%6d",unit[i]);

}

printf("\n\nleftM\t");

for(i=0;i<6;i++)printf("%12.5f",Mlast[i][0]);

printf("\n\nrightM\t");

for(i=0;i<6;i++)printf("%12.5f",Mlast[i][1]);

getch();

}

voidGauss()

{

intl,m;doublebox;

doubleBOX[7]={0};

for(j=0;j<(number-1);j++)

{

for(i=j;i

{

if(K[i][j]!

=0)

{

for(m=0;m

{

BOX[m]=K[i][m];K[i][m]=K[j][m];K[j][m]=BOX[m];

}

box=tatleM[i];tatleM[i]=tatleM[j];tatleM[j]=box;

break;

}

}

for(m=j+1;m

{

K[j][m]/=K[j][j];

}

tatleM[j]/=K[j][j];

K[j][j]=1;

for(l=j+1;l

{

tatleM[l]+=-tatleM[j]*K[l][j];

for(m=number-1;m>=j;m--)

{

K[l][m]+=-K[j][m]*K[l][j];

}

}

}

tatleM[number-1]/=K[number-1][number-1];

K[number-1][number-1]=1;

for(i=0;i

angle[i]=tatleM[i];

for(i=number-2;i>=0;i--)

{

for(j=number-1;j>i;j--)

angle[i]=angle[i]-K[i][j]*angle[j];

}

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 电力水利

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1