Matlab-基于GUI的误差分析与数据处理

合集下载

基于MATLAB在误差处理中的应用毕业设计(含源文件)

基于MATLAB在误差处理中的应用毕业设计(含源文件)

毕业论文任务书一、毕业论文题目 MATLAB在误差理论中的应用二、毕业论文工作自______ ___年____ _月___ __日起至____ _____年月_____日止三、毕业论文进行地点:四、毕业论文内容要求:传统的数据处理方法基于数理统计的理论,计算量较大,数据繁多。

MATLAB程序语言是一种高性能的数值计算软件,将二者结合起来,研究MATLAB程序语言在误差处理中的应用,研究MATLAB程序语言在误差处理中的优点,设计一个误差处理中粗大误差的自动判断,在线剔除,随机误差的数据处理,试验结果的自动生成,回归方程的快速建立的实用型软件。

基于以上过程要求,提出以下毕业论文内容要求:1.查找、搜集、整理、研究MATLAB程序语言的相关文献资料,结合目前误差理论与数据处理在实际使用中存在的问题,提出设计方案。

2.学习MATLAB程序语言,熟悉其各项功能。

进而查阅相关资料,获取目前MATLAB技术在误差数据处理中应用的情况,提出设计方法。

3.设计完成误差处理中粗大误差的自动判断,在线剔除,随机误差的数据处理,试验结果的自动生成的实用型软件,给出源程序,评价其优缺点。

4.完成“MATLAB在误差理论中的应用”论文撰写。

5.完成一篇相关外文文献翻译(要求4000字以上)。

指导教师系(教研室)系(教研室)主任签名批准日期接受论文任务开始执行日期学生签名MATLAB在误差理论中的应用[摘要]利用MATLAB辅助教学手段,传统误差数据处理要花费很长时间才能完成的处理仅仅几秒钟就可以得出其结果,且非常直观。

这在实际误差数据处理中具有很高的使用价值,可以节约大量的时间,达到事半功倍的效果。

另外,通过MATLAB强大的图形功能以及GUI界面,不仅能方便地将数据图形化,还可以在误差处理的应用中创造一个良好的人机界面。

因此,MATLAB在误差理论中的应用是一个非常值得研究的问题。

[关键词]MATLAB GUI 误差数据处理人机界面Application of MATLAB in Error TheoryMA KUI(Grade 08, Class 02,Major measurement control technology and instruments,School Mechanical,ShaanxiUniversity of Technology,Hanzhong,723003,Shaanxi)tutor: JING MINAbstract:The traditional error data processing always takes quite a long time to complete ,but using MATLAB auxiliary teaching method the processing will only take a few seconds to get the results and it’s very intuitive. In this paper ,the error data processing is with high value, and it can save a lot of time to achieve a multiplier effection. In addition, through the powerful graphics capabilities of MATLAB and GUI interface, graphical data can not only conveniently be got, but also for the error data processing application to create a good man-machine interface. Therefore, the application for the MATLAB in the error theory is absolutely worth researching.Key words:MATLAB,GUI,error,data processing, man-machine interface目录1.绪论 (1)1.1研究误差的意义 (1)1.2 误差的基本概念 (1)1.2.1 误差的定义及表示法 (1)1.2.2 误差来源 (3)1.2.3 误差分类 (4)1.3 MATLAB软件介绍 (5)1.3.1 MATLAB软件的基本特点 (5)1.3.2 MATLAB桌面平台 (5)1.3.3 MATLAB标点的含义 (5)1.3.4 MATLAB文件的类型 (6)1.4 本文主要研究意义及内容 (7)2. 误差的基本性质与处理 (9)2.1 随机误差 (9)2.1.1 随机误差的产生原因 (9)2.1.2 正态分布 (9)2.1.3 算术平均值 (11)2.1.4 测量的标准差 (12)2.1.5 测量的极限误差 (17)2.2 系统误差 (19)2.2.1 系统误差产生的原因 (19)2.2.2 系统误差的分类和特征 (19)2.2.3 系统误差的发现方法 (20)2.2.4 系统误差的减小和消除 (22)2.3 粗大误差 (24)2.3.1 粗大误差产生的原因 (24)2.3.2 判别粗大误差的准则 (24)2.3.3 粗大误差判别方法比较 (26)3.MATLAB在误差处理中的程序设计 (27)3.1 随机误差的处理程序设计 (27)3.2 系统误差的程序设计 (27)3.2.1 线性系统误差的程序设计 (27)3.2.2 周期性系统误差的程序设计 (28)3.3 粗大误差程序的设计 (28)3.3.1 3σ法判断粗大误差程序设计 (28)3.3.2 罗曼诺夫斯基准则判断粗大误差程序设计 (29)3.3.3 格罗布斯准则判断粗大误差 (30)3.3.4 根据测量个数自动对测量数据进行判断的程序设计: (31)4. MATLAB GUI介绍 (33)4.1 GUI控件对象及其属性 (33)4.2 GUI开发环境 (36)4.3 GUI程序设计步骤 (38)5.MATLAB在误差处理中的GUI设计 (39)5.1 程序功能设计 (39)5.2 程序界面设计 (39)5.2.1 界面控件对象布置设计 (39)5.2.2界面控件的属性设置 (41)5.2.3 界面美化 (41)5.3 控件代码程序设计 (43)5.3.1 openingFcn程序设计 (43)5.3.2 “选取文件”按钮的回调函数设计 (44)5.3.3 “粗大误差方法选取”案板的选择函数程序代码设计 (48)5.3.4 “开始计算”按钮的回调函数程序代码 (50)5.3.5 下拉菜单的绘图选项的选取函数代码程序设计 (51)5.3.6 “绘图”按钮的回调函数代码程序设计 (52)5.3.7 对翻页按钮进行回调函数代码程序设计 (53)5.3.8 “剔除粗大误差”按钮的回调函数代码程序设计 (54)5.3.9 “退出”按钮的回调函数 (56)5.4 GUI界面的程序测试 (57)5.5 GUI转换成为可独立运行的exe文件 (64)总结 (67)致谢 (68)参考文献 (69)外文原文及翻译附录A附录B1.绪论1.1研究误差的意义人类为了认识自然与遵循其发展规律用于自然,需要不断地堆自然界的各种现象进行测量和研究。

基于MATLABGUI的加工误差的统计分析系统

基于MATLABGUI的加工误差的统计分析系统

1 零 件 加 工误 差统 计 分 析 理 论
加工 误 差 的统 计 分析 通 常 包括 两 种 方法 , 即分 布 图分析 法和 X— R 图分析 法[ . 】
1 1 分 布图分 析 法 .
制 线 ;) 4 确定 工序能 力 和工序 等级 . 在 .— R 图上标 出 中线 和上 下 控 制线 , 据 图 z 根 中点 的波动是 否异 常 来 判 别 工艺 过 程 是 否稳 定 . 所 谓 正常 波 的要 求有 : ) 有点 超 出控 制 线 ; ) 1没 2 大部分 点 在 中线上下 波动 , 小部 分在 控制 线附 近 ; ) 3 点没有 明显 的规 律性 . 采用 z—R 图 , 以有效 判断工 艺过 可 程 的稳 定性 .
分布 图分 析法 可 以得 出的 结论 : ) 1 以工件 尺 寸 为横 坐标 , 以频 率 密度 为 纵 坐 标 , 计样 本 容 量 , 统 选 择合 适 的组数 和组 距 , 终 得 出该 批 零 件 加 工尺 寸 最
的实 验 分 布 图 ; ) 算 出 该 样 本 的 统 计 数 字 特 2计 征一 平 均值 z和标准差 ; ) 出理论 分 布曲线 , 一 3得 因为相互 独立 的大 量微 小 随机 变 量 , 总 和 的分 布 其 总 是符 合正 态分布 的 ; )根据 ± 3 则 , 定 正态 4 原 确
进行 直 方 图及 理论 正态 分 布线 分 析 , 以判 断 可 整批 工件 的加工 精度 , 并估 算 出产 品不 合格 率. 分布
图 分析法 只能判 别 加 工误 差 性 质 , 定 工序 能 力 及 确
很 难 用单 因素进 行计 算 分 析 , 须 通 过对 加 工 出 来 必
的一批 零件 进行 检查 测 量 , 用 数 理 统计 的方 法 加 运

