- 1、本文档共24页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
有限元分析中《结构力学》矩阵位移法C语言程序(附例题)
程序:
#include stdafx.h
#include stdio.h
#include math.h
#include stdlib.h
void main()
{int loc[3][2]={0},ifix[6]={0};
float area[3]={0.0},fint[3]={0.0},cx[4]={0.0},cy[4]={0.0},f[12]={0.0},fr[12]=
{0.0},fe[3][6]={0.0};
int nn,ne,nd,nfix;
float ea;
int i,j,k;
FILE *shuru,*shuchu;
shuru=fopen(shuru.dat,r);
shuchu=fopen(shuchu.dat,w);
fscanf(shuru,%d%d%d%d%f,nn,ne,nd,nfix,ea);
fprintf(shuchu,nn ne nd nfix e\n%d %d %d %d %f\n,nn,ne,nd,nfix,ea);
i=0;
while(i=ne-1)
{fscanf(shuru,%d%d%f%f,loc[i][0],loc[i][1],area[i],fint[i]);
i++;}
fprintf(shuchu,element node1 node2 area fint\n);
i=0;
while(i=ne-1)
{fprintf(shuchu,%d %d %d %f %f\n,i+1,loc[i][0],loc[i][1],area[i],fint[i]);
i++;}
j=0;
while(j=nn-1)
{fscanf(shuru,%f%f,cx[j],cy[j]);
j++;}
fprintf(shuchu,node x-coord y-coord\n);
j=0;
while(j=nn-1)
{fprintf(shuchu,%d %f %f\n,j+1,cx[j],cy[j]);
j++;}
k=0;
while(k=nfix-1)
{fscanf(shuru,%d,ifix[k]);
k++;}
fprintf(shuchu,ifix=);
k=0;
while(k=nfix-1)
{fprintf(shuchu,%d ,ifix[k]);
k++;}
fprintf(shuchu,\n);
void cst(int (*loc)[2],int *ifix,float *area,float *fint,float *cx,float *cy,float
*f,float *fr,float (*fe)[6],FILE *shuru,FILE *shuchu,float ea);
cst(loc,ifix,area,fint,cx,cy,f,fr,fe,shuru,shuchu,ea);
fprintf(shuchu,node x-disp y-disp thita\n);
i=0;
while(i=3)
{fprintf(shuchu,%d %f %f %f\n,i+1,f[3*i],f[3*i+1],f[3*i+2]);
i++;}
fprintf(shuchu,reaction nodal forces from the equations\n);
fprintf(shuchu,node x-load y-load moment\n);
i=0;
while(i=3)
{fprintf(shuchu,%d %f %f %f\n,i+1,fr[3*i],fr[3*i+1],fr[3*i+2]);
i++;}
fprintf(shuchu,element axi-f shear-q moment-m\n);
i=0;
while(i=ne-1)
{fprintf(shuchu,%d %f %f %f %f %f %f\n,i+1,fe[i][0],fe[i][1],fe[i][2],fe[i][3],fe
[i][4],fe[i][5]);
i++;}
fclose(shuru);
fclose(shuchu);
}
void cst(int (*loc)[2],int *ifix,float *area,float *fint,float *cx,float *cy,float
*f,float *fr,float (*fe)[6],FILE *shuru,FILE *shuchu,float ea)
{int np,nvd;
float p1[3][6]={0.0},p2[3][6]={0.0},gk[12][12]={0
文档评论(0)