基于MATLAB的导线网平差软件设计及误差椭圆的绘制
基于MATLAB的导线网平差软件 设计及误差椭圆的绘制翟敏,陶秋香(山东科技大学测绘科学与工程学院,山东青岛266590)摘要:导线网观测数据平差是一项繁重的工作,其平差过程涉及矩阵计算,由于算法复杂,较难利用传统编程语言进行程序实现和绘制误差椭圆。本文在MATLAB平台下,利用其强大的计算和可视化分析功能,基于间接平差原理,完成了间接平差软件设计,实现了导线网平差,以及导线网网形和误差椭圆的绘制,并通过实例进行了验证分析。关键词:导线网;MATLAB;间接平差;误差椭圆中图分类号:P207+.1文献标识码:B文章编号:1672-5867()04-0098-03AdjustmentSoftwareDesignandErrorEllipseDrawingBasedonMATLABTraverseNetworkZHAIMin,TAOQiu-xiang(CollegeofGeomatics,ShandongUniversityofScienceandTechnology,Qingdao266590,China)Abstract:Traversenetworkobservationdataadjustmentisatoughtaskduetothecomplexalgorithmofmatrixcalculation,andthere-foreitisdifficulttousetraditionalprogramminglanguagetorealizetheprogramanddrawtheerrorellipse.BasedonMATLABplat-form,thepaperusesitsstrongcapacityofcomputationandvisualizationanalysisfunctiontoachievetheparameteradjustmentsoftwaredesignaccordingtotheparameteradjustmentprincipleandthetraversenetworkadjustmentandshape,anddrawingoferrorellipsearerealizedandverified.Keywords:traversenetwork;MATLAB;parameteradjustment;errorellipse0引言在计算机技术和空间技术的支持下,测绘学科得到了快速发展,观测数据和估计量的类型更加多样化,而测量平差作为测量观测数据处理的基础,其应用也越发重要[1]。MATLAB软件具有强大的数值计算、符号运算、数 据分析和可视化、文字图像处理等功能,MATLAB提供的M语言不仅方便编程,同时还具有强大的绘图和图形显示等功能[1-2]。将MATLAB应用于测量平差计算,会给平差模型建立、数据解算和图形显示带来极大的方便。石丽梅等[3]利用C++语言,编程实现导线网的近似坐标计算;高平和等[4]提出编程绘制倾斜任意角度的误差椭圆设计思路,并据此推导出数学模型;王永等[5]利用Excel生成误差椭圆;李建章[6]基于MATLAB开发了导线网平差程序。本文在上述研究成果的基础上,利用间接平差实现导线网平差的程序设计,以及绘制导线网网形与误差椭圆,并最终将程序整合成为软件,帮助完成数值计算和数据处理等任务。通过实例进行验证分析,最终证明该软件切实可行,可有效降低测量计算人员的工作量。1导线网测量平差程序设计1.1程序总体设计导线网间接平差的整体设计思路为:1)先读入观测值数据,包括角度观测值数据和边长观测值数据;2)对已知点及未知点进行编号,分别给角度和边长观测值赋点号,形成角度观测值矩阵和边长观测值矩阵;收稿日期:-10-08基金项目:山东科技大学科研创新团队支持计划(KYTD103)资助作者简介:翟敏(1991-),女,山东泰安人,测绘工程专业硕士研究生,主要研究方向为测量平差与数据处理。第4期翟敏等:基于MATLAB的导线网平差软件设计及误差椭圆的绘制993)计算点的近似坐标,形成近似坐标矩阵;4)定权并组建误差方程式,按照间接平差原理进行平差;5)输出平差结果,包括坐标平差值、未知点点位误差及误差椭圆参数、角度改正数及平差值、边长改正数及平 差值。程序总体设计流程图如图1所示。图1程序设计流程图Fig.1Programdesignflowchart1.2导线网数据格式的组织导线网由导线点、导线边和角度三部分要素构成,其中导线边包括起点和终点,导线角度包括测站点、左站点和右站点。为使程序能够对任意形状的导线均能进行平差处理,首先需要设计数据格式来存储相关的数据文件,包括起算数据、角度观测值数据和边长观测值数据。其 中边长观测值和角度观测值中均包含着