基于MATLAB的误差数据处理实验报告

基于MATLAB的误差数据处理实验报告

结果:
X=
l 1 1.0280 x1 1.015 0.9830 ˆ 1 X l 2 0.985 x2 ( A A) A L l 3 1.0130 1.020 x3 L 5. 一元线性回归分析 l 2 . 016 4 l 1.981 6 5 3.032 l 6
误差理论与数据处理 实验报告
班 学 姓
级 号 名
测控 10-1 13 刘英皓 庄 严
指导老师
2012 年 7 月 5 日
测控 10-3
刘英皓
前言
门捷列夫说:“科学是从测量开始的” 钱学森说:“新技术革命的关键技术是信息技术。信息技术由测量技术、计 算机技术、通讯技术三部分组成。测量技术是关键和基础”。 测量技术是新科技革命的关键部分,科学技术的发展与实验测量密切相关。 在进行实验测量时,产生误差是不可避免的。因此,必须借助误差理论,研究、 估计和判断测量的数据和结果是否精确可靠,并采用正确的数据处理方法,以提 高测量结果的精确程度。 误差理论是我们认识客观规律的有力工具,是工程学科 学生应该掌握的基础知识 。 但是与此同时, 误差理论具有较为繁复的数据处理量, 有时候面对这些数据, 我们也无能为力,习惯采用经验估计去解决现实问题。毋庸置疑,这样做,引入 的误差必然相当大。 MATLB 具有强大的数据处理能力,若是借助 MATLB 处理那些难以处理的 数据,既可以节约时间,又可以提高精确度。本实验的主旨,就是通过使用 MATLAB 处理数据,让我们体会计算机辅助处理数据优点,让我们更直接,更 直观观察结果。
1
测控 10-3
ቤተ መጻሕፍቲ ባይዱ
刘英皓
实验目的:利用

基于MATLABGUI实现随机信号的分析与处理

基于MATLABGUI实现随机信号的分析与处理

Abstract: Using MATLAB GUI as software development platform, designs the system of random signal analysis and processing is designed. The system is based upon the basic theory and methods of random signal analysis , analyzes their correlation and power spectral density, masters the spectrum of both useful signal and noise signal, designs the FIR digital filter to remove the noise and extract the useful signal, so effectively completes the random signal denoising. The system is elegant in interface design, easy and simple in functional design and convenient to further expansion. The experiment shows that the system has achieved the random signal analysis and processing better. Key words: random signal analysis ; signal processing ; MATLAB GUI ; FIR digital filter
1-Σai z-i

(精品word)MATLAB在测量误差分析中的应用

(精品word)MATLAB在测量误差分析中的应用

MATLAB在测量误差分析中的应用在技术测量中,按照误差的特点与性质,误差可分为:系统误差,粗大误差和随机误差。

在假定不含有系统误差的情况下,可借助MATLAB对测量数据进行处理,使处理过程快速、结果可靠。

处理测量数据的处理过程如下:(1)按测量的先后顺序记录下个测量值X;i(2)计算算术平均值X;(3)计算残余误差h;(4)校核算术平均值及残余误差V;i(5)判断是否有粗大误差,若有,剔除;(6)计算单次测量的标准差;(7)计算算术平均值的标准差:(8)计算算术平均值的极限误差;(9)列出测量结果。

误差处理时常用的MATLAB函数其算法流程图如下:例:现对某被测量进行20次测量,得到测量序列x,其中第1个数为粗大误差,需运用莱以特准则将其剔除,再对数据进行分析计算,具体程序如下:close allclearclcx= [28.0057 24。

9974 24。

9962 24.9970 24。

9852 24。

9977 25.0012 25。

0031 25。

0144 24。

9965 25.0062 25。

0080 25。

0094 24.9901 25.0021 25。

0024 24。

9899 24。

9926 25.0108 24.9987]; %含有粗大误差的测量值序列aver=mean(x) % 求该序列的平均值v=x-aver; %测量值的剩余误差s=std(x)%测量值的标准差n=length (x); %剔除粗大误差for i=1:nif (abs((x(i)-aver))-3*s) 〉0fprintf('\n’)fprintf(’%ÓдִóÎó²î: ',x(i))x(i)=0;elsecontinueendendx1=x(x~=0) %剔除粗大误差的新测量值序列n1=length(x1);aver1=mean(x1);%新序列的平均值h1=std(x1);aver1 %测量值的最佳近似值s1=h1/sqrt(n1) %算术平均值的标准差运行结果:aver = 25。

基于MATLAB GUI的声速测量实验仿真及数据处理

基于MATLAB GUI的声速测量实验仿真及数据处理

