可视化计算》第8章计算工具的评估和选择.ppt
《可视化计算》第8章计算工具的评估和选择.ppt》由会员分享,可在线阅读,更多相关《可视化计算》第8章计算工具的评估和选择.ppt(54页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第8章 计算工具的评估和选择可视化计算1http:/学习目标如何评估计算工具的能力与局限?如何将RAPTOR中实现的算法转换成其他程序设计语言的版本?为何要在不同的计算工具之间进行选择?面向过程与面向对象的程序有何不同?是否可以将其他语言实现的程序算法转变为流程图来方便分析?2http:/计算工具的能力与局限评估在所有数字化计算工具中,都存在一种表达能力极其局限性。二者是相互依存,共同存在的3http:/计算工具的表达能力PythonExcel4http:/误差的来源1描述误差(实际问题与数学模型之间)2观测误差(仪器本身的精度)3截断误差(用收敛的无穷级数的前几项来代替无穷级数)4舍入误差(
2、用有限位小数来代替无穷小数)5http:/RAPTOR中的误差6http:/IEEE 754-一个计算机误差规范描述了在二进制计算机中应如何存储浮点数。它之所以得到广泛采用,原因是它允许在合理的空间量中存储浮点数,以及相对快速地进行计算IEEE 754的规定 最大/最小限制精度二进制循环数字7http:/最大/最小限制因为用于存储数字的内存位数是有限的,所以,可以存储的最大数或最小数也是有穷的对于 RAPTOR,可以存储的最大数是 1.79769313486232E+308,而可以存储的最小正数是 2.2250738585072E-3088http:/RAPTOR遵守 IEEE 754 的情况
3、下溢:当产生了一个因太小而无法表示的数字时,会发生下溢。在IEEE和RAPTOR 中,结果是0。上溢:当数字因太大而无法表示时,会发生上溢RAPTOR 使用它自己的特殊表示方法来表示此情况(+Inf*)9http:/RAPTOR不遵守 IEEE 754 的情况正/负无穷大:被0除时出现RAPTOR不支持无穷大,在此类情况下它会给出“Cant divide by zero”错误。非数字(NaN):NaN 用于表示无效的运算(例如:-1 的平方根)RAPTOR 会立即生成错误(例如:“Cant take square root of negative number”)10http:/RAPTOR精
4、度问题RAPTOR浮点数以二进制存储,并分为三个部分,总长度为64位:符号、指数和尾数。1个符号位 11位指数52位尾数符号存储数字的符号(正或负)指数存储使数字增大或减小到的2的幂(最大/最小的2的幂是+1,023 和-1,022)尾数存储实际的数字尾数的有限存储区域限制了两个相近的浮点数能够接近的程度(也即精度)11http:/RAPTOR精度问题在RAPTOR的默认精度默认精度情形下,可以有以下两种计算数值:整数,最长为整数,最长为1010位有效数值位有效数值例如:1073741824(230)浮点数浮点数,最长为最长为1515位有效数值位有效数值,初始默认四位小数例如:56294995
5、3421312.0000(249)或0.110012http:/RAPTOR精度问题set_precision()设置小数位后的精度,设置以后,系统中所有数值全部使用浮点数表示(不再有整数表达)13http:/二进制循环数字(0.1)10转为二进制会成为无限循环小数IEEE754因此产生截断误差14http:/算法环境的转换RAPTOR原型(Prototype)算法设计工具所产生的算法用到各种科研和工程实践中,需要转变成为用户要求的环境中可以运行的程序RAPTOR提供将已经实现的算法转换为不同的程序设计语言(Ada、C+、C#、Java等)的功能15http:/RAPTOR-C+(Hanoi塔
6、)16http:/RAPTOR-C+(Hanoi塔)主要修改和差异:为所有的RAPTOR算法中的变量设计C+的变量类型在C+中对所有的变量名的大小写敏感大小写敏感在屏幕输出过程中,C+环境一般不支持类似“+”这样的字符串连接符,而是需要用”C+(快速排序)18http:/RAPTOR-C+(文件I/O)C+文件操作的语句包括:文件输入输出头文件:fstream;输入流定义和输入文件打开:ifstream redirect_input(m101-data.csv,ios:in);文件数据输入到变量:while(redirect_inputtemp);输入文件关闭:redirect_input.c
7、lose();19http:/RAPTOR-C+(数组)数组声明(int*arr_Data=new int105;C+的特点:指针规定了数组的最大元素个数:105C+的特点,数组预先定义的大小不可逾越C+中的指针(*)和地址(&)等特殊形式来传递子程序(函数)形式参数中的数组类参数void QkPass(int*R,int i,int j,int&QkPass_result)20http:/RAPTOR-C+(子图、子程序)RAPTOR子程序会自动识别成为C+的函数但RAPTOR的子图转成的C+程序中,无法识别子图的存在(例如RAPTOR算法中的Input_file_data和Output_f
8、ile_data子图),只是按照main子图对其他子图的调用顺序,依次将其他赋值、决策和循环语句进行转换21http:/RAPTOR-C+(随机漫步)22http:/RAPTOR 转换的C+图形指令与WinBGIm图形库的对比RAPTOR转转换换的的C+图图形指令形指令WinBGIm图图形形库库指令指令备备注注-#include 包含需要的C+头文件open_graph_window(field_width,field_height);set_window_title(Random Walk);initwindow(field_width,field_height,Randem Walk);初
9、始化图形视窗并设置其标题栏draw_circle(Center_x,Center_y,10,green,true);circle(center_x,center_y,10);绘制圆形display_text(10,400,This time the distance is+getdist,black);outtextxy(10,400,This time the distance is:);在图形视窗显示文字23http:/C+的薄弱环节在于不同类型变量的转换WinBGIm图形库支持字符串的显示,但不支持数值变量直接在图形视窗输出须将数值类的变量getdist(漫步终点与出发点的距离),转变成
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 可视化 计算 工具 评估 选择
限制150内