材料力学实验报告文档格式.docx
- 文档编号:15293742
- 上传时间:2022-10-29
- 格式:DOCX
- 页数:16
- 大小:54.59KB
材料力学实验报告文档格式.docx
《材料力学实验报告文档格式.docx》由会员分享,可在线阅读,更多相关《材料力学实验报告文档格式.docx(16页珍藏版)》请在冰豆网上搜索。
math.h>
#defineN10
#defineN510000
intInputFix(doubledisforce[][4],doubleconforce[][2],doublemoment[][2],int*pN1,int*pN2,int*pN3,double*plength,double*pEI);
//输入数据函数
intDengxiaodis(doubledisforce[][4],doublekb[][2],doubledengxiaoli[][2],int*pN2);
//计算等效力函数
intCalculateFix(doubledisforce[][4],doubleconforce[][2],doublemoment[][2],doublekb[][2],doubledengxiaoli[][2],int*pN1,int*pN2,int*pN3,double*plength,double*pEI);
//计算函数
intmain()
{
doubledisforce[N][4];
//均布力起点大小终点大小,起点位置终点位置
doubleconforce[N][2];
//集中力(位置,大小)
doublemoment[N][2];
//力偶
doublekb[N][2];
//depositeverykandbofthedistributeforce
doubledengxiaoli[N][2];
//depositforceof位置和大小
intN1=0;
//numberofconstrateforces
intN2=0;
//numberofdistributeforces
intN3=0;
//numberofmoments
doubleEI=0;
doublelength=0;
//杆长
InputFix(disforce,conforce,moment,&
N1,&
N2,&
N3,&
length,&
EI);
Dengxiaodis(disforce,kb,dengxiaoli,&
N2);
CalculateFix(disforce,conforce,moment,kb,dengxiaoli,&
return0;
}
intInputFix(doubledisforce[][4],doubleconforce[][2],doublemoment[][2],int*pN1,int*pN2,int*pN3,double*plength,double*pEI)
inti,j;
doubleEI;
doublelength;
intN1,N2,N3;
printf("
请输入EI:
"
);
scanf("
%lf"
&
*pEI=EI;
请输入杆的长度:
"
length);
*plength=length;
请输入集中力的个数:
%d"
N1);
*pN1=N1;
if(N1>
0)
{
请输入集中力的参数(位置,大小):
for(i=0;
i<
N1;
i++)
{
for(j=0;
j<
2;
j++)
conforce[i][j]);
}
请输入分布力的个数:
*pN2=N2;
if(N2>
请输入分布力的参数:
(起点大小,终点大小,起点位置,终点位置)"
N2;
4;
disforce[i][j]);
请输入力偶的个数:
N3);
*pN3=N3;
if(N3>
请输入力偶的参数:
(位置,大小)"
N3;
moment[i][j]);
intDengxiaodis(doubledisforce[][4],doublekb[][2],doubledengxiaoli[][2],int*pN2)
intgeshu;
inti;
doublek;
//力系斜率
doubleb;
doubleq1,q2,x1,x2;
geshu=*pN2;
geshu;
q1=disforce[i][0];
q2=disforce[i][1];
x1=disforce[i][2];
x2=disforce[i][3];
dengxiaoli[i][1]=(q1+q2)*(x2-x1)/2;
//大小
kb[i][0]=(q2-q1)/(x2-x1);
k=kb[i][0];
kb[i][1]=q1-k*x1;
b=kb[i][1];
dengxiaoli[i][0]=(2*k*(pow(x2,3)-pow(x1,3))+3*b*(pow(x2,2)-pow(x1,2)))/6/dengxiaoli[i][1];
//位置
intCalculateFix(doubledisforce[][4],doubleconforce[][2],doublemoment[][2],doublekb[][2],doubledengxiaoli[][2],int*pN1,int*pN2,int*pN3,double*plength,double*pEI)
doublex;
//用户输入需要求的点在坐标位置
doubleRA=0,MA=0;
doubleVx=0;
doubleMx=0;
doubleangle=0;
doublevx=0;
//挠度
doublex1,x2;
//均布力的起点和终点
doublexi;
//xi的坐标
doublemx;
//表示X的每一个小块
doublef;
//均布力分成N份后,每一个力的大小
doublek,b;
intn1,n2,n3;
intbiaozhi1=0;
//判断x是否在军部力之间
请输入求解的点在坐标:
x);
\n"
n1=*pN1;
n2=*pN2;
n3=*pN3;
length=*plength;
EI=*pEI;
n1;
RA=RA+conforce[i][1];
n2;
RA=RA+dengxiaoli[i][1];
RA=(-1)*RA;
//////////////////////////
n3;
MA+=moment[i][1];
i++)//集中力
MA-=conforce[i][0]*conforce[i][1];
i++)//均布力
MA-=dengxiaoli[i][1]*dengxiaoli[i][0];
MA=(-1)*MA;
////////////////////////
求Vx的部分
i++)//判断x是否在军部力系中间
if((x>
disforce[i][2])&
&
(x<
disforce[i][3]))
biaozhi1=1;
//在均布力之间.
break;
if(biaozhi1==0)//力既不在军部力默认力为右连续
Vx-=RA;
if(x>
conforce[i][0])
Vx-=conforce[i][1];
else
break;
=disforce[i][3])
Vx-=dengxiaoli[i][1];
V(x)=%lf"
Vx);
else//力在军部力之间
Vx-=dengxiaoli[i][1];
Vx=Vx-(kb[i][0]*x+kb[i][1]+disforce[i][0])*(x-disforce[i][2])/2;
求Mx的部分
Mx-=MA;
Mx-=RA*x;
if(biaozhi1==0)//力不再均布力之间
i++)//集中力的弯矩
Mx-=conforce[i][1]*(x-conforce[i][0]);
for(i=0;
i++)//力偶的弯矩
moment[i][0])
Mx-=moment[i][1];
i++)//均布力的弯矩
Mx-=dengxiaoli[i][1]*(x-dengxiaoli[i][0]);
bre
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 材料力学 实验 报告