第32卷第4期大学物理实验Vol.32No.42019年8月PHYSICALEXPERIMENTOFCOLLEGEAug.2019收稿日期:2019 ̄03 ̄25基金项目:国家自然科学基金青年项目(61405152)ꎻ西安建筑科技大学青年基金(6040500724)ꎻ西安建筑科技大学人才基金(6040300486)文章编号:1007 ̄2934(2019)04 ̄0079 ̄05基于MATLABGUI的声速测量实验仿真及数据处理郝劲波ꎬ徐仰彬ꎬ武㊀戈ꎬ王凯君(西安建筑科技大学理学院ꎬ陕西西安㊀710055)摘要:提出一种基于MATLAB软件的空气中声速测量实验仿真及测量数据自动处理系统ꎮ该系统以声波在空气中传播时的波动特性为基础ꎬ应用MATLABGUI构建了测量过程动态仿真系统和数据处理系统ꎬ实现了相位法和双踪法测量过程的动态仿真ꎬ以及四种不同测量方法测量数据和不确定度的自动计算ꎬ得到了完整的实验结果ꎮ关键词:声速测量ꎻMATLABGUIꎻ图形界面ꎻ不确定度中图分类号:O4 ̄39文献标志码:ADOI:10.14139/j.cnki.cn22 ̄1228.2019.04.022㊀㊀声波是一种在弹性媒质中传播的机械波ꎬ对诸如频率㊁波长㊁波速㊁声压衰减㊁相位等声波特征量的测量是声学技术的重要内容ꎬ在声波定位㊁测距和探伤等领域ꎬ声速的测量有着非常重要的意义[1]ꎮ测量声速的常用方法有两种ꎬ一种是根据υ=Ltꎬ测出声波传播的距离L和时间间隔tꎬ算出声速ꎬ我们称之为时差法[2]ꎻ另一种是按照波动理论υ=fλꎬ利用驻波法㊁相位法和双踪法等方法测量波长λꎬ利用信号源测出声波的频率fꎬ从而得到声速的大小[3 ̄5]ꎮ为提高声速测量结果的精确性ꎬ需要对测量数据进行计算处理ꎬ分析测量结果的不确定度ꎬ包括A类不确定度和B类不确定度[6 ̄9]ꎮ由于声速测量实验的测量数据通常较多ꎬ而且测量不确定度的计算过程比较复杂ꎬ使得数据处理计算量大ꎬ若利用手工运算ꎬ则繁琐而耗时ꎬ且误差较大ꎮMATLAB软件具有强大的计算功能和绘图功能ꎬ通过GUI可以设计一个人机友好的交互图形界面程序ꎬ可以将实验原理利用动态图形直观的呈现出来[10 ̄12]ꎬ数据处理结果快速㊁准确的显示出来ꎬ能够加深实验原理的理解ꎬ更高效地完成声速测量数据处理[13 ̄14]ꎮ1㊀空气中声速测量原理空气中声速测量实验使用的仪器主要有信号源㊁示波器和主要部件为超声压电换能器的超声波声速测量仪ꎬ实验装置如图1所示ꎮ图1 实验装置示意图1.1㊀驻波法驻波法是利用超声波在发射换能器和接收换能器之间发生干涉ꎬ形成驻波来进行声速测量的ꎮ设发射换能器所发射的平面超声波方程为y1=Aicosωt-2πλxæèçöø÷(1)接收换能器的接收面对部分入射波发生反射ꎬ反射波方程为y2=Arcos(ωt+2πλx)(Ar<Ai)(2)当发射面与接收面平行时ꎬ在发射面与接收面之间某点的合振动方程为:y=y1+y2=A(x)sinωt+α(x)ωéëêêùûúú(3)其中A(x)=A2i+A2r+2AiArcos4πλxꎬα(x)=tan-1Ai+ArAi-Arcot2πλxéëêêùûúúꎮ此时可在示波器上观察到驻波波形ꎮ根据波的干涉理论可知ꎬ在x=(2n+1)λ4的位置ꎬ声波振幅最小ꎬ称为波节ꎮ由于声波是疏密波ꎬ所以当接收器端面按振动位移来说处于波节时ꎬ则按声压来说处于波腹ꎬ这时接收换能器受到的声压最大ꎬ经转换的电信号在示波器上显示的幅度也就最大ꎮ在测量过程中ꎬ连续改变两个换能器之间的距离ꎬ示波器上就会显示出信号幅度的变化ꎬ对应相邻峰的接收换能器的位置之间的距离即为λ2ꎬ其位置可由声速测定仪上的游标卡尺测出ꎮ1.2㊀相位法设发射换能器位于x1处ꎬ接收换能器位于x2处ꎬ则发射换能器所发射的平面超声波方程为x=Aicos(ωt-2πλx1)(4)接收换能器接收到的平面波为y=Arcos(ωt-2πλx2)(5)如果固定发射面ꎬ那么相位差随x2的改变呈周期性变化ꎮ当x2-x1改变一个波长时ꎬ相位差正好改变一个周期ꎬ因此ꎬ准确测量相位变化一个周期时接收换能器移动的距离ꎬ即可得出声波的波长ꎮ测量过程中ꎬ将两个信号分别输入示波器的X轴和Y轴做垂直方向的叠加ꎬ示波器上显示合成的李萨如图形ꎬ其合振动的方程为x2A2i+y2A2r-2xyAiArcos2πλ(x2-x1)=sin22πλ(x2-x1)(6)当x2-x1一定时ꎬ所合成的轨迹即确定ꎬx2-x1每增加一个波长的值ꎬ相同的图形即再次出现ꎬ对应相邻两个相同图形ꎬ接收换能器的位置之间的距离即为λꎮ1.3㊀双踪法双踪法的基本原理为比较两个换能器信号的相位ꎮ将发射信号与接收信号分别输入示波器ꎬ同时显示两个信号的波型ꎬ以发射换能器的信号为相位基准信号ꎬ即可观测出两个信号的相位差ꎮ测量过程中ꎬ单向连续移动接收换能器ꎬ在示波器上可观测到发射换能器信号波形保持不变ꎬ接收换能器信号的幅度㊁相位呈周期性变化(表现为波形向变动方向蠕动)ꎬ并出现接收换能器信号与发射换能器信号的波形周期性的重合现象ꎬ对应相邻两次重合图形ꎬ接收换能器的位置之间的距离即为λꎮ1.4㊀时差法时差法是根据υ=Lt来测量声速的ꎮ利用信号源发出脉冲波ꎬ经由发射换能器发射ꎬ由接收换能器接收并传输回信号源ꎬ利用其中的高精度计时电路读出信号在空气中传播所用的时间ꎬ用游标卡尺读出两个换能器之间的距离ꎬ即可计算出声速ꎮ1.5㊀空气中声速测量实验的不确定度分析声速测量实验的测量不确定度包括A类不确定度和B类不确定度ꎮA类不确定度反映各测量值Δxi的离散程度ꎬ可通过式(8)进行计算Δx=ðni=1Δxin(7)SΔx=ðni=1(Δxi-Δx)2n(n-1)(8)在驻波法测量过程中ꎬλ2=Δxnꎬ在相位法和双踪法测量过程中则为λ=ΔxnꎮB类不确定度为仪器误差限标准不确定度ujuj=Δins3(9)其中Δins为游标卡尺的仪器误差限ꎮ测量的合成不确定度㊀uΔx=S2Δx+u2j(10)EΔx=uΔxΔxˑ100%(11)根据误差传递公式Ev=EΔx声速的不确定度为uv=Ev v(12)2㊀图形用户界面设计利用MATLABGUI设计的声速测量实验仿08基于MATLABGUI的声速测量实验仿真及数据处理真及测量数据自动处理系统ꎬ系统主界面如图2所示ꎬ系统设计流程如图3所示ꎬ系统结构如图4所示ꎮ图2㊀系统主界面图图3㊀系统设计流程图图4㊀系统设计结构图该系统有实验过程仿真和实验数据处理两个界面ꎮ在数据处理界面ꎬ可以通过下拉菜单进行不同测量方法之间的切换ꎬ系统界面和界面内容也可以通过get()和close()函数进行扩展ꎮ2.1㊀实验过程仿真界面实验过程仿真界面包括入射波与反射波波形显示㊁合成波形显示㊁李萨如图形显示和参数设置四个部分ꎮ能够直观㊁准确的仿真㊁演示相位法和双踪法的实验原理和测量过程ꎬ如图5所示ꎮ通过波形参数和换能器之间距离的设置ꎬ可以方便㊁直观的展示不同相位差情况下的合成波波形图和李萨如图形ꎮ换能器之间的距离既可以利用滑块进行拖动设置ꎬ也可以利用自动按钮ꎬ从零距离开始ꎬ进行合成波形连续变化的动态演示ꎬ这也是本系统特有的功能ꎬ可以使仿真过程更加形象㊁生动ꎮ图5(a)㊁(b)㊁(c)分别展示了相位差为0ꎬπ2和34π时ꎬ程序的运行结果ꎮ此外ꎬ该系统也可以通过修改入射波和反射波的波形参数ꎬ进行不同频率比的李萨如图形连续变化的动态演示ꎬ频率比为32时的运行结果如图5(d)所示ꎮ(a)相位差为0(b)相位差为π2(c)相位差为34π18基于MATLABGUI的声速测量实验仿真及数据处理(d)频率比为32图5㊀实验过程动态仿真界面及不同相位差时的运行结果2.2㊀实验数据处理界面实验数据处理程序运行流程如图6所示ꎬ实验数据处理界面如图7所示ꎮ图6㊀实验数据处理界面程序运行流程图图7㊀实验数据处理界面该界面用以完成四种不同测量方法的实验数据的误差分析及数据处理过程ꎬ包括测量数据的逐项逐差ꎬ分组逐差ꎬA类不确定度计算㊁仪器误差限标准不确定度计算㊁合成不确定度计算及数据处理结果显示等六个部分ꎬ通过数据处理按钮实现数据计算及结果显示ꎮ由于四种不同测量方法的数据处理过程不尽相同ꎬ可通过界面右侧的下拉菜单进行不同测量方法之间的切换ꎮ在不确定度的计算过程和结果表示中ꎬ需要对有效数字进行控制ꎬ标准不确定度保留1位有效数字ꎬ相对不确定度保留2位有效数字ꎬ在程序中通过vpa()函数进行控制ꎮ以驻波法测量空气中声速的实验为例ꎬ输入测量数据后ꎬ系统运行结果如图8所示ꎬ实现了测量数据不确定度的正确计算和数据处理结果的正确表示ꎮ图8㊀驻波法实验数据处理界面运行结果3㊀结㊀论基于MATLABGUI的空气中声速测量实验仿真及测量数据自动处理系统ꎬ可以直观㊁形象地的实现相位法和双踪法测量过程的动态仿真ꎬ准确㊁快速的实现测量数据和不确定度的自动计算ꎮ该系统加深了测量者对于空气中声速测量原理及测量过程的理解和认识ꎬ简化了繁琐的数据处理过程ꎬ加快了实验完成的速度ꎮ利用GUI强大的图形绘制及显示功能ꎬ可以方便的实现交互式数据处理和图形输出ꎬ灵活的实现内容扩展ꎮ参考文献:[1]㊀李隆ꎬ昝会萍ꎬ等.大学物理实验[M].北京:高等教育出版社ꎬ2017:218 ̄227.[2]㊀赵西梅ꎬ李向亭ꎬ周红ꎬ等.超声波声速测量的拓展实验[J].物理实验ꎬ2014(12):33 ̄35.[3]㊀邵维科ꎬ赵霞ꎬ轩植华.驻波法测量声速实验的探讨[J].物理实验ꎬ2017(3):48 ̄51.[4]㊀杨建伟ꎬ于轲鑫ꎬ郑宇彤ꎬ等.声速测量实验中入射波幅值变化的研究[J].大学物理实验ꎬ2018(5):53 ̄56.[5]㊀李天一ꎬ何沃洲ꎬ卢子璇.声速测量实验方法的改进28基于MATLABGUI的声速测量实验仿真及数据处理[J].物理与工程ꎬ2016(3):29 ̄32.[6]㊀刘石劬.声速测量及不确定度分析[J].大学物理实验ꎬ2013(4):99 ̄103.[7]㊀冯登勇ꎬ王昆林.声速测定实验不确定度㊁误差之比较研究[J].大学物理实验ꎬ2014(1):88 ̄91.[8]㊀顾媛媛ꎬ符跃鸣ꎬ陆慧ꎬ等.基于双踪示波器的超声波声速测量的研究[J].大学物理实验ꎬ2018(5):39 ̄42.[9]㊀陈中钧.超声波声速测量实验中的误差分析[J].实验科学与技术ꎬ2005(10):145 ̄147.[10]陈振华ꎬ查代奉ꎬ钟健松.matlab模拟动画提高声速测量实验教学效果[J].大学物理实验ꎬ2016(1):86 ̄89.[11]郝劲波ꎬ徐仰彬ꎬ陈文ꎬ等.基于MatlabGUI的电位差计测量数据处理[J].大学物理实验ꎬ2016(3):92 ̄95.[12]李海涛ꎬ苏艳丽ꎬ姜其畅.MATLABGUI在光学实验教学中的应用[J].大学物理实验ꎬ2017(6):105 ̄108.[13]李雪梅ꎬ王玉华.Matlab软件和逐差法在共振法和相位法测量超声声速中的应用[J].大学物理实验ꎬ2015(3):91 ̄93.[14]欧阳锡城ꎬ汤剑锋ꎬ谭玉.MATLABGUI在驻波法测声速实验中的应用[J].大学物理实验ꎬ2013(4):72 ̄74.ExperimentalDataProcessingandSimulatingofSoundVelocityMeasurementBasedonMATLABGUIHAOJinboꎬXUYangbinꎬWUGeꎬWANGKaijun(SchoolofScienceꎬXi anUniversityofArchitectureandTechnologyꎬXi an710055ꎬChina)Abstract:Anapproachofexperimentaldataautomaticprocessingandsimulationofsoundvelocitymeasure ̄mentisproposedbasedonMATLABGUI.InthisapproachꎬdynamicsimulationsystemandexperimentaldataprocessingsystemisdevelopedbyusingthewavecharacterofsoundandthecombinationofMATLABGUI.Thedynamicsimulationofsoundvelocitymeasurementprocessofphasemethodanddualtracemethodisimple ̄mentation.Andthenꎬautomaticcalculationofmeasurementdatauncertaintyiscarriedout.Keywords:soundvelocitymeasurementꎻMATLABGUIꎻgraphicinterfaceꎻuncertainty38基于MATLABGUI的声速测量实验仿真及数据处理。

