版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1,学习目标:,掌握数据处理的基本方法; 学会利用计算机,针对工程设计中不同形式的数据,采用适当的方式进行处理; 掌握经验公式的建立方法;,第三章 工程手册的数据处理,2,计算机对数据资料的处理方法有以下几种:,将设计资料转变为程序,即程序化,将设计资料转变为数据文件;,将设计资料转变为数据库。,数值程序化,线图的程序化,数表程序化,3.1 工程数据的程序化方法,3,定义:数值程序化是将要使用的各个参数或者其函数关系,用一种合理编制的程序存入计算机,以便运行使用。,3.1.1 数值程序化,用数组形式存储数据 数值程序化 用数学公式计算数据,4,用数组形式存储数据,数据特点:数据是单一、严格、无
2、规律可循的数列。,程序化的方法:用数组形式存储数据,程序运行时,直接检索使用。,float m12= 4, 5, 6, 7, 8, 9, 10, 12, 14, 16, 18, 20 24,30 ;,5,3.1.1 数值程序化,例1:将表中的齿轮标准模数值编入程序。要求程序运行时,输入计算模数值后,能输出适合的标准模数值。,6,3.1.1 数值程序化,解题分析:,考察表中数据及实际使用情况,有如下特点:,所列齿轮标准模数是一组取值严格,而从总体上看又无统一规律的的数列。,标准规定:第一系列为优先采用模数;第二系列中不带括号的数值为可以采用的模数;而带括号的为尽可能不采用的模数,程序中应能反映这
3、一标准规定。,通常,模数的计算值取较大的标准值选取。但对于比标准值大得有限的一类计算值(如:计算值为3.01mm,标准值为3mm),应选用本档的标准值。,7,3.1.1 数值程序化,程序流程图如下:,8,9,3.1.1 数值程序化,2用数学公式计算数据,数据特点:,数据是一组单一、严格、但能找到某种规律的数列。,程序化的方法:,将反映这种规律的数学公式编入程序,通过计算即可快速、准确地达到目的。,例2:将60,70,80,90,100,110,120这一标准直径系列编入程序。,解题分析:,这组数值是按10递增的,可导出数学公式,公式:D=INT(Dc/10.02)*10+10,10,定义:用程
4、序完整、准确地描述不同函数关系的数表,以便在运行过程中迅速有效地检索和使用数表中的数据。,1屏幕直观输出法,数据特点:,1)数表幅面不大; 2)数据为实验取得或长期经验积累的有限个离散数值; 3)实际使用中经常允许根据情况综合考虑,选取中间数值,仅凭程序中简单的条件判断难以正确选取。,3.1.2 数表程序化,11,3.1.2 数表程序化,程序化的方法:,将整个表格可视化地显示在屏幕上,由用户凭经验自行选定。,例3: 将齿轮传动强度计算中的使用系数KA数表程序化。要求根据原动机工作特性和工作载荷特性确定适宜的使用系数KA。,使用系数KA,12,3.1.2 数表程序化,解题分析:,1)表格幅面不大
5、、数据有限; 2)KA是经验值,实际应用允许根据情况综合考虑,选取中间数值; 3)仅凭程序中的简单的条件判断难以正确选取。此时,可采用屏幕直观显示整个数表的方法,让用户凭经验自行选取KA。,13,3.1.2 数表程序化,2数组存储法,数据特点:,如果表格中的数据项目略多、确定而无规律,要解决的问题就是数据的存储与检索;,程序化的方法:,采用定义多个一维数组或二维数组的办法存储数据,程序运行时,判断选取。,1)一维数表处理 例4:将平键和键槽与轴径的尺寸关系表程序化。 要求:输入轴径后,能输出相应的键和键槽的剖面尺寸ds,dw。,14,平键和键槽的剖面尺寸(部分),解题分析:,表中数据有如下特点
6、:,项目多、确定而无规律。,每组键槽尺寸要适应一定范围尺寸的轴径使用。,15,16,17,18,2)二维数表处理 定义:需由两个已知条件才能确定一个未知数据的表格,称为二维数表 例5 对例4的数表进行程序化处理 解题分析: 如表所示,决定齿轮工况系数KA的值有两个自变量,即原动机的载荷特性和工作机的载荷特性。这两个特性原本无数值概念,现用及分别代表原动机和工作机的载荷特性,用一个二维数组ka33表示表中的系数KA。,19,C程序如下: #include main() int i,j; float ka33=1.0,1.25,1.75,1.25,1.5,2.0,1.5,1.75,2.25; wh
7、ile(1) printf(“请输入原动机的载荷特性(0,1,2):”); scanf(“%d”, ,20,3.数表的文件化,数表较大或涉及的数表较多时,采用文件化处理,可使程序简练,还可使数表与应用程序分离,实现一个数表文件供多个应用程序使用,并增强数据管理的安全性,提高数据的可维护性。 例6 将例4表中的平键和键槽尺寸建立数据文件,利用所建数据文件,按结构设计给的轴径尺寸检索所需的平键尺寸和键槽尺寸。 生成key.dat文件的C程序 #include #define num=#;#按实际记录数赋值 Struct key_GB float d1,d2,b,h,t,t1; key;,21,vo
8、id main() int I; FILE *fp; if(fp=fopen(“key.dat”,”w”)=NULL) printf(“Cannot open the data file”); exit(); ) for(i=0;i.;j+) printf(“record%d:d1,d2,b,h,t,t1=”,i); scanf(“%f,%f,%f,%f,%f,%f”, ,22,利用所建的数据文件key.dat,通过设计得到的轴径尺寸检索所需的平键和键槽尺寸,其关键的C语句如下: while(1) printf(“Input the shaft diameter d=”); scanf(“%f
9、”, ,23,工程手册中的数据主要有两大类来源: 具有明确的函数关系,经过计算后将其离散结果以表或曲线形式表达出来 查找其原始的数学函数进行编程即可 通过大量实验和经验获取的数据制成表格可用经验公式进行处理,3.1.2 数表程序化,线性插值法,拉格朗日插值法,4数表的公式化处理,经验公式处理,插值法,曲线拟合法,24,3.1.2 数表程序化,在机械设计中,有时数表中的数据不足以满足设计要求,这就要求设计者根据数表的数据范围和趋势找到合适的数据 例3 如下表3所示,将蜗轮当量齿数Zv与齿形系数YF的关系数表程序化,要求输入Zv能输出对应的YF值。,25,3.1.2 数表程序化,列表函数,插值法的
10、基本思想是: 在插值点附近选取几个合适的结点,过这些结点构造一个函数g(x),在此小段上用g(x)代替原来函数f (x),当精度满足要求时,插值点的函数值就用g(x)的值来代替。因此插值的实质是如何构造一个既简单又具有足够精度的函数 g(x)。,26,3.1.2 数表程序化,原理 已知插值点P的相邻两点: y1= f ( x1 ),y2 = f ( x2 ),近似认为在此区域,函数呈线性变化,用过P1、P2两点连线的直线 g (x)代替原来函数 f (x),则插值点函数为:,缺点:误差大,X,Y,线性插值,27,(2)抛物线插值,原理: 在f(x) 上取3个点,过这3个点做抛物线g(x),以g
11、(x) 替代f(x),显然可以获得比线性插值精度好的结果,28,29,3.1.2 数表程序化,线性插值公式:,同理推导出二次插值多项式:,其中:,若设:,(3)拉格朗日插值法,30,在工程设计中,经常要用到表示各参数间关系的线图 线图的程序化有以下几种方法: 找出线图原来的公式,将公式编入程序; 将线图离散成数表,然后用前面所述的数据表格的程序处理方法将其程序化,当所取得点不在结点上时,就要进行插值;缺点:误差大 用曲线拟合的方法求出线图的经验公式,再将公式编入程序。,3.1.3线图的程序化,31,线图的离散化处理,分割离散的原则: 各分割点间的函数值相差不大 分割点的选取随曲线的形状而异,陡
12、峭部分分割密集一些,平坦部分分割稀疏一些,为了将曲线图变换成数表,可将曲线进行分割离散,用这些分割离散点的坐标值列成一张数表,当变位系数x=0,渐开线齿轮的当量齿数 Zv 和齿形系数 Y 之间的关系曲线,32,把变位系数 x 取不同数值时所对应的曲线都画在同一坐标平面内,就得到不同 x值时当量齿数 Zv与齿形系数 Y 之间的关系曲线图 每条曲线可变换成一张一维数表,则m条曲线的线图就可变换成m张一维数表,这些数表组合在一起就是一张二维数表,渐开线齿轮的齿形系数,33,渐开线齿轮当量齿数和齿形系数的关系,34,转换后的数表只能表示曲线上有限点处的变量关系,若要查找曲线上任意点处的变量值,要用插值
13、方法,数表公式化处理方法:函数插值 曲线拟合,数据间存在某些联系或函数关系的列表函数应尽量进行公式化处理,充分利用计算机高速计算功能,线图的公式化处理,35,(1)直线线图的处理 这是线图中最简单的情况,通过任取直线上的两点求其斜率,进而写其直线方程编入程序即可。 (2)曲线线图处理 一般采用拟合的方法在允许的误差范围内建立曲线图的近似式,曲线拟合的方法很多,此处仅介绍常用的最小二乘法。,图3-7 齿轮传动的动载系数,36,曲线拟合的方法: 构造近似曲线,此曲线并不严格通过所有节点,而是尽可能反映所给数据的趋势,这种利用所给数据建立曲线经验公式的过程称为曲线拟合。 拟合原理 最小二乘法拟合的基
14、本思想是: 设由线图或实验所得m个点的值为:(x1,y1 ),(x2,y2 ),(xm,ym ) 构造拟合公式为: y=f (x ) 则每一结点处的偏差为: S i= f (xi )y i 偏差的平方和为: S (a, b) = f (xi )yi 2 要求所构造的拟合公式 y = f ( x ) 保证偏差的平方和为最小,这就是最小二乘法的曲线拟合。,37,线性方程拟合 有n组实验数据(xi ,yi ),设拟合方程的形式是: y = a + b x,最小二乘法原理:为了达到最好拟合,应使各节点的最小偏差平方和为最小。 则:,最小二乘法处理的任务就是求直线方程中的系数a和b,38,对上式求偏导并
15、使之为零:,39,令X=ln x, 则: y = a + b X 最小二乘法原理,其偏差平方和:,2) 对数方程拟合 设有n 组实验数据(xi , yi ),设拟合方程形式为: y = a + b ln x,原理采用变量代换的方法,使之回归为线性方程形式。,与线性方程拟合的处理方法相同,可求出系数a,b值。,40,3) 指数方程拟合 有n组实验数据(xi ,yi ),设拟合方程形式为:,原理:采用变量代的方法-回归为线性方程形式。,对方程两边取对数,得: ln y = ln a + b ln x 令: Y = ln y,A = ln a,X = ln x,得线性方程 : Y = A + b X
16、 同理求出系数A,b。则: a = e A,其偏差平方为:,41,4)对数指数方程拟合 有n组实验数据(xi ,yi ),设拟合方程形式为: 对方程两边取对数,得: ln y=ln a +b x 令Y=ln y,A=ln a,则 Y=A + bx 同理可求出A,b值;则: a= e A 其偏差平方和为:,42,5)二次多项式拟合 有n组实验数据(xi ,yi ),设拟合方程的形式为: y=a+bx+cx2 设S(a , b, c)为偏差平方和,则:,对上式求偏导并使之为零,整理得:,43,3.拟合实例 例4 将O型带长度系数KL与内周长Li之间关系数据(表3.6)程序化。要求输入内周长Li时,
17、程序应给出相应的长度系数KL。,44,线性方程:KL=0.8352+2.009E-04Li 偏差平方和:S=6.098E-03;有差值数组数:11; 最大差值 0.04 对数方程:KL=0.40399+0.21168(Li) 偏差平方和: S=3.74E-04 有差值数组数:3; 最大差值 0.01 指数方程:KL=0.25873 Li0.20328 偏差平方和: S=8.637E-03 有差值数组数:13; 最大差值 0.05 对数指数方程:KL=0.8519e (1.9E-04Li) 偏差平方和: S=6.38E-04 有差值数组数:9 ; 最大差值 0.01 二次方程:KL=0.7221
18、+4.33E-04Li9.8E-08Li2 偏差平方和: S=3.45E-04 有差值数组数:4 ; 最大差值 0.01,45,上机程序1,将O型带长度系数KL与内周长Li之间关系数据(表3.6)程序化。 要求: 1)编写:线性方程、对数方程、指数方程、对数指数方程等四种曲线拟合法的程序; 2)计算每种方法的偏差平方和、有误差的组数及最大误差; 3)输入内周长Li时,程序应给出相应的长度系数KL。,46,47,#include #include #include #include void display(int n,double *x,double *y,double *p); main()
19、 double x =450,500,560,630,710,800,900,1000,1120,1250,1400,1600,1800,2000, y =0.89,0.91,0.94,0.96,0.99,1.00,1.03,1.06,1.08,1.11,1.14,1.16,1.18,1.2, e,f,g,h,a,b,*p,*pp,d;,48,int i,n,m; e=f=g=h=d=0; puts(ntselect mathed of compute,please); printf(nt1.y=a+bx 2.y=a+blnx 3.y=aXb 4.y=aebxn); scanf(%I,49,f
20、or(i= 0;in;i+) if(m=2) xi=log(xi); if(m=3) xi=log(xi);yi=log(yi); if(m=4) yi=log(yi); e+=xi; f+=yi; g+=xi*xi; h+=xi*yi; b=(h-(e*f)/n)/(g-e*e/n); a=(f-b*e)/n;,50,if(b!=0) printf(“ntY=%.5f+%.5fX”,a,b); else printf(“ntY=%.5f”,a); for (i=0;in;i+) *p=a+b*xi; d+=(yi-*p)*(yi-*p+); printf(“ntS=%.6f”,d); dis
21、play(n,x,y,pp); puts(nt_The end._n); return 0; ,51,/*print*/ void display(int n, double *x,double *y,double *p) int w,o,r,yo,dn=0; double dy,sy=0; puts(nntXttYttYttdYt%); puts(t-); for (w=0;wn;w+) if(xw=1e-30)xw=0; if(yw=1e-30)yw=0; dy=yw-pw;,52,if(fabs(dy)sy)sy=fabs(dy); if(dy)dn+; printf(“nt%.2f t
22、t%.2f tt%.2f tt%.2f”,xw,yw,pw,dy); puts(nt-); printf(“ntdY(num)=%-i,t|dYmax|=%.2fn”,dn,sy); return; ,53,工程数据文件化通常采用两种类型文件,一是文本文件,二是数据文件。 同一文件的逻辑结构可以有多种物理组织方法,也可对文件进行需要的操作。 1)顺序文件 在顺序文件中,数据的物理存储顺序与逻辑顺序一致,即它的物理存储空间是连续的。 2)索引文件 索引是指用索引法列出关键字与相应记录的地址对应表。,3.2 工程数据的文件化处理,54,表3-12 平口钳装配图明细表的索引数据文件 (a)主体数据文
23、件;(b)无序索引;(c)有序索引,(a),55,(b) (c),56,3)多重链表文件 与顺序文件相比,链表文件中记录的物理存储顺序与逻辑顺序可以不一致。 1)根据n个关键字来查询某条记录时,在建立数据文件的过程中,每个记录上增加n个指针项,每个指针项指向包含相应次关键字的下一个记录的地址。 2)分别建立每个次关键字的索引表 根据该索引表组查询记录。,57,表3-13 多重链表数据文件,58,表3-14次关键字索引表 (a)零件名索引;(b)材料索引,(a) (b),59,文件的操作,文件的操作主要表现在两个方面,一是查找,二是排序。 1)查找 即寻找关键字为某值的记录,或从数组中寻找某个确
24、定的数据。常用的查找方法有三种: 顺序查找法 从第一个记录开始,逐个查询,若找到欲查数值,则查找成功。否则,查找失败。这是一种最简单的、但效率较低的方法。 折半查找法 又叫二分查找法,即先将文件记录按关键字大小顺序排列。,60,再将查找范围中点处关键字 与待查记录关键字K 比较,应为下列三种情况之一: ,确定待查记录在文件前半区域。 ,确定该记录为待查记录。 ,确定待查记录在文件后半区域。 若为第二种情况,则查找成功;若为第一或第三种情况,则在指定的查找区域中继续顺序查找,或逐次折半查找;或直至过程结束还未查找到所需键值,则查找失败。 分块查找法 与折半查找法类似,只是要先将关键字排好序的文件划分为大于2的若干块;再将待查关键字依次与各块的最大关键字比较,确定查找范围;然后顺序查找。,61,2)排序 对文件中记录的关键字(或数组元素值)按递增或递减的顺
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学主题班会课件-文明礼仪从身边做起
- 合作项目后期保障措施确认函5篇范文
- 2026亚马逊裁员面试题及答案
- 2026大众教育面试题目及答案
- 2026海关派遣面试题及答案
- 黑龙江省齐齐哈尔市2026年中考地理真题附答案
- 2026四川宜宾市珙县县属国有企业第一次招聘调整部分岗位开考比例等相关事宜考试备考试题及答案详解
- 2026江苏淮安市金湖县招聘公益性岗位工作人员1人(第三批)笔试模拟试题及答案详解
- 2026四川宜宾市选调公务员14人笔试参考题库及答案详解
- 职业卫生技术服务专业技术人员考试(职业卫生检测)模拟题库及答案(2026年仙桃)
- 2026年攀枝花市东区社区工作者招聘笔试参考试题及答案详解
- 2026年山西长治市屯留区公益性岗位人员招聘45人(一)模拟试卷及参考答案详解(考试直接用)
- 电商代运营服务合同模板2026三篇
- 2025天津泰达产业发展集团所属企业员工岗位社会化公开招聘笔试历年参考题库附带答案详解
- 2026届山东省济南市高三三模英语试题(含答案和音频)
- 施工现场用电安全专项检查方案
- 慢阻肺急性加重管理方案
- 韶关项目产品申报及资料准备指南
- 海军与海洋知识进校园
- 业余无线电A类操作证考试全题库及答案解析
- 屋顶sbs防水施工方案
评论
0/150
提交评论