资源简介
GPS网间接平差C语言程序,采用文件读取方式,处理成果存入txt文件中

代码片段和文件信息
#include
#include
#include
#define M 100
#define DS 10
#define GS 25
int fg[M];
double Jx[M]Jy[M]Jz[M]X[M]Y[M]Z[M]B[M][M]BT[M][M]BTP[M][M]BTPB[M][M]BTPBN[M][M]l[M]x[M]P[M][M]BTPL[M]xx[M]yy[M]zz[M]v[M];
double danweiquanzhongwuchaxzwc[M]yzwc[M]zzwc[M]dzwc[M];
struct
{
int qidian;
int zhongdian;
double dx;
double dy;
double dz;
}GPSjxxl[M];
void shuzufuchushizhi()
{
int ij;
for (i=0;i {
for (j=0;j {
fg[i]=0;
B[i][j]=P[i][j]=0.0;
}
}
}
//数据读取
void shujuduqu()
{
int iabno;
double t1t2t3;
FILE *fp;
fp=fopen(“GPS网观测数据2.txt““r“);
if (fp==NULL)
{
printf(“打开文件失败!\n“);
exit(0);
}
//读取基线向量
for (i=1;i<=GS;i++)
{
fscanf(fp“%d%d%d%lf%lf%lf“&no&a&b&t1&t2&t3);
GPSjxxl[i].qidian=a;
GPSjxxl[i].zhongdian=b;
GPSjxxl[i].dx=t1;
GPSjxxl[i].dy=t2;
GPSjxxl[i].dz=t3;
}
//读取已知点坐标
for (i=1;i<2;i++)
{
fscanf(fp“%d%lf%lf%lf“&a&t1&t2&t3);
Jx[a]=X[a]=t1;
Jy[a]=Y[a]=t2;
Jz[a]=Z[a]=t3;
fg[a]=1;
}
fclose(fp);
}
//计算坐标近似值
void cal_zbjinsizhi()
{
int iqdzd;
double dxdydz;
for (i=1;i<=GS;i++)
{
qd=GPSjxxl[i].qidian;
zd=GPSjxxl[i].zhongdian;
dx=GPSjxxl[i].dx;
dy=GPSjxxl[i].dy;
dz=GPSjxxl[i].dz;
if (fg[qd]!=0&&fg[zd]==0)
{
Jx[zd]=Jx[qd]+dx;
Jy[zd]=Jy[qd]+dy;
Jz[zd]=Jz[qd]+dz;
fg[zd]=1;
}
if (fg[qd]==0&&fg[zd]!=0)
{
Jx[qd]=Jx[zd]-dx;
Jy[qd]=Jy[zd]-dy;
Jz[qd]=Jz[zd]-dz;
fg[qd]=1;
}
}
}
//计算B矩阵
void cal_xishu()
{
int iqdzdx1x2;
for (i=1;i<=GS;i++)
{
x1=x2=1;
qd=GPSjxxl[i].qidian;
zd=GPSjxxl[i].zhongdian;
if (qd==1)
{
x1=0;
}
if (zd==1)
{
x2=0;
}
B[3*i-2][3*qd-2]=B[3*i-1][3*qd-1]=B[3*i][3*qd]=-x1;
B[3*i-2][3*zd-2]=B[3*i-1][3*zd-1]=B[3*i][3*zd]=x2;
}
}
//计算常数矩阵
void cal_l()
{
int iqdzd;
double dxdydz;
for (i=1;i<=GS;i++)
{
qd=GPSjxxl[i].qidian;
zd=GPSjxxl[i].zhongdian;
dx=GPSjxxl[i].dx;
dy=GPSjxxl[i].dy;
dz=GPSjxxl[i].dz;
l[3*i-2]=dx-(Jx[zd]-Jx[qd]);
l[3*i-1]=dy-(Jy[zd]-Jy[qd]);
l[3*i]=dz-(Jz[zd]-Jz[qd]);
}
}
//转置矩阵
void zhuanzhi()
{
int ij;
for (i=1;i<=3*GS;i++)
{
for(j=1;j<=3*DS;j++)
{
BT[j][i]=B[i][j];
}
}
}
//计算权阵
void cal_quanzhen()
{
int i;
double sdxdydzt;
for (i=1;i<=GS;i++)
{
dx=GPSjxxl[i].dx;
dy=GPSjxxl[i].dy;
dz=GPSjxxl[i].dz;
s=sqrt((dx*dx)+(dy*dy)+(dz*dz));
t=sqrt(2+2*s/1000);
P[3*i-2][3*i-2]=P[3*i-1][3*i-1]=P[3*i][3*i]=t;
}
}
//矩阵乘法
void juzhenxiangcheng()
{
int ijk;
double t;
//计算BTP
for(i=4;i<=3*DS;i++)
{
for(j=1;j<=3*GS;j++)
{
t=0;
for(k=1;k<=3*GS;k++)
{
t+=BT[i][k]*P[k][j];
}
BTP[i][j]=t;
}
}
//计算BTPB
for(i=4;i<=3*DS;i++)
{
for(j=4;j<=3*DS;j++)
{
t=0;
for(k=1;k<=3*GS;k++)
{
t+=BTP[i][k]*B[k][j];
}
BTPB[i][j]=t;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2013-04-27 21:00 GPS网\
目录 0 2013-04-27 21:00 GPS网\GPS网(校内)\
目录 0 2013-04-27 21:00 GPS网\GPS网(校内)\Debug\
文件 229479 2013-01-06 15:43 GPS网\GPS网(校内)\Debug\GPS网.exe
文件 234200 2013-01-06 15:43 GPS网\GPS网(校内)\Debug\GPS网.ilk
文件 33104 2013-01-06 15:43 GPS网\GPS网(校内)\Debug\GPS网.obj
文件 190452 2013-01-06 15:43 GPS网\GPS网(校内)\Debug\GPS网.pch
文件 418816 2013-01-06 15:43 GPS网\GPS网(校内)\Debug\GPS网.pdb
文件 33792 2013-01-06 15:43 GPS网\GPS网(校内)\Debug\vc60.idb
文件 45056 2013-01-06 15:43 GPS网\GPS网(校内)\Debug\vc60.pdb
文件 9575 2013-01-06 15:44 GPS网\GPS网(校内)\GPS网.c
文件 3389 2013-01-06 15:43 GPS网\GPS网(校内)\GPS网.dsp
文件 518 2013-01-06 15:44 GPS网\GPS网(校内)\GPS网.dsw
文件 33792 2013-01-06 15:44 GPS网\GPS网(校内)\GPS网.ncb
文件 48640 2013-01-06 15:44 GPS网\GPS网(校内)\GPS网.opt
文件 745 2013-01-06 15:43 GPS网\GPS网(校内)\GPS网.plg
文件 106744 2013-01-06 15:43 GPS网\GPS网(校内)\GPS网平差数据处理成果.txt
文件 827 2012-12-26 21:36 GPS网\GPS网(校内)\GPS网观测数据2.txt
目录 0 2013-04-27 21:00 GPS网\GPS网(校外)\
目录 0 2013-04-27 21:00 GPS网\GPS网(校外)\Debug\
文件 229479 2013-01-06 15:46 GPS网\GPS网(校外)\Debug\GPS网.exe
文件 234200 2013-01-06 15:46 GPS网\GPS网(校外)\Debug\GPS网.ilk
文件 33008 2013-01-06 15:46 GPS网\GPS网(校外)\Debug\GPS网.obj
文件 190452 2013-01-06 15:46 GPS网\GPS网(校外)\Debug\GPS网.pch
文件 418816 2013-01-06 15:46 GPS网\GPS网(校外)\Debug\GPS网.pdb
文件 33792 2013-01-06 15:46 GPS网\GPS网(校外)\Debug\vc60.idb
文件 45056 2013-01-06 15:46 GPS网\GPS网(校外)\Debug\vc60.pdb
文件 9613 2013-01-06 15:46 GPS网\GPS网(校外)\GPS网.c
文件 3389 2013-01-06 15:46 GPS网\GPS网(校外)\GPS网.dsp
文件 518 2013-01-06 15:46 GPS网\GPS网(校外)\GPS网.dsw
文件 33792 2013-01-06 15:46 GPS网\GPS网(校外)\GPS网.ncb
............此处省略4个文件信息
相关资源
- C++中头文件与源文件的作用详解
- C语言代码高亮html输出工具
- 猜数字游戏 c语言代码
- C语言课程设计
- 数字电位器C语言程序
- CCS FFT c语言算法
- 使用C语言编写的病房管理系统
- 通信过程中的RS编译码程序(c语言)
- 计算机二级C语言上机填空,改错,编
- 用回溯法解决八皇后问题C语言实现
- 简易教务管理系统c语言开发文档
- 操作系统课设 读写者问题 c语言实现
- 小波变换算法 c语言版
- C流程图生成器,用C语言代码 生成C语
- 3des加密算法C语言实现
- 简单的C语言点对点聊天程序
- 单片机c语言源程序(51定时器 八个按
- 个人日常财务管理系统(C语言)
- c语言电子商务系统
- 小甲鱼C语言课件 源代码
- 将图片转换为C语言数组的程序
- C语言实现的一个内存泄漏检测程序
- DES加密算法C语言实现
- LINUX下命令行界面的C语言细胞游戏
- 用单片机控制蜂鸣器播放旋律程序(
- 学校超市选址问题(数据结构C语言版
- 电子时钟 有C语言程序,PROTEUS仿真图
- 尚观培训linux许巍老师关于c语言的课
- 算符优先语法分析器(C语言编写)
- 基于C语言的密码锁程序
评论
共有 条评论