MATLAB在测量误差分析中的应用

MATLAB在测量误差分析中的应用

MATLAB在测量误差分析中的应用MATLAB是一款广泛应用于科学计算和工程领域的高级数值计算软件,可以用于数据处理、数据分析、建模和仿真等任务。

在测量误差分析中,MATLAB具有多种应用,包括数据处理、统计分析、拟合曲线和可视化等。

首先,MATLAB可以被用来处理和分析测量数据。

在测量中,我们经常会收集到大量的数据,并且这些数据可能存在测量误差。

使用MATLAB,我们可以将测量数据导入到软件中,并进行数据清洗和处理。

例如,我们可以使用内置的数据处理函数,如滤波、去除噪声、插值和平滑等,对测量数据进行预处理。

此外,MATLAB还提供了丰富的数学和信号处理函数,可以计算各种统计指标,如均值、方差、中位数和相关性等。

其次,MATLAB还可以用于测量误差的统计分析。

在测量中,我们通常需要评估测量误差的大小和分布。

MATLAB中提供了多种统计分析工具,可以用来计算概率密度函数(PDF)、累积分布函数(CDF)和百分位数等。

这些函数可用于估计测量误差的分布,并帮助我们理解和解释测量数据。

此外,MATLAB还提供了假设检验和置信区间等工具,可以用来测试假设和评估测量结果的可靠性。

除了数据处理和统计分析,MATLAB还可以进行拟合曲线。

在测量误差分析中,我们经常需要通过测量数据来拟合一个数学模型,以估计测量误差的大小和影响。

MATLAB提供了多种拟合工具,如曲线拟合、参数估计和最小二乘拟合等。

这些工具可以帮助我们根据测量数据找到最佳的拟合曲线,从而得到对测量误差的估计。

最后,MATLAB还可以用于可视化测量误差的结果。

在测量误差分析中,可视化是非常重要的,因为它能够帮助我们直观地理解和解释测量数据。

MATLAB提供了强大的可视化工具,可以绘制各种图表和图形,如散点图、直方图、箱线图和曲线图等。

这些图表可以显示测量数据的分布、误差范围和偏差等信息,有助于我们发现和分析测量误差的规律。

综上所述,MATLAB在测量误差分析中具有广泛的应用。

基于MATLAB GUI的数值分析实践教学

基于MATLAB GUI的数值分析实践教学

当代教育实践与教学研究一、引言随着科学技术的飞速发展,计算机处理问题和运算能力大大提升,科学计算在迅猛发展,已经成为与理论分析、科学实验并举的三大科学研究方法之一。

《数值分析》主要介绍科学计算的基本理论与基本方法,是数学与应用数学专业、信息与计算科学专业的一门重要专业基础课,是众多理工科专业以及研究生的一门必修课。

该课程主要由非线性方程根的迭代法、插值与逼近、数值微积分、解线性代数方程组的直接法和迭代法、特征值与特征向量、常微分方程的数值解法等内容组成,可以解决实际生活中遇到的一些数值计算问题。

二、MATLAB GUI和研究来源MATLAB是由美国公司Mathworks公司推出,集数值计算、符号分析、图形处理、仿真等功能于一身的高级计算语言,现已成为国际公认的优秀的科学计算与数学应用软件之一。

用户图形界面(graphical user interface,GUI)是MATLAB 的一个子模块,是由窗口、光标、按键、菜单、文件说明等对象(Object)构成的一个用户界面。

用户通过一定的方法(如鼠标和键盘),选择、激活这些图像对象,使计算机产生某种动作或者变化,以实现可视化、人机互动等功能,达到形象直观的目的。

《数值分析》是一门理论学习与实践应用相结合的综合课程。

实际教学有时可能因为侧重理论学习,而忽视实践应用。

即使有实践教学,也多以讲解MATLAB中内置的函数为重点,如MATLAB中内置的一维插值interp1、二维插值interp2等一些良好的插值命令。

教师一般会讲解这些命令如何使用、每个参数的意义、输出结果以及这些命令之间的差异等。

这种教学模式可以让学生快速学会使用课堂上的算法,并利用这些函数解决一些实际问题,但是学生可能无法深入理解算法的精髓,失去改进提升的基础。

近年来,很多教师在探索数值分析实践教学的改革之路。

一部分教师选择在实践课中加入编程,摒弃只讲解MATLAB内置函数的传统教学模式,让学生自己编写高效的算法程序,把理论学习与数值编程结合起来。

基于MATLAB语言的数字图像处理实验(GUI)

基于MATLAB语言的数字图像处理实验(GUI)

数字图像处理实验报告——基于MATLAB语言的图像处理软件姓名:班级:学号:专业:目录1.设计目的 (2)2.设计要求 (2)3.总体设计 (2)4.模块设计 (3)4.1图像的读取、保存和程序退出 (3)4.2图像转化为灰度图像 (5)4.3底片处理(反色) (6)4.4截图 (6)4.5亮度和对比度度调节 (6)4.6图像的翻转与旋转 (7)4.7添加噪声 (9)4.8平滑和锐化 (10)4.9直方图均衡化处理 (11)4.10图像的腐蚀和膨胀 (12)4.11边缘检测 (13)4.12还原和撤销 (16)5.结果分析 (17)5.1转为灰度图像 (17)5.2底片处理 (17)5.3截图 (17)5.4亮度和对比度调节 (18)5.5图像翻转与旋转 (19)5.6添加噪声、平滑和锐化 (20)5.7直方图均衡化 (23)5.8腐蚀和膨胀 (24)5.9边缘检测 (25)6.心得体会 (26)7.附录代码 (27)1.设计目的利用MATLAB的GUI程序设计一个简单实用的图像处理程序。

该程序应具备图像处理的常用功能,以满足要求。

2.设计要求设计程序有以下基本功能:1)图像的读取和保存2)图像转化为灰度图像3)底片处理(反色)4)截图5)亮度和对比度度调节6)图像的翻转与旋转7)添加噪声8)平滑和锐化9)直方图均衡化处理10)图像的腐蚀和膨胀11)边缘检测3.总体设计软件的总体设计界面布局如上图所示,主要分为2个区域:显示区域与操作区域。

显示区域:显示原图像,以及效果图,即处理前与处理后的图像。

操作区域:通过功能键实现对图像的各种处理。

在图中可见,界面左边和下方为一系列功能按键如“转为灰度图像”、“撤销”、“还原”等等;界面正中部分为图片显示部分。

设计完成后运行的软件界面如下:4.模块设计以下介绍各个功能模块的功能与实现4.1图像的读取、保存和程序退出通过Menu Editor 创建如下菜单,通过以下菜单来实现“载入图像”、“保存图像”、“退出”的功能。

Matlab基于GUI误差分析与数据处理

Matlab基于GUI误差分析与数据处理

2011-2012学年的计算机辅助分析的课程设计。

笔者花了好几个星期的课余时间,将其初略的完成了。

这段时间里可以说是现学现用,因为笔者所学的Matlab课程中没有设计到GUI的相关内容。

正是如此,整个设计中难免会有差错,或者说是理解不深的地方。

还是希望那些要借鉴此设计的朋友甄选辨别一下,再做决定。

整个设计尚不完善,还在进一步的修改中。

今笔者将其上传。

本来有个源文档,很是占页数。

因为里面程序较多。

笔者想了一下,大无上传的必要。

这些程序就算复制下来,也不能单独运行,传上来反而增加大家阅读的负担。

所以将打印稿传至百度文库,供大家参考。

课程名称:计算机辅助分析设计题目:基于GUI的误差分析院系:电气工程系专业:电子信息工程年级:2010 级姓名:XXX学号:XXXX指导教师:XXXX西南交通大学峨眉校区2011年12月16日第一章摘要 (3)第二章想法的提出 (5)第三章相关设想 (6)第四章需要解决的问题: (7)1 程序功能方面 (7)2 数据结构方面: (7)3 控件方面: (7)4 函数的使用: (8)第五章过程(思路和方法) (9)1 GUI学习 (9)1-I GUI架构(向导) (9)1-II 基本控件: (9)1-III 控件属性设置: (9)1-IV 控件回调函数(Callback Routine) (10)2 数据结构: (10)2-I 细胞矩阵 (10)2-II 结构体变量(见课本82页) (10)2-III 局部变量和全局变量 (10)2-IV GUI中的类、对象: (11)3 选择数据的构造方式及选择编程方法 (11)3-I 第一种想法:依据数据层次建立数据结构,当时写了一个模型的样本文件如下: (11)3-II 第二种想法:依据表格中的数据位置进行构造 (14)3-III 比较一二两种算法: (15)4 窗口界面的建立和界面的完善及程序的编写和调试 (15)5 程序的编写和调试: (16)5-I 程序的变量命名: (16)5-II 程序的数据架构: (17)5-III 函数: (17)5-IV 编程的难点: (21)5-V 功能介绍和使用方法: (22)6 程序对比 (30)第六章附录 (33)1 用到的课本知识: (33)2 函数说明: (33)3 参考文献: (33)第一章摘要关于GUI(Graphical User Interface)图形用户界面,是指采用图形方式显示的计算机操作用户界面。

MATLAB数据处理与分析方法介绍

MATLAB数据处理与分析方法介绍

MATLAB数据处理与分析方法介绍导言:随着科学技术的不断进步和数据获取成本的降低,我们面临着海量的数据,如何高效地处理和分析这些数据成为了一项重要的任务。

MATLAB作为一种流行的科学计算软件,提供了丰富的工具和函数,使得数据处理和分析变得更加简单和高效。

本文将介绍MATLAB中常用的数据处理和分析方法,帮助读者快速上手并掌握这些技巧。

一、数据导入与预处理1. 导入数据在MATLAB中,可以使用readtable函数读取各种格式的数据文件,如CSV、Excel、文本文件等。

例如,可以使用readtable('data.csv')读取CSV格式的数据。

对于Excel文件,可以使用xlsread函数读取,如xlsread('data.xlsx')。

读取后,可以将数据保存在表格或矩阵中,方便后续处理和分析。

2. 数据清洗在真实的数据中,常常存在缺失值、异常值和重复值等问题,为了保证数据的准确性和可靠性,需要对数据进行清洗。

MATLAB提供了多种函数来处理这些问题。

例如,使用ismissing函数可以快速检测出缺失值,并使用fillmissing函数或者删除相关行来处理缺失值。

使用isoutlier函数可以检测异常值,并使用删除或替换异常值的方法进行处理。

使用unique函数可以去除重复值。

3. 特征提取数据中的特征对于后续的建模和分析非常重要。

在MATLAB中,可以使用各种特征提取的函数来提取数据中的有用特征。

例如,使用mean函数可以计算数据的均值,使用std函数可以计算数据的标准差,使用median函数可以计算数据的中位数。

另外,还可以通过自定义函数来提取其他特定的特征。

二、数据可视化数据可视化是数据分析中非常重要的一环,通过合适的图表和图形展示数据可以帮助我们发现数据中的规律和趋势。

MATLAB提供了丰富的绘图函数和工具箱,可以方便地进行数据可视化。

1. 绘制线性图在MATLAB中,使用plot函数可以绘制线性图。

