有限元分析基础实践报告
问题描述:
有如下两种情况:
(1)设有一厚度为1 mm的矩形薄钢板,长为600mm,宽为120mm,沿长度方向拉伸6mm。
(2)其它参数同上,但假设矩形薄钢板形心处有一直径为4mm的小孔。
(弹性模量为2.07x1011Pa,泊松比为0.3)
问题分析:
情况1:
(1)选择单元类型
运行Main Menu>Preprocessor>Element Type> Add/Edit/Delete命令,弹出单元类型对话框,单击【Add】按钮,弹出单元类型库对话框,选择Structural Solid >Quad 8node 82单元,单击【OK】按钮。
在单元类型对话框中,单击【Options】按钮,弹出PLANE82 Element Type Options对话框,在K3下拉列表框中选择Plane Strs W/Thk,在K5下拉列表框中选择Nodal Stress,在K6下拉列表框中选择No Extra Output。表示单元是应用于平面应力问题,且单元是有厚度的。
(2)定义实常数
运行Main Menu >Preprocessor> Real Constants >Add Edit Delete命令,单击【Add】按钮,在弹出的对话框中单击【OK】按钮,
在THK文本框输入板厚度为1mm。设置完毕单击【OK】按钮。
(3)设置材料属性
运行Main Menu >Preprocessor >Material Props> Material Models命令,在弹出的对话框,双击Structural > Linear >Elastic> Isotropic,在弹出的对话框的EX文本框中输入2.07e11,在PRXY文本框中输入0.3.设置完毕单击【OK】按钮。
(4)建立模型
运行Main Menu> Preprocessor> Modeling> Create >Area >Rectangle> By 2 Corners命令,在弹出的对话框中设置参数,分别在WP X和WPY文本框中输入0,0,在Width文本框中输入600,在Height文本框中输入120,单击【OK】按钮。
(5)划分网格
运行Main Menu >Preprocessor >Meshing >Size Cntrls> Manualsize> Areas >All Areas,在弹出的对话框中的SIZE文本框中输入5,单击【OK】按钮:运行主菜单Preprocessor>Meshing> Mesh Tool,在弹出的对话框的Shape选项区域中,选择Tri和Free 选项,单击【Mesh】按钮,拾取长方形板,划分网格,网格划分如图所示。
(6)施加约束
运行Main Menu> Solution >Define Loads >Apply >Structure> Displacement> On Lines命令,选择长方形的左边,单击【OK】按钮,在弹出的对话框中选择All DOF,单击【OK】命令。
(7)施加载荷
继续运行Main Menu >Solution> Define Loads> Apply >Structure >Displacement >On Lines命令,选择长方形的右边,单击【OK】按钮,在弹出的对话框中选择UX选项,在VALUE文本框中输入6,单击【OK】按钮。
(8)求解
运行Main Menu> Solution >Solve >Current LS 命令,在弹出的对话框中单击【OK】按钮,开始计算,计算结束会弹出计算完毕对话框,单击【Close】按钮关闭对话框,计算完毕。
(9)后处理
运行Main Menu> General Postproc>Plot Result >Contour Plot >Nodal Solu命令,弹出Contour Nodal Solution Data对话框,单击DOF Solution Displacement选择X-component of displacement选项,单击【OK】按钮,得到如图所示X方向位移U云图;继续运行Main Menu >General Postproc> Plot Result> Contour Plot >Nodal Solu命令,弹出Contour Nodal Solution Data对话框,单击DOF Solution Displacement选择Y-component of displacement选项,单击【OK】按钮,得到如图所示Y方向位移V云图。
运行Main Menu> General Postproc>Plot Result> Contour Plot> Nodal Solu命令,弹出Contour Nodal Solution Data对话框,单击Stress选择X-component of stress选项,单击【OK】按钮,得到X方向应力云图,继续运行Main Menu> General Postproc>
Plot Result >Contour Plot> Nodal Solu命令,弹出Contour Nodal Solution Data对话框,单击Stress选择Y-component of stress选项,单击【OK】按钮,得到Y方向应力云图,
情况2:
(1)选择单元类型
运行Main Menu>Preprocessor>Element Type> Add/Edit/Delete命令,弹出单元类型对话框,单击【Add】按钮,弹出单元类型库对话框,选择Structural Solid >Quad 8node 82单元,单击【OK】按钮。
在单元类型对话框中,单击【Options】按钮,弹出PLANE82 Element Type Options对话框,在K3下拉列表框中选择Plane Strs W/Thk,在K5下拉列表框中选择Nodal Stress,在K6下拉列表框中选择No Extra Output。表示单元是应用于平面应力问题,且单元是有厚度的。
(2)定义实常数
运行Main Menu >Preprocessor> Real Constants >Add Edit Delete命令,单击【Add】按钮,在弹出的对话框中单击【OK】按钮,在THK文本框输入板厚度为1mm。设置完毕单击【OK】按钮。
(3)设置材料属性
运行Main Menu>Preprocessor >Material Props> Material Models命令,在弹出的对话框,双击Structural > Linear >Elastic> Isotropic,在弹出的对话框的EX文本框中输入2.07e11,在PRXY文本框中输入0.3.设置完毕单击【OK】按钮。
(4)建立模型
运行Main Menu> Preprocessor> Modeling> Create >Area >Rectangle> By 2 Corners命令,在弹出的对话框中设置参数,分别在WP X和WPY文本框中输入0,0,在Width文本框中输入600,在Height文本框中输入120,单击【OK】按钮。继续运行Main Menu >Preprocessor> Modeling >Create >Area> Circle> Solid Circle命令,在弹出的的对话框中,在WP X 文本框中输入300,在WP Y文本框中输入60,在Radius文本框中输入2。设置完毕单击【OK】按钮。进行布尔运算,运行Main Menu> Preprocessor >Modeling> Operate>Booleans>Subtract> Area命令,先选择矩形面单击
【OK】按钮,再单击圆面,单击【OK】按钮。得到如图所示图形。
(5)划分网格
运行Main Menu >Preprocessor >Meshing >Size Cntrls>Manualsize> Areas >All Areas,在弹出的对话框中的SIZE文本框中输入5,单击【OK】按钮:运行主菜单Preprocessor>Meshing> Mesh Tool,在弹出的对话框的Shape选项区域中,选择Tri和Free 选项,单击【Mesh】按钮,拾取长方形板,划分网格,网格划分如图所示。
(6)施加约束
运行Main Menu> Solution >Define Loads >Apply >Structure> Displacement> On Lines命令,选择长方形的左边,单击【OK】按钮,在弹出的对话框中选择All DOF,单击【OK】命令。
(7)施加载荷
继续运行Main Menu >Solution> Define Loads> Apply >Structure >Displacement >On Lines命令,选择长方形的右边,单击【OK】按钮,在弹出的对话框中选择UX选项,在VALUE文本框中输入6,单击【OK】按钮。
(8)求解
运行Main Menu> Solution >Solve >Current LS 命令,在弹出的对话框中单击【OK】按钮,开始计算,计算结束会弹出计算完毕对话框,单击【Close】按钮关闭对话框,计算完毕。
(9)后处理
运行Main Menu> General Postproc>Plot Result >Contour Plot >Nodal Solu命令,弹出Contour Nodal Solution Data对话框,单击DOF Solution Displacement选择X-component of displacement选项,单击【OK】按钮,得到如图所示X方向位移U云图;继续运行Main Menu >General Postproc> Plot Result> Contour Plot >Nodal Solu命令,弹出Contour Nodal Solution Data对话框,单击DOF Solution Displacement选择Y-component of displacement选项,单击【OK】按钮,得到如图所示Y方向位移V云图。
运行Main Menu> General Postproc>Plot Result> Contour Plot> Nodal Solu命令,弹出Contour Nodal Solution Data对话框,单击Stress选择X-component of stress选项,单击【OK】按钮,得到X方向应力云图,继续运行Main Menu> General Postproc>
Plot Result >Contour Plot> Nodal Solu命令,弹出Contour Nodal Solution Data对话框,单击Stress选择Y-component of stress选项,单击【OK】按钮,得到Y方向应力云图,
第二篇:C语言程序设计基础综合实践报告
昆明理工大学
程序设计基础
综合实践设计报告
课 题 名 称: C语言练习函数调用演示
程序设计语言: 学院: 信息工程与自动化学院 班级: 自动化***
组长: 学号 2008*** 姓名 ***
组员: 学号 学号 学号 姓名 姓名 姓名
指导教师: 秦卫平
20xx年 5 月
《计算机程序设计(C双语)》综合设计实践报告 课程名称: C语言练习函数调用演示 专业年级:自动化081
组长 学号 20081*** 姓名 *** 所选题目 (1)主函数有菜单
选择功能。
(2)温度转换函数
(3)水仙花数。
(4)求最大数
(5)冒泡法排序
(6)乘法表
(7)打印菱形
自评小组工作量 (1—4) 分数 98 100%
设计说
明及功
能描述
(基本
思路及
关键语
句说明)
总结体
会 这个学期,我们学习C语言受益良多,这是一门很有用的学科。通过学习,我知道了C语言的最基本程序,并且录入,注释,修改了一些程序,运用到定义长整形变量,赋初值等方法。从一开始的按课本打印程序,到现在的综合设计,我进步很多,在老师提供模板的情况下已经能够自己完成综合作业,达到老师要求。 再学习过程中,老师同时通过双语教学,锻炼了应用英语的能力,同时给我们讲一些国外大学的事,让我们开阔眼界,学习同时了解了中西文化的一些差异,秦老师是一个很幽默,很有耐心的老师,对我们提
出的问题很耐心讲解,在此感谢!
该生按照实验要求完成了《计算机程序设计(C
双语)》综合设计内容。很好的掌握了应用C语言教师评
语 进行综合设计的基本方法,达到了设计要求。
签名:秦卫平
日期:20xx年6月18
主程序
#include "stdio.h" #include "stdlib.h" #include "ctype.h" #include "math.h" #include "string.h" #include <conio.h> #include <windows.h>
void function_1(); void function_2(); void function_3(); void function_4(); int menu_select();
void main()
{ for( ; ; )
{ switch(menu_select())
{ case 1: function_1() ;break;
case 2: function_2() ;break;
case 3: function_3() ;break;
case 4: function_4() ;break;
case 6: printf("结束程序运行 再见!\n");exit(0);}}}
int menu_select()
{
char s; int n;
printf("\n\n\n 该程序是‘C语言常用程序汇集’演示\n");
printf("
----------------------------------------------------\n\n\n");
printf("程序设计者:***班 *** 学号:2008********\n\n"); printf("
----------------------------------------------------\n\n\n");
printf(" 1:运行‘温度转换’序\n"); printf(" 2:运行‘水仙花数’程序\n");
printf(" 3:运行‘打印菱形’程序\n"); printf(" 4:运行‘乘法表’程序\n"); printf(" 5:运行‘冒泡法排序’程序\n");
printf(" 6:结束程序运行 再见!\n\n"); printf("
----------------------------------------------------\n\n\n");
printf("请输入数字1-6,选择你要运行的程序\n"); do{ s=getchar(); n=(int)s-48; }while(n<1||n>6); return n;
}
//输出乘法表程序
void function_1()
{
float F,C,n;
n=1;
while(n)
{
printf("Please enter the Fahrenheit(10000 exit):");
scanf("%f",&F);
if (F==10000)
break;
else
C=5.0/9.0*(F-32);
printf("%3.1f\n",C);
}
getch();//等待输入一个字符
//Sleep(5000); //延迟5000毫秒。
//delay(5000);
return ;
}
void function_2()
{ for
int i,j,k,n; printf("The narcissus number are:"); for(n=100;n<1000;n++) { } printf("\n"); i=n/100; j=n/10-i*10; k=n%10; if(i*100+j*10+k==i*i*i+j*j*j+k*k*k) {printf("%d ",n);} getch();
}
void function_3() { int i,j;
for(i=0;i<=2;i++) {
for(j=0;j<=2-i;j++) printf(" ");
for(j=0;j<=2*i;j++) printf("*");
printf("\n");
}
for(i=1;i<=2;i++) {
for(j=0;j<=i;j++) printf(" ");
for(j=0;j<=2*(2-i);j++) printf("*");
printf("\n");
getch();
}
return ;
}
void function_4() { int i, j; for(i=1;i<=9;i++) for(j=1;j<=i;j++)
{ printf("%d*%d=%d " , i, j, i*j); if(i==j)printf("\n"); }
printf("\n");
} getch();
程序运行如下:
进入主菜单:
运行“温度转换”程序:
运行“水仙花数”程序:
运行“打印菱形”程序:
运行“乘法表”程序: