1 / 22
文档名称:

前方后方空间交会实验报告.docx

格式:docx   大小:113KB   页数:22页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

前方后方空间交会实验报告.docx

上传人:916581885 2022/4/8 文件大小:113 KB

下载得到文件列表

前方后方空间交会实验报告.docx

文档介绍

文档介绍:中南大学
本科生课程设计(实践)任务书、设计报告
(摄影测量与遥感概论)
题 目
空间前方-前方交会
学生姓名
指导教师
邹峥嵘
学 院
地球科学与信息物理学院
专业班级*Y2+Ys2))/2;Zt=((N1*Z1+Zs1)+(N2*Z2+Zs2)) /2 ;
结束程序
程序中的主要函数设计
子函数〔矩阵求积multiply,计算函数Resection,矩阵转置transpose,矩阵求逆inMerse1,输出函数shuchu,左片的外方位元素求解函数zuobian。右片的外方位元素求解函数youbian。〕
程序源代码
#include ""
#include ""
double Xs1,Xs2,Ys1,Ys2,Zs1,Zs2,p01,p02,w01,w02,k01,k02;
//求矩阵a的转置矩阵b,a为m行、n列
void transpose(double *a, double *b, int m, int n);
//矩阵a乘以矩阵b,结果存储在c中,a为m×n大小,b为n×l大小
void multiply(double *a, double *b, double *c, int m, int n, int l);
//求矩阵a的逆
int inMerse1(double *a, int n);
//输出m行、n列的矩阵a
void shuchu(double *a, int m, int n);
//计算并输出左片的外方位元素
void zuobian();
//计算并输出右片的外方位元素
void youbian();
void zuobian()
{

FILE *fp = NULL;
FILE *fp1 = NULL;
if((fp=fopen("F:\","r")) == NULL)
{
printf("Open file error!");
return;
}
if((fp1=fopen("F:\","r")) == NULL)
{
printf("Open file error!");
return;
}
//像点坐标和地面点坐标
double imagecontrol[4][2]={};
double groundcontrol[4][3]={};
//摄影比例尺分母
double m = 9943;
double f=;
long i,j,k;
for(i=0; i<4; i++)
{
for(j=0; j<2; j++)
{
fscanf(fp, "%lf", &imagecontrol[i][j]);
imagecontrol[i][j] /= ;
}
for(k=0; k<3; k++)
{
fscanf(fp1, "%lf", &groundcontrol[i][k]);
}
}
fclose(fp);
fclose(fp1);

//计算外方位元素初始值
for( i=0;i<4;i++)
{
Xs1+=groundcontrol[i][0];
Ys1+=groundcontrol[i][1];
Zs1+=groundcontrol[i][2];
}
Xs1/=;
Ys1/=;
Zs1/=;
Zs1+=m*f;
double R[3][3]={};
double L3=,L1=,L2=;
double L[8][1]={},x=,y=;
double A[8][6]={},AT[6][8]={},ATA[6][6]={},B[6][8]={};
double V[6][1]={};
int n=0;
do
{
//计算旋转矩阵
R[0][0]=cos(p01)*cos(k01)-sin(p01)*sin(w01)*sin(k01);
R[0][1]=(-1)*cos(p01)*sin(k01)-sin(p01)*sin(w01)*cos(k01);