MATLAB在测量误差分析中的应用

MATLAB在测量误差分析中的应用

MATLAB在测量误差分析中的应用在测量误差分析中,MATLAB是一种常用的数据分析和处理工具,具有计算速度快、图形绘制灵活等优点。

它提供了一系列的函数和工具箱,可以帮助工程师和科学家进行精确的测量误差分析,包括计算、可视化和统计分析等方面。

本文将介绍MATLAB在测量误差分析中的应用,并具体介绍几个常用的功能和工具。

首先,MATLAB提供了一系列计算函数和工具,用于进行误差的传递计算。

传递函数法是测量误差分析中常用的一种方法,它利用测量量之间的函数关系来计算误差的传递。

在MATLAB中,可以使用符号计算工具箱(Symbolic Math Toolbox)来进行计算。

符号计算工具箱使得用户能够进行高精度的符号计算,包括导数、积分、方程求解等。

用户只需定义函数关系,输入测量量及其误差,然后通过符号计算工具箱进行计算,从而得到最终结果的误差。

第三,MATLAB还提供了统计分析和假设检验的工具,可以帮助用户对测量误差进行统计分析和判断。

MATLAB的统计工具箱(Statistics and Machine Learning Toolbox)提供了一系列常用的统计分析函数,包括均值、方差、置信区间、F检验等。

用户可以利用这些函数,对测量误差进行描述性统计分析,判断误差是否符合正态分布,检验不同测量方法之间的差异等。

第四,MATLAB还可以用于进行可靠性和容错性分析。

在一些应用中,测量误差对系统的可靠性和容错性具有重要影响。

MATLAB的可靠性工具箱(Reliability Toolbox)提供了一系列评估系统可靠性的函数和方法,包括可靠度分析、故障模式与效应分析(FMEA)等。

用户可以使用这些函数和工具,对系统的可靠性进行评估,分析测量误差对系统性能的影响。

最后,MATLAB还支持与其他工具或软件的集成,方便用户进行数据的导入和导出。

用户可以将实际的测量数据导入到MATLAB中进行分析和处理,也可以将分析结果导出到其他工具或软件中进行进一步处理。

MATLAB在测量误差分析中的应用

MATLAB在测量误差分析中的应用

MATLAB在测量误差分析中的应用MATLAB是一种功能强大的数值计算软件,广泛应用于各种科学研究和工程领域。

在测量误差分析中,MATLAB提供了丰富的工具和函数,可以帮助研究者进行误差分析、数据处理和可靠性评估等工作。

本文将介绍MATLAB在测量误差分析中的应用。

首先,MATLAB可以用于误差传递和传感器校准。

在实际测量中,传感器通常存在着误差,比如零点偏差、灵敏度非线性和温度漂移等。

MATLAB提供了帮助用户校准传感器、分析和传递误差的函数。

用户可以使用这些函数读取传感器原始数据,拟合传感器特性曲线,并校准传感器输出。

同时,用户还可以使用这些函数计算测量系统的传递函数,并评估传感器误差对最终测量结果的影响。

除了传感器校准,MATLAB还提供了丰富的统计分析和拟合函数,用于处理和分析测量数据。

用户可以使用MATLAB函数进行数据预处理,如平滑、滤波和降噪等,以去除测量过程中的噪声和干扰。

同时,用户可以使用MATLAB的统计分析函数,如均值、方差、相关性和回归分析等,对测量数据进行更深入的分析和评估。

此外,MATLAB还提供了丰富的曲线拟合函数,可以拟合测量数据的曲线和曲面,进一步分析数据的规律性和误差特性。

另外,MATLAB还可以用于不确定度计算和试验设计。

不确定度是测量结果的重要属性之一,用于描述测量结果的不确定性。

MATLAB提供了不确定度计算的函数,用户可以使用这些函数计算测量结果的不确定度,以评估测量的可靠性和精确性。

同时,用户还可以使用MATLAB进行试验设计,以最小化测量误差和优化测量条件。

MATLAB提供了试验设计的函数和工具箱,用户可以使用这些函数生成优化试验设计方案,并进行仿真和分析。

此外,MATLAB还可以用于故障诊断和可靠性评估。

在工程系统中,设备和传感器的故障会导致测量误差的增大。

MATLAB提供了故障诊断和故障模拟函数,用户可以使用这些函数分析故障的原因和影响。

同时,用户还可以使用MATLAB进行可靠性评估,以评估系统的可靠性和性能。

MATLAB的数据误差处理方法

MATLAB的数据误差处理方法

MATLAB 的数据误差处理方法一、几个基本概念1、误差在测量中,误差表示测得值与真值之差,若令测量误差为δ,测得值为x,真值为x 0,则有δ=x-x 0或x 0=x-δ (1) 由于实际应用中真值一般是无从知道或无法确定的,所以,在统计学中,常以测量次数足够大时的测得值的算术平均值近似代替真值。

2、算术平均值x 对一真值为x 0的物理量进行等精度的n 次测量,得n 个测得值x 1,x 2,…,x n ,它们都含有随机误差δ1,δ2,…δn ,统称真差。

常以算术平均值作为n 次测量的结果,即x =(x 1+ x 2+…+ x n )=n x i∑ (2)3、残差v各测得值x i 对其算术平均值的误差量叫做残余误差,简称残差,即 v= x i -x (3) 4、标准差(标准偏差)σ在计量学中,常用标准差来评定测得值的精度,即 σ=n nδδδ22221+++ (n ∞→) (4)式中:δi:真差(随机误差);n :测量次数。

但在实际应用中,真差δi往往是不可知的,而常根据有限个测量值的残差v 来求取随机测量误差方差的估计值σ2x ,开方,得1222212-+++=n v v v nxσ(5)式5称为贝塞尔(Bessel )公式,称为试验标准差,即是标准差σ的估计值。

5、随机误差的正态分布:正态分布是随机误差的一种重要分布。

实践表明,在大多数情况下,在测量过程中,产生的误差服从正态分布。

