您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据挖掘与识别 > 基于MATLAB的测量平差数据处理讲解
内蒙古科技大学毕业设计绪论基于MATLAB的测量平差数据处理摘要MATLAB是目前在研究机构广泛应用的一种数值计算及图形工具软件,它的特点是语法结构简明、数值计算高效、图形功能完备,特别适合非专业编程员完成数值计算、科学试验处理等任务。以往的测量数据处理方法需要编制特定的处理矩阵运算程序,而且程度复杂,难度大。本文介绍一种基于MATLAB的水准网和测边网的程序设计方法,与其它算法语言相比,具有编程简单,运算速度快的特点。文中分别阐述了水准网和测边网程序的理论基础、实现步骤和运行结果。通过实例的分析,总结出利用MATLAB对测量数据处理有很大的应用价值,它缩短了编程的时间,提高工作效率。关键词:MATLAB;平差;程序设计内蒙古科技大学毕业设计绪论ABSTRACTMATLABisonespeciesofnumerical-valuescalculationandgraphictoolssoftwarewhichiswidelyusedtoapplyatresearchinstitutionsatpresent.Theparticularitiesare:concisegrammar-structure、highlyefficientinnumericalvaluescalculating、completefunctionofgraphs、especiallyitisadaptedtoevildoingprofessionalprogrammertoaccomplishthetasksthatarenumerical-valuescalculatingandscientificexperimentstreating.Theancientmethodsofmeasureddata-processingneedestablishingspecialproceedingsoftreatingmatricesoperation,moreover,itiscomplexandgreatlydifficult.ThisarticleintroducesoneprogrammingmethoddealingwithlevelingandmeasuringedgenetworkbasedonMATLAB.Comparedwithotheralgorithmlanguage,ithasparticularitieswhicharesimplyprogrammingandquicklyoperating.Thearticleseparatelyexpatiatethetheoriesbasics、realizingstepsandrunningresultsatlevelingandmeasuringedgenetwork.Withtheanalysisofexamples,ithasprodigiousapplicationvalueinmeasureddata-processingbyuseofMATLAB.Moreover,itshortensprogrammingtimeandimprovesworkingeffectiveness.Keywords:MATLAB;programming内蒙古科技大学毕业设计绪论绪论作为一名测量技术人员,如果不掌握一门PC机编程语言与便携计算工具,要想提高测量工作的效率几乎寸步难行。测量需求的多样性与复杂性,造就了测量计算鲜明的个性化特点,这就是在商业测量计算软件高度发达的今天,掌握一种实用的程序语言进行编程计算仍有广泛的市场需求的重要原因。当今较流行的计算机程序语言基本上都是基于Windows的,例如TurboPascal,VisualBasic,VisualC,BorlandC++等,这些程序语言的优势是基于对象及可利用Windows丰富的系统资源,应用它们可以开发出界面非常丰富和友好的应用程序,其劣势主要有以下几点:1.Windows程序都非常庞大,学习并熟练掌握它们并非易事。2.虽然市场上已有的多种专用的测量平差软件都是采用C语言开发的,但这些软件价格都比较贵,而且都带有加密狗,一次只能供一个用户使用。出于商业目的,开发商不会公开程序源代码,这为修改程序功能以适应用户的特殊需求带来了不便。3.在测量生产中,经常需要根据工程的实际情况进行一些个性化的数值计算工作,这些数值计算工作无固定模式,这就需要求测量技术人员最好能熟练掌握一种适用于数值计算的程序语言,以便提高测量计算的效率。4.C语言的数值计算语句不够丰富,例如,在测量平差计算中,经常需要进行的矩阵运算,尤其是解法方程的矩阵求逆不能直接使用语句实现,而必须应用计算机算法编程实现。如果不是基于商业软件开发,只为满足实际测量工作计算需要,则C语言的劣势就变成了MATLAB语言的优势。内蒙古科技大学毕业设计MATLAB软件简介1.MATLAB软件简介MATLAB是从Matrix(矩阵)和Laboratory(实验室)各取前3个字母组成的,意思是矩阵实验室,是美国MathWorks公司于20世纪80年代中期推出的一种交互式、面向对象的科技应用软件,是一个为科学和工程计算而专门设计的高级交互式软件包。MATLAB集成了图示与精确的数值计算,是一个可以完成各种计算和数据可视化的强有力工具,其优秀的数值计算能力和卓越的数据可视化能力使其很快在数学软件中脱颖而出,成为以矩阵运算为主要工作方式的线性代数、概率论和数理统计、自动控制、数字信号处理、动态系统仿真等领域教学和科研工作者的有力武器。随着该软件自身的发展及市场的需求,其功能日趋完善,其最高版本7.0版已经推出,随着版本的不断升级,它的数值计算及符号计算功能得到了进一步完善。MATLAB是以矩阵作为数据操作的基本单位,矩阵的生成、运算、转置、求逆等非常简单。在MATLAB环境中,不需要对创建的变量对象给出类型说明和维数,所有的变量都作为双精度数来分配内存空间,MATLAB将自动地为每一个变量分配内存。MATLAB语言起源于矩阵运算,并已经发展成为一种高度集成的计算机语言,它提供了强大的科学运算、灵活的程序设计流程、高质量的图形可视化与界面设计、便捷的与其他程序和语言接口的功能。MATLAB系统主要包含5部分的内容:MATLAB工作环境、Mablab数学函数库、MATLAB语言体系、句柄图形、MATLAB应用程序接口(API)。MATLAB系统主要功能包括:数值计算功能、符号计算功能、数据分析和可视化、文字处理功能、SIMULINK动态仿真功能。同时,MATLAB又是开放的,除了内部函数之外,所有的MATLAB主包文件和各工具包文件都是可读可改的源文件,用户可以作为参考掌握其用法,并可对其修改以适应自己的需要,也可加入自己编写的文件构成新的工具包。例如,随着GPS的广泛应用,OrionDynamicsandCon2trolCorporation、ConstellInc.GPSSoftLLC、NavsysCorporation等多家公司都相应开发出了适于GPS数据处理的MATLAB工具箱。MATLAB是一个集数值计算、图形管理、程序开发于一体的功能十分强大的系统。将MATLAB应用于测量数据的处理是一件非常有意义的工作。Mo2hamed等曾成功地在MATLAB系统中利用白滤波技术研究动态解算GPS载波相位信号的模糊度问题。因为测量数据的处理特别是测量平差主要应用矩阵运算,而MATLAB又特别易于做矩阵运算,因此,研究开发基于MATLAB的测量平差方法具有极好的应用价值。毕业设计水准网平差程序2.MATLAB在测量平差中的应用测量平差数据处理主要是基于矩阵的运算,常用的矩阵运算主要是矩阵的生成、转置、求逆和矩阵求广义逆等。在MATLAB环境中,不需要对创建的变量对象给出类型说明和维数,所有的变量都作为MATLAB中的M文件的语法与其他的高级语言类似,是一种程序化的编程语言,同时也是一种解释性的编程语言,即逐行解释运行程序,使程序容易调试,计算更为简捷,而且对于平差原理理解和掌握变得更容易。另外,MATLAB语言与数学语言比较接近,更容易掌握和理解。2.1测量平差原理的概述测量平差的函数模型有条件方程和观测方程。以条件方程为函数的模型的最小二乘平差称为条件平差;在条件方程中,根据需要如果还设有一定数量的未知数,则称为附有参数的条件平差;以观测方程为函数模型的最小二乘平差称为间接平差;如果观测方程中的某些参数不独立,则这些不独立参数必然存在一些条件,称这种平差模型为附有条件的间接平差。本文的两个程序都采用间接平差模型。对于一个实际平差问题,根据所选参数的个数、选什么量为参数以及参数之间是否函数独立,经过仔细推敲可以发现附有条件的间接平差模型本身就是各种经典平差模型的概括模型,其余的经典平差模型,如条件平差模型、间接平差模型、附有未知数的条件平差模型和附有限制条件的条件平差模型都是它的特例。间接平差的公式汇集:间接平差模型为minTVBXlVPV(2-1)系数矩阵B满秩,即rank(B)=t法方程及解为:10,(,)TTbbebbeNxfNBPBfBPl(2-2)1bbexNf(2-3)参数的平差值:0XXx(2-4)观测量的平差值:LLV(2-5)单位权的中误差:0TVPVnt毕业设计水准网平差程序(2-6)平差参数的协方差阵:210bbXXDN(2-7)平差函数的协方差阵:210TbbQFNF(2-8)2.2平差程序总体方案MATLAB号称为全球工程师的共同语言,其语法和C语言相似,但它有强大的数值计算和绘图功能,这使之在工程应用方面的计算更出色,本文就基于这种程序设计语言环境设计一个控制网平差程序。该程序包含了一个高程控制网平差程序和测边网平差程序。本程序适用于各种等级的高程网和测边网,程序在设计过程中,始终考虑数据的储存量。因而本程序不储存误差方程的系数和常数项,对待定点数较多的平差网,组成法方程的系数矩阵是个稀疏矩阵,如待定点的编号恰当,法方程的系数会集中在主元系数的两侧形成带状。为减少法方程系数的储存量,只要按行储存下三角阵或按列储存上三角阵中第一个非零系数起的系数,就是通常叫做维变带宽储存方法。3.水准网平差程序3.1程序的功能本程序适用于二、三、四等水准网平差计算,平差的水准网可以是独立的、也可以是附合网,其主要功能是完成水准网的平差计算和精度评定计算。平差计算采用间接平差法,以归心的观测值为高差,以未知点高程为未知参数。精度评定计算包括计算单位权中误差和每个待定点的高程中误差。毕业设计水准网平差程序3.2水准模型网的间接平差3.2.1“权”值的确定当在相同的条件下进行水准测量时,其精度是相同的,因而观测结果的可靠性也是同样的。但如果在不同的条件下进行水准测量时,高程的精度就有所不同,此时称为不等精度观测,所求出的未知量的值、高程的最或是值并对其精度进行评定时,就需要“权”了。由于观测的不等精度,因而观测值的可靠程度不同,求未知量的最或是值时,这样的一个因素就必须考虑了,这个因素是:可靠性大的某观测值,其精度高,对测量的最后结果的影响也就越大。此时用“权”值来表示观测值的可靠程度,那么,“权”值愈大,观测值的可靠程度就愈高。另外,在观测过程中,观测值的中误差愈小,观测结果愈可靠,它的“权”值就愈大。因而,根据中误差来确定“权”值是非常适当的。设以Pi表示观测值Li的“权”,m为中误差,则“权”值的定义为:(3-1)式中:A为任意的正常数,在一组观测值中为一个定数。在实际测量中,通常是观测值的中误差事先并不知道,因而必须先确定观测值的“权”,然后才能求出未知量的最或是值。此时可以利用距离(S)或测站数(N)来确定观测值———高程的“权”。根据偶然误差传播定律,各观测点高程Hi的中误差mi由测站数Ni确定时,则有:iimmN(3-2)式中:m为一组观测值的中误差,为一个定数.由(3-2-1)、(3-2-2)两式可得:(3-3)同样可
本文标题:基于MATLAB的测量平差数据处理讲解
链接地址:https://www.777doc.com/doc-6509843 .html