设有n个观测值,组成误差方程组为:应用最小二乘准则组成法方程组,其纯量形式为:其中法方程系数、常数阵中的数值由此可见自乘系数[paa]是由n个值的和组成,这n个值分别是各观测值误差方程中第一个未知数系数平方乘以观测值的权;互乘系数[pab]也是由n个值的和组成,这n个值分别是各观测值误差方程中第一个和第二个未知数系数之积乘以观测值的权。根据这一特点,平差程序组法方程采用的算法是:①按测站循环。......
2023-10-22
1.误差方程系数、常数储存
误差方程系数临时保存在一维数组nb()中,以未知数编号为nb()中系数的下标,误差方程常数临时保存在一个单变量l中。
2.法方程系数、常数储存
法方程系数、常数项分别保存在不同数组中。常数项保存在一个一维数组中,下标是法方程组中方程的编号,即下标为1表明是法方程组中第一个方程的常数。法方程系数阵本是一个对称方阵,由于采用高斯约化解算法方程,实际上只用到对称系数矩阵主对角线以上(或以下)的部分。所以为了节省内存,平差示例程序中采用一维数组保存法方程系数,并且只保存主对角线以上的数值,因而法方程系数阵称为上三角阵。
3.误差方程和法方程系数对应关系
所谓储存对应关系是指根据误差方程系数在数组nb()中下标,确定其两两相乘元素在法方程系数数组和常数数组中的下标。为方便阐述,设一平差问题只有四个未知数,误差方程一般表达式和系数在数组nb()中存储位置为:
法方程矩阵式为:
法方程系数阵二维数组和常数阵一维数组下标编排为:
分析误差方程和法方程系数、常数在数组变量中的下标编号,可以得出如下结论:
①误差方程系数两两相乘时,误差方程两系数在数组nb()的下标,就是乘积值所填充到法方程系数阵二维数组变量的下标。例如pibidi中bi、di在误差方程系数数组中的下标分别是2、4,填充到法方程系数阵二维数组变量中的下标就是(2,4)。(www.chuimin.cn)
②误差方程系数和常数项的乘积值,填充到法方程常数项数组变量中时,常数项数组中的下标取决于误差方程系数在数组nb()中的下标。例如pdliii中的di在误差方程系数数组nb()中的下标是4,所以填充到法方程常数一维数组变量中的下标就是4。
4.法方程系数二维与一维存储的关系
系数阵元素储存在一维数组中,其一维下标和二维数组元素下标对应关系如下:
图3.17 法方程系数阵二维与一维储存数值变量下标对应关系
设i和j是法方程系数阵二维储存时的行号和列号,根据一维数组变量下标的递增方式和图3.17中一维和二维数组变量下标的对应关系,可以归纳出法方程系数一维数组变量下标的计算规律如下:
①主对角线上元素行列号相同,下标计算公式为i*(i+1)/2。
②计算j列中数组变量下标应以前一列主对角线元素下标为基础,即以j*(j-1)/2为起算值。
③若对各主对角线元素下标加常数k,则按j*(j-1)/2+k计算,所得数组变量下标表示的位置均在k行上。
由上述规律可得出根据二维数组变量下标(i,j)计算一维数组变量下标h的公式为:
由此可见,用两两互乘误差方程系数在数组变量中的下标,直接确定互乘值在法方程系数阵二维数组变量中的下标后,就可用公式(3-11)确定其在上三角阵一维数组中的下标。
有关测量平差程序设计 第2版的文章
设有n个观测值,组成误差方程组为:应用最小二乘准则组成法方程组,其纯量形式为:其中法方程系数、常数阵中的数值由此可见自乘系数[paa]是由n个值的和组成,这n个值分别是各观测值误差方程中第一个未知数系数平方乘以观测值的权;互乘系数[pab]也是由n个值的和组成,这n个值分别是各观测值误差方程中第一个和第二个未知数系数之积乘以观测值的权。根据这一特点,平差程序组法方程采用的算法是:①按测站循环。......
2023-10-22
误差曲线形状接近椭圆,其极径的长度即等于点位中误差在该方向的投影。由于点位中误差平方等于点位中误差在任意两个相互垂直方向投影的平方和,所以有:图2.6误差椭圆曲线令,得到-qxxsin2φ0+qyysin2φ0+2qxy cos2φ0=0。受当时技术条件局限,测量上长期以椭圆代替误差曲线,称为点位的误差椭圆,长轴坐标方位角Eφ和长短半轴E、F称为点位误差椭圆的参数。图2.8点位落入误差椭圆的概率......
2023-10-22
对于导线网、三边网,可以依测站按观测边循环,计算边长平差值及其精度指标。所以评定精度的方法是,将边长表示为端点坐标平差值的函数,线性化得到权函数式,然后对此应用协因数传播律求权倒数。......
2023-10-22
条件方程有两种形式:①直接表示观测值平差值应满足的条件,其一般形式为f()=0,其中表示观测值向量的平差值。②设定一组数目为t的函数独立参数,将所有观测值平差值表示为的函数,其一般形式为=fi()。测量平差中将观测值代入后所得不符值称为闭合差。......
2023-10-22
未知数数目因控制网性质、图形结构和平差方法不同而计算方法不同。高程控制网必要观测数t为待定点数,所以“多余观测数”=“观测值数”-“待定点数”。以示例程序中的变量表示,则为r=n–导线网。任意组合网既有方向观测值也有边长观测值,所以综合上述几种情况,就有r=nl+ns-2–dxj其中变量dxj是有观测方向值的测站数,其值需要查询统计获得,相应的程序代码为:dxj=0求得了[pvv]和多余观测数r,单位权中误差就可按m0=计算。......
2023-10-22
图1.7属性栏②通过程序代码赋值。图1.8访问Label1.Caption属性运行结果访问对象的方法。方法是VB为对象预设的、用户不能更改的事件过程,不同的对象具有不同的方法。前者由滚动条的Value值变化激发,后者在滚动框被拖动时引发。......
2023-10-22
Visual Basic 6.0可以创建标准的Windows应用程序、ActveX与Active文档等,在设计阶段,VB通称它们为一个工程。设计VB程序涉及工程与文件的新建、保存、移除等多种操作,这些操作贯穿于创建应用程序的整个过程。工程资源管理器是用来管理工程的,它的功能就像Windows中的资源管理器一样。图1.21工程资源管理器在工程资源管理器中,显示有工程名、工程文件名、窗体名和窗体文件名。工程名为VB对用户所创建的应用程序的标识。......
2023-10-22
VB程序是由过程组成的,每个过程是为了完成设定的任务,由一组独立的程序代码组成。图1.11添加过程对话框在“添加过程”对话窗口中只需确定过程名称、类型等信息后回车确定,VB系统即可自动生成“过程”的首尾关键字,用户所需做的工作只是在其中编写代码。......
2023-10-22
相关推荐