首页 误差理论及测量平差课程设计报告

误差理论及测量平差课程设计报告

举报
开通vip

误差理论及测量平差课程设计报告..PAGE..word.zl......资料....n目录一、目录----------------------------1二、序言----------------------------2三、设计思路------------------------3四、程序流程图----------------------4五、程序及说明----------------------5六、计算结果-----------------------12七、总结---------------------------15第二局部序言...

误差理论及测量平差课程设计报告
..PAGE..word.zl......资料....n目录一、目录----------------------------1二、序言----------------------------2三、设计思路------------------------3四、程序流程图----------------------4五、程序及说明----------------------5六、计算结果-----------------------12七、总结---------------------------15第二局部序言1、课程设计的性质、目的和任务  误差理论与测量平差是一门理论与实践并重的课程,其课程设计是测量数据处理理论学习的一个重要的实践环节,它是在我们学习了专业根底课“误差理论与测量平差根底〞课程后进展的一门实践课程。其目的是增强我们对误差理论与测量平差根底理论的理解,结实掌握测量平差的根本原理和根本公式,熟悉测量数据处理的根本技能和计算方法,灵活准确地应用于解决各类数据处理的实际问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 ,并能用所学的计算机理论知识,编制简单的计算程序。2、误差理论与测量平差课程和其它课程的联系和分工  这次课程设计中所用的数学模型和计算方法是我们在误差理论与测量平差课程中所学的内容,所使用的C程序语言使我们在计算机根底课程中所学知识。误差理论与测量平差课程设计是测量平差和计算机程序设计等课程的综合实践与应用,同时也为我们今后步入工作岗位打下了一定根底。3、课程设计重点及内容  本次课程设计重点是培养我们正确应用公式、综合分析和解决问题的能力,以及计算机编程能力。另外它要求我们完成1-2个综合性的结合生产实践的题目。如目前生产实践中经常用到的水准网严密平差及精度评定,边角网〔导线〕严密平差及精度评定等。此次我所选的课程设计课题是水准网严密平差及精度评定,其具体内容如下:根据题目要求,正确应用平差模型列出观测值条件方程、误差方程和法方程;解算法方程,得出平差后的平差值及各待定点的高程平差值;评定各平差值的精度和各高程平差值的精度。具体算例为:如下图水准网,有2个点,3个未知点,7个测段。各数据及观测值见下表点高程H1=5.016m,H2=6.016m〔2〕高差观测值(m)端点号高差观测值m测段距离km序号1-31.3591.111-42.0091.722-30.3632.332-41.0122.743-40.6572.453-50.2381.465-2-0.5952.67〔3〕求各待定点的高程;3-4点的高差中误差;3号点、4号点的高程中误差。第三局部设计思路一、解题步骤〔1〕此次设计我所采用的模型为间接平差模型,根据条件我们可知观测总数n=7,必要观测数t=3〔那么多余观测数r=n-t=4〕,因此我需先选定三个参数,即3、4、5点的最或然高程X3、X4、X5〔X=X0+x,X30=6.375、X40=7.025、X50=6.611;其中X0为参数的近似值,x为其改正值〕为参数。〔2〕列出条件方程,即将每一个观测量的平差值分别表达成所选参数的函数,H1+h1=X3、H1+h2=X4、H2+h3=X3、H2+h4=X4、X3+h5=X4、X3+h6=X5、X5+h7=H2;整理后得出误差方程,v1=x3、v2=x4、v3=x3-4、v4=x4-3、v5=-x3+x4-7、v6=-x3+x5-2、v7=-x5,即v=Bx-l的形式。〔3〕定权,令每千米的观测高差为单位权观测,即Pi=1/Si,从而可写出权阵P;根据误差方程式又可得其系数矩阵B和自由项l,并由它们组成法方程NBBx-W=0〔其中NBB=BTPB,W=BTPl〕,法方程的个数等于所选参数的个数。〔4〕解算法方程,求出参数改正值x并计算参数的平差值X=X0+x。〔5〕由误差方程计算V,并求出观测量的平差值。为了检查平差计算的正确性,将所求的值代入条件方程,看其是否满足方程。〔6〕精度评定,计算单位权中误差,按照题设要求列出权函数式,再根据平差参数的协方差阵求出协因数,最后求出某段高差中误差,某些点的高程中误差。二、程序设计思想考虑到在解题过程中一些计算的复杂性,我们需借助一些技术将计算简单化,快捷化,因此在课程设计过程中,我们把一些C语言程序设计引入其中;通过一些简单、明了的程序及子函数调用,我们就可以很方便快捷的求出用笔算比拟繁琐、费时的矩阵乘积、矩阵的逆〔如BTPB、BTPl〕等运算。第四局部程序流程图根据题目列出条件方程并写成误差方程的形式V=Bx-l↓确定权阵,根据误差方程得到矩阵B、l进而写出BT↓运用C程序语言求出BTP,进一步得到NBB=BTPB、W=BTPl并求出NBB-1↓用C程序求出参数的改正数x=NBB-1W↓根据C程序语言求Bx,进而由V=Bx-l写出各观测值的改正数↓根据L=L+V求出各观测值的平差值↓检验所求各值是否正确,假设无误那么往下进展,反之检查各步骤查出错误并改正↓由程序计算VTP进而求出VTPV,求单位权中误差,再根据权函数式、协因数传播定律评定各观测值及所求高程的精度第五局部程序及说明一、矩阵相乘计算函数#include“stdio.h〞voidMatrix(a,b,m,n,k,c)intm,n,k;doublea[],b[],c[];{inti,j,l,u;for(i=0;i<=m-1;i++)for(j=0;j<=k-1;j++){u=i*k+j;c[u]=0.0;for(l=0;l<=n-1;l++)c[u]=c[u]+a[i*n+l]*b[l*k+j];}return;}1.计算BTPmain(){inti,j;staticdoublea[3][7]=BT;staticdoublec[3][7],b[7][7]=P;Matrixmul(a,b,3,7,7,c);printf(“\n〞);for(i=0;i<=2;i++){for(j=0;j<=6;j++)printf(“%8.4f\t〞,c[i][j];printf(“\n〞);}printf(“\n〞);return0;}2.计算BTPB,即NBBmain(){inti,j;staticdoublea[3][7]=BTP;staticdoublec[3][3],b[7][3]=B;Matrixmul(a,b,3,7,3,c);printf(“\n〞);for(i=0;i<=2;i++){for(j=0;j<=2;j++)printf(“%8.4f\t〞,c[i][j];printf(“\n〞);}printf(“\n〞);return0;}3.计算BTPl,即Wmain(){inti,j;staticdoublea[3][7]=BTP;staticdoublec[3][1],b[7][1]=l;Matrixmul(a,b,3,7,1,c);printf(“\n〞);for(i=0;i<=2;i++){for(j=0;j<=0;j++)printf(“%8.4f\t〞,c[i][j];printf(“\n〞);}printf(“\n〞);return0;}二、矩阵的逆计算函数〔求NBB-1〕#include"stdio.h"#defineM3voidmain(){floatMAT[M][2*M];floatMAT1[M][M];floatt;inti,j,k,l;/***********************************************//*对矩阵进展初始化*/for(i=0;i#include#include#include#include#includeusingnamespacestd;classSZWPC{private:intgcz_zs;//高差总数intszd_zs;//总点数intyz_szd_zs;//点数doubles0;//单位权水准路线长度doublem_pvv;//[pvv]int*qsd_dh;//高差起点号int*zd_dh;//高差终点号char**dm;//点名地址数组double*gcz;//观测值数组double*szd_gc;//高程值数组double*P;//观测值的权double*BTPB,*BTPL;//法方程系数矩阵与自由项double*dX;//高程改正数、平差值double*V;//残差doublezwc;//单位权中误差public:SZWPC();~SZWPC();intij(inti,intj);//对称矩阵下标计算函数boolinverse(doublea[],intn);//对称正定矩阵求逆(仅存下三角元素)(参考他人〕voidinputdata(char*datafile);//输入原始数据函数intdm_dh(char*name);//点名转点号voidca_H0();//近似高程计算函数voidca_BTPB();//法方程组成函数voidca_dX();//高程平差值计算函数voidprintresult(char*resultfile);//精度估计与平差值输出函数doubleca_V();//残差计算函数voidzxecpc(char*resultfile);//最小二乘平差函数};//////////构造函数SZWPC::SZWPC(){gcz_zs=0;szd_zs=0;yz_szd_zs=0;}//////析构函数SZWPC::~SZWPC(){if(gcz_zs>0){delete[]qsd_dh;delete[]zd_dh;delete[]gcz;delete[]P;delete[]V;}if(szd_zs>0){delete[]szd_gc;delete[]BTPB;delete[]BTPL;delete[]dX;for(inti=0;i=j)?i*(i+1)/2+j:j*(j+1)/2+i;}//对称正定矩阵求逆(仅存下三角元素)boolSZWPC::inverse(doublea[],intn){double*a0=newdouble[n];for(intk=0;k>gcz_zs>>szd_zs>>yz_szd_zs;infile>>s0;szd_gc=newdouble[szd_zs];dX=newdouble[szd_zs];BTPB=newdouble[szd_zs*(szd_zs+1)/2];BTPL=newdouble[szd_zs];qsd_dh=newint[gcz_zs];zd_dh=newint[gcz_zs];gcz=newdouble[gcz_zs];V=newdouble[gcz_zs];P=newdouble[gcz_zs];dm=newchar*[szd_zs];for(inti=0;i>buffer;intc=dm_dh(buffer);infile>>szd_gc[i];}for(inti=0;i>buffer;//读取高程起点名qsd_dh[i]=dm_dh(buffer);infile>>buffer;//读取高程终点zd_dh[i]=dm_dh(buffer);infile>>gcz[i]>>P[i];//读取高差值与路线长度P[i]=s0/P[i];//线路长转化为观测值的权}infile.close();}//////////点名转点号,返回点名对应的点号intSZWPC::dm_dh(char*name){for(inti=0;i-10000.0&&szd_gc[k2]<-10000.0)//k1点高程或高程近似值,k2点高程或高程近似值未知{szd_gc[k2]=szd_gc[k1]+gcz[i];//计算近似高程k++;}elseif(szd_gc[k1]<-10000.0&&szd_gc[k2]>-10000.0)//k2点高程或高程近似值,k1点高程或高程近似值未知{szd_gc[k1]=szd_gc[k2]-gcz[i];//计算近似高程k++;}}if(k==(szd_zs-yz_szd_zs))break;//所有的近似高程计算完成,退出}}////////////////////////////////组成法方程voidSZWPC::ca_BTPB(){intt=szd_zs;for(inti=0;i>a;//原始数据文件存储地址指针datafile=a;cout<<"平差后文件存储的路径及文件名字:";cin>>b;//平差后文件存储地址指针resultfile=b;cout<
本文档为【误差理论及测量平差课程设计报告】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
wdggjmm
从事建筑施工管理与质量安全、方案设计、可行性研究报告
格式:doc
大小:93KB
软件:Word
页数:0
分类:教育学
上传时间:2021-10-05
浏览量:6