正态分布的分布曲线例子如图1所示, 图1的matlab 程序如为:>> x=0:0.02:5;y=1/(.5*sqrt(2*pi))*exp((x*2.5).^2/(2*.5^2));plot(x,y)ylim{[0,1]};xlim{[0,5]} xlabel('x'),ylabel('y')图一其分布密度函数为y=f(x)=eu x σπσ2)(2122--(6)式中,y :概率密度;x :随机变量;σ :标准差;u :理论均值或随机变量x 的数学期望。

matlab计算方法实验指导误差分析

matlab计算方法实验指导误差分析

实验一 误差分析实验1(病态问题)实验目的:算法有“优”与“劣”之分,问题也有“好”与“坏”之别。

对数值方法的研究而言,所谓坏问题就是问题本身对扰动敏感者,反之属于好问题。

通过本实验可获得一个初步体会。

数值分析的大部分研究课题中,如线性代数方程组、矩阵特征值问题、非线性方程及方程组等都存在病态的问题。

病态问题要通过研究和构造特殊的算法来解决,当然一般要付出一些代价(如耗用更多的机器时间、占用更多的存储空间等)。

问题提出:考虑一个高次的代数多项式)1.1()()20()2)(1()(201∏=-=---=k k x x x x x p显然该多项式的全部根为1,2,…,20共计20个,且每个根都是单重的。

现考虑该多项式的一个扰动)2.1(0)(19=+x x p ε其中ε是一个非常小的数。

这相当于是对(1.1)中19x 的系数作一个小的扰动。

我们希望比较(1.1)和(1.2)根的差别,从而分析方程(1.1)的解对扰动的敏感性。

实验内容:为了实现方便,我们先介绍两个MATLAB 函数:“roots ”和“poly ”。

roots(a)u =其中若变量a 存储n+1维的向量,则该函数的输出u 为一个n 维的向量。

设a 的元素依次为121,,,+n a a a ,则输出u 的各分量是多项式方程01121=+++++-n n n n a x a x a x a的全部根;而函数 poly(v)b =的输出b 是一个n+1维向量,它是以n 维向量v 的各分量为根的多项式的系数。

可见“roots ”和“poly ”是两个互逆的运算函数。

))20:1((;)2();21,1(;000000001.0ve poly roots ess ve zeros ve ess +===上述简单的MATLAB 程序便得到(1.2)的全部根,程序中的“ess ”即是(1.2)中的ε。

实验要求:(1)选择充分小的ess ,反复进行上述实验,记录结果的变化并分析它们。

基于MATLAB GUI的数据分析软件包设计

基于MATLAB GUI的数据分析软件包设计

基于MATLAB GUI的数据分析软件包设计
徐德华;钱真;何秋茹;陶渝辉;张文杰
【期刊名称】《测控技术》
【年(卷),期】2004(023)0z1
【摘要】论述了在MATLAB平台上开发的基于GUI的仿真结果数据分析软件包.介绍了基于MATLAB的GUI文件结构,仿真结果数据文件的导入和删除,软件包的设计及其功能.并把该软件包应用到仿真结果的数据分析中,能直观,简洁地反映各种数据及差别,解决了仿真结果数据分析的问题.
【总页数】3页(P333-335)
【作者】徐德华;钱真;何秋茹;陶渝辉;张文杰
【作者单位】哈尔滨工程大学计算机科学与技术学院,黑龙江,哈尔滨,150001;哈尔滨工程大学计算机科学与技术学院,黑龙江,哈尔滨,150001;北京仿真中心,北
京,100854;北京仿真中心,北京,100854;北京仿真中心,北京,100854
【正文语种】中文
【中图分类】TP391.9
【相关文献】
1.基于MATLAB GUI的汽车动力性试验数据分析软件设计 [J], 王琳;刘伟建;裴永琪;冯捷
2.基于MATLAB GUI的稳定精度数据分析软件设计 [J], 雷阳;王雪涛;孙文娥
3.基于Matlab/GUI的数据分析界面设计 [J], 李娅丽;忻尚芝;郑春雷
4.基于MATLAB GUI的AMT插电式系统数据分析软件设计 [J], 李勇华;郭淑英;
宋超
5.基于MATLAB GUI的导航卫星测试数据分析处理系统的设计与实现 [J], 李绅;杨国学;寇会钢
因版权原因,仅展示原文概要,查看原文内容请购买。

基于MATLABGUI的加工误差的统计分析系统

基于MATLABGUI的加工误差的统计分析系统

基于MATLABGUI的加工误差的统计分析系统
高天佑;孙志海;杨艳芳
【期刊名称】《湖北工业大学学报》
【年(卷),期】2011(026)004
【摘要】从加工误差常用的两种基本的统计分析方法(即分布图分析和-x-R图分析)入手.运用运用MATLAB中的GUI工具箱开发了计算机辅助加工误差的统计
分析系统,并通过实例,说明了系统数据可视化,数据分析处理智能化、简单化、高效化等优点.
【总页数】3页(P102-104)
【作者】高天佑;孙志海;杨艳芳
【作者单位】武汉理工大学物流工程学院,湖北武汉430063;上海振华重工(集团)股份有限公司,上海浦东200125;武汉理工大学物流工程学院,湖北武汉430063【正文语种】中文
【中图分类】TP391.9
【相关文献】
1.基于数据库的加工误差统计分析系统研究 [J], 杨义;涂海宁;刘建胜;安荣;孔晓玲;
尹成龙
2.基于VB的加工误差统计分析系统的设计与实现 [J], 于靖华
3.基于数理统计方法的发动机关键零部件加工误差统计分析系统 [J], 饶雄;李俭;唐茂;邓嫄媛;熊美玲;王攀然
4.基于Excel的机械加工误差统计分析系统 [J], 吴凤和;沈艳芝;刘敬禹
5.基于MATLAB的加工误差统计分析系统 [J], 崔敏
因版权原因,仅展示原文概要,查看原文内容请购买。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2011-2012学年的计算机辅助分析的课程设计。

笔者花了好几个星期的课余时间,将其初略的完成了。

这段时间里可以说是现学现用,因为笔者所学的Matlab课程中没有设计到GUI的相关内容。

正是如此,整个设计中难免会有差错,或者说是理解不深的地方。

还是希望那些要借鉴此设计的朋友甄选辨别一下,再做决定。

整个设计尚不完善,还在进一步的修改中。

今笔者将其上传。

本来有个源文档,很是占页数。

因为里面程序较多。

笔者想了一下,大无上传的必要。

这些程序就算复制下来,也不能单独运行,传上来反而增加大家阅读的负担。

所以将打印稿传至百度文库,供大家参考。

课程名称:计算机辅助分析设计题目:基于GUI的误差分析院系:电气工程系专业:电子信息工程年级:2010 级姓名:XXX学号:XXXX指导教师:XXXX西南交通大学峨眉校区2011年12月16日第一章摘要 (3)第二章想法的提出 (5)第三章相关设想 (6)第四章需要解决的问题: (7)1 程序功能方面 (7)2 数据结构方面: (7)3 控件方面: (7)4 函数的使用: (8)第五章过程(思路和方法) (9)1 GUI学习 (9)1-I GUI架构(向导) (9)1-II 基本控件: (9)1-III 控件属性设置: (9)1-IV 控件回调函数(Callback Routine) (10)2 数据结构: (10)2-I 细胞矩阵 (10)2-II 结构体变量(见课本82页) (10)2-III 局部变量和全局变量 (10)2-IV GUI中的类、对象: (11)3 选择数据的构造方式及选择编程方法 (11)3-I 第一种想法:依据数据层次建立数据结构,当时写了一个模型的样本文件如下: (11)3-II 第二种想法:依据表格中的数据位置进行构造 (14)3-III 比较一二两种算法: (15)4 窗口界面的建立和界面的完善及程序的编写和调试 (15)5 程序的编写和调试: (16)5-I 程序的变量命名: (16)5-II 程序的数据架构: (17)5-III 函数: (17)5-IV 编程的难点: (21)5-V 功能介绍和使用方法: (22)6 程序对比 (30)第六章附录 (33)1 用到的课本知识: (33)2 函数说明: (33)3 参考文献: (33)第一章摘要关于GUI(Graphical User Interface)图形用户界面,是指采用图形方式显示的计算机操作用户界面。

与早期计算机使用的命令行界面相比,图形界面对于用户来说在视觉上更易于接受。

Matlab整个系统中集成了大量的GUI函数,这些函数与Matlab本身兼容良好,调用极为方便。

同时,用户亦可通过编程创建新的GUI函数,这样大大拓展了Matlab的GUI的创造力。

Matlab的工程师们为了用户编程方便提供了一个简便易用的GUI工具,GUIDE(向导)。

GUIDE本身就是一个GUI程序,用于帮助用户直观快速的生成控件的基本代码。

每当用户向GUIDE界面增添控件后,点击运行,便可自动生成与控件相关的程序,减少不必要的书写。

这样使每个初学GUI的朋友快速上手!本次课程设计,笔者是依靠GUIDE来完成窗口函数的建立的。

程序功能简介此次编写的程序功能简单,主要针对一维数据,对它们求和、求均值、求A类不确定度、B类不确定度、直接合成不确定度以及间接测量合成不确定度。

用户输入数据时,会根据这些数据绘制原始数据的直角坐标连线图,方便查看数据的变化趋势。

用户可以从Excel表格中导入数据,进行相应的计算;也可以将计算好的数据以表格的形式输出到Excel文件中。

计算过程中会产生各种量的更替,这些更替可以保存到*.datM文件中,在下次进行计算时可直接导入。

如果不需要数据可以先将此状态文件导入,再输入数据或者导入数据,这样先前*.datM中的数据将被覆盖,但是相应的设置未变。

处理关系复杂的数据时可以将计算分成多个部分,依次处理。

数据输入或计算好后可以进行简单的绘图。

程序特点(架构):现阶段所完成的程序是一个底层,后续的设计将会在这个底层基础上建立模型及库文件,这些模型或库可以描述各种各样数据结构的表格。

这样只需花少量的人力和时间,在文本文档中用易懂的语言描述表格的特征,导入软件就可以实现对这类表格的数据处理。

关键词:GUI 误差分析Excel表格状态导出状态载入绘图模型库第二章想法的提出笔者向来热爱物理,更喜欢动手实验。

来到大学之前,一直认为大学将给每个学子以一个更为开放和自由的环境。

可是让人失望的是依旧有许许多多的无奈。

而这种种无可奈何中,又以实验最为让人无奈。

我本无心于对制度指指点点,又提不出任何有建设性的方案。

但对于实验,我确实极为不满,不得不抱怨一下。

实验目的是在于发掘事物间的规律。

实验可以发现一些问题,透过这些问题,我们或可发现规律,或可检验理论,或可掌握知识,或可培养兴趣。

而笔者现在所做过的那么多的大学实验(电路,物理,模电),没有哪个是完完全全的投入精神和时间去完成的!倒是在平日的时间里,笔者自己用有限的材料和器材完成的探索和实验让笔者兴趣百倍,记忆深刻。

平时的实验冲忙而又浮躁,还有各种制约。

要那样要这样,不要那样不要这样,必须写实验报告,必须计算结果,必须是这个结果,不准迟到,不准乱动仪器……实验早就成为了一种负担,笔者大部分的可用课余时间都被满纸的实验报告占据,有时还为实验数据(结果)处理焦头烂额。

这种情况不仅仅是出现在笔者一个人身上。

我们大家都不得不去做那些得花一个小时抄报告还弄不清楚上边是什意思的实验。

用身边朋友调侃的话来说,不是每个人都有这样历经高考磨难,交了钱来做这种实验的机会,我们该庆幸啊!在这种情况下,笔者果断地将Matlab的大作业定为了——误差分析与数据处理。

主要还是因为这个课程设计若完成,在笔者一直没有鼓起勇气逃离制度的情况下,还是非常有用的,至少处理数字型的实验可以派上用场。

二来,能在误差分析方面更深入了解一些,这些知识在今后的工程工作中大有用处。

这个课题大的方面就已经确定好了。

细想一下,只做误差分析和数据处理好像内容过于单调。

加之,要是做一个完完全全依赖于Matlab的程序,这样也不太好用。

如果将这个程序放在一个独立的界面上运行的话,就可以称之为一个小型的简易数据处理软件,这样既便于使用,也更加独立,通用性更强。

于是笔者将题目定为了“基于GUI的误差分析和数据处理”。

除此之外,还有个原因,笔者确实对面向对象的编程饶有兴趣,希望能够找到机会学习,而现在机会来了!课程设计由此展开,到后来这个程序的复杂程度渐渐增大,时间又紧迫,一方面课程设计需要在第十六周之前完成;另一方面,期末已至,这学期笔者花在课外的时间较多,预习兼复习的任务艰巨。

所以在只勉强完成了“误差分析”的功能后,没有更多的时间去完成更多的功能。

若以后能腾出时间,必要好好将程序完善。

第三章相关设想程序及界面(不设置运行数据模型):Excel表格文件:读入和保存为表格文件;界面美化:窗口背景,按钮图标;多窗口:依靠主窗口可产生其他副窗口;工具栏:有一些快捷的工具按钮提示音:错误时有提示声音;数据自动保存不改变已知表格的数据数据校检(可略)界面输入数据图像输出和保存数据模型:考虑单位变换求和、求均值、A类不确定度、B类不确定度设置最为基本的模型结构,在无加载模型的情况下使用该模型下的文件输出,输出工作状态和计算结果库(写出基本库:密立根油滴和偏振光研究,电阻、电压、电流关系等)模型B类不确定度的置信因子:正态分布、均匀分布和三角分布A类不确定度的扩展倍数(设置初始值1(不能为空))计算A类不确定度计算B类不确定度计算直接合成不确定度计算间接测量合成不确定度区分表达式的属性(加减还是乘除)计算函数关系计算相对误差将计算好的结果覆盖到源数据所在位置其他细节:完善帮助文档、完善错误提示、优化窗口结构、光标的指示说明注:红色标注的表示尚未实现的功能或想法,其他的都是或多或少完成了的。

2011-12-14第四章需要解决的问题:1程序功能方面什么是面向对象?什么是GUI?Matlab的GUI怎么用?怎么学习Matlab的GUI?应该用怎样的结构来描述尽可能多的表格,和表格中数据的计算?(程序设计的核心)怎么控制程序获得对象数据的起始和终结地址?行或列的数据读取方向(变量的取值方向)怎么确定?计算结果的个数?计算结果的存放在何处?图像该怎么标注一些文字?模型名称怎么控制? 变量在程序中的名称如何控制?变量的个数怎么知道?变量单位的转换(+-*/(关系式略))如何获得?怎么转换这个单位?表头文字的单位问题绘图的图像变量范围怎么确定?计算的常量(如固定光的波长,固定频率,测量温度)怎么获得?获得了怎么处理?各个量的函数关系怎么建立?函数的变量怎么获得数值?2数据结构方面:什么是细胞?什么是结构体?Matlab有哪些的数据结构?怎么建立细胞变量?怎么获得细胞的行列数?怎么调用细胞的数据?怎么调用细胞里的细胞?怎么建立结构体变量?什么是域?怎么调用结构体变量中的域?什么是类?什么是对象?该怎么安排数据的类?怎么让变量可以被所有函数调用和修改?全局变量的建立和删除怎么用?退出GUI时如何把全局变量中的值清空?什么是符号变量?怎么申明符号变量?怎么将符号变量用具体数值代换计算结果?怎么将字符串转换成符号变量?怎么将符号变量变成字符串?怎么求偏导?符号运算怎么调用函数?3控件方面:怎么设置uitable的行列值?怎么设置uitable不可编辑?如何读取uitable的内容?当uitable 的数值发生改变时,怎么获取改变位置?怎么让uitable显示数字和文本?怎么删除uitable 的某行或某列?怎么关闭一个开启的窗口?绘图时怎么连接两个点?怎么用极坐标绘图?怎么调整网格线的疏密程度?怎么将图片放置到剪切板?剪切板怎么调用?为什么背景图遮挡住其他控件?怎么解决这个问题?怎么设置窗口的最大最小化?怎么显示其他图标?怎么让窗口置顶?在buttongroup中怎么获取两个radiobutton的状态?怎么Group的创建选择函数?4函数的使用:怎么用matlab 提取字符串中的数字?什么是正则表达式?他有什么作用?语法规则是怎么样的?怎么添加超链接?怎么调用对话框?怎么利用程序(函数)复制文件?什么是中断?eval函数怎么用?eval函数左边可以获得结果吗?怎么设置控件的字体?时钟(定时器)怎么回事?怎么设置?怎么在定时器中断时调用书写好的中断响应函数?怎么用Matlab生成独立的可执行文件?怎么获取当前工作路径? Matlab如何检查非当前目录下某文件是否存在?怎么读取Excel文件?怎么将文件保存为Excel?怎么读取图片文件?怎么显示图片?怎么读取声音文件?怎么播放声音?第五章过程(思路和方法)1GUI学习1-IGUI架构(向导)(打印稿略,详见原稿)1-II基本控件:•Select:用来指示在GUIDE中控件的选中状态。

相关文档
最新文档