资源简介
这是军测的老师写的平差的程序的基础函数,包括求逆,矩阵传播,矩阵输出等功能的实现,比较有用。
代码片段和文件信息
// MyCpp.cpp: implementation of the CMyCpp class.
//
//////////////////////////////////////////////////////////////////////
#include “stdafx.h“
#include “stdio.h“
#include
#include
#include “math.h“
#include “public.h“
//////////////////////////////////////////////////////////////////////////
// 显示提示信息
void MyBreak(char* fmt ...)
{
char buffer[256];
va_list argptr;
va_start(argptr fmt);
vsprintf(buffer fmt argptr);
va_end(argptr);
#ifdef VC_EXTRALEAN
AfxMessageBox(buffer);
#else
printf(buffer);
getchar();
#endif // VC_EXTRALEAN
}
//////////////////////////////////////////////////////////////////////////
// 对称矩阵下标计算函数
int ij(int iint j)
{
return (i>=j)? i*(i+1)/2+j :j*(j+1)/2+i;
}
//////////////////////////////////////////////////////////////////////////
// 权倒数计算函数
double Calculate_q(double *Qdouble *Fint t)
{
double q=0.0;
for(int i=0;i for(int j=0;j q+=Q[ij(ij)]*F[i]*F[j];
return q;
}
//////////////////////////////////////////////////////////////////////////
// 权倒数计算函数(系数系列进行了压缩)
double Calculate_q(double Q[]double F[]int Fin[]int n)
{
double q=0.0;
for(int k=0;k {
int i=Fin[k];
for(int s=0;s {
int j=Fin[s];
q+=Q[ij(ij)]*F[k]*F[s];
}
}
return q;
}
//////////////////////////////////////////////////////////////////////////
// 将度分秒连写的(double型)角度化为弧度值
double dms_rad(double a)
{
//提取角度值的符号
double sign=(a<0.0) ? -1.0 : 1.0;
a=fabs(a);
//提取角度值的整度
int d=(int)((a+0.00001)/10000.0);
a=a-d*10000.0;
if(a<0.0){ d=d-1; a=a+10000;}
//提取角度值的整分及秒值
int m=(int)((a+0.00001)/100.0);
a=a-m*100;
if(a<0.0){ m=m-1; a=a+100.0;}
a=sign*(d*3600.0+m*60.0+a)/206264.806247096363;
return a;
}
//////////////////////////////////////////////////////////////////////////
// 将角度的弧度值化为度分秒连写的角度(double 型)
double rad_dms(double a)
{
a=a*206264.806247096363;
double sign=(a<0.0) ? -1.0 : 1.0;
a=fabs(a);
int d=(int)(a/3600.0+0.0000001);
a=a-d*3600.0;
if(a<0.0){ d=d-1; a=a+3600.0; }
int m=(int)(a/60.0+0.0001);
a=a-m*60.0;
if(a<0.0){ m=m-1; a=a+60.0; }
a=d*10000.0+m*100.0+a;
return a*sign;
}
//////////////////////////////////////////////////////////////////////////
// 权逆阵传播计算
void Calculate_BQBT(double B[]double Q[]int rint ndouble N[])
{
for(int i=0;i for(int j=0;j<=i;j++)
{
double nij=0.0;
for(int k=0;k for(int s=0;s nij+=B[i*n+k]*Q[ij(ks)]*B[j*n+s];
N[ij(ij)]+=nij;
}
}
//////////////////////////////////////////////////////////////////////////
// 向文件输出数组
void PrintM(FILE *fpdouble A[]int size int tchar* fmt
char* titlebool IsLabel)
{
if(title)fprintf(fp“\n %s: “title);
int j=0;
for(int i=0;i {
if(i%t==0)
{
j++;
if(IsLabel)fprintf(fp“\n%3d “j);
els
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 17727 2008-12-25 09:39 平差辅助函数\Debug\public.obj
文件 0 2008-12-25 09:39 平差辅助函数\Debug\public.sbr
文件 2200 2008-12-25 08:03 平差辅助函数\Debug\StdAfx.obj
文件 263 2008-12-25 08:03 平差辅助函数\Debug\StdAfx.sbr
文件 41984 2008-12-25 09:39 平差辅助函数\Debug\vc60.idb
文件 61440 2008-12-25 09:39 平差辅助函数\Debug\vc60.pdb
文件 91136 2008-12-25 09:39 平差辅助函数\Debug\平差辅助函数.bsc
文件 196701 2008-12-25 09:39 平差辅助函数\Debug\平差辅助函数.exe
文件 291288 2008-12-25 09:39 平差辅助函数\Debug\平差辅助函数.ilk
文件 18328 2008-12-25 08:24 平差辅助函数\Debug\平差辅助函数.obj
文件 187268 2008-12-25 08:03 平差辅助函数\Debug\平差辅助函数.pch
文件 508928 2008-12-25 09:39 平差辅助函数\Debug\平差辅助函数.pdb
文件 0 2008-12-25 08:24 平差辅助函数\Debug\平差辅助函数.sbr
文件 5915 2008-12-25 09:39 平差辅助函数\public.cpp
文件 1720 2008-12-23 14:17 平差辅助函数\public.h
文件 1244 2008-12-25 07:40 平差辅助函数\ReadMe.txt
文件 299 2008-12-25 07:40 平差辅助函数\StdAfx.cpp
文件 667 2008-12-25 07:40 平差辅助函数\StdAfx.h
文件 4234 2008-12-25 08:24 平差辅助函数\平差辅助函数.cpp
文件 4732 2008-12-25 08:24 平差辅助函数\平差辅助函数.dsp
文件 549 2008-12-25 07:40 平差辅助函数\平差辅助函数.dsw
文件 41984 2009-04-13 09:53 平差辅助函数\平差辅助函数.ncb
文件 49664 2008-12-25 09:39 平差辅助函数\平差辅助函数.opt
文件 1578 2008-12-25 09:39 平差辅助函数\平差辅助函数.plg
文件 188 2008-07-12 17:32 平差辅助函数\算例\Result.txt
文件 84 2008-12-25 08:12 平差辅助函数\算例\对称矩阵输出\Result.txt
文件 188 2008-12-25 08:15 平差辅助函数\算例\权逆阵传播\Result.txt
文件 80 2007-06-08 15:38 平差辅助函数\算例\求逆计算\Data.txt
文件 360 2007-06-12 14:33 平差辅助函数\算例\求逆计算\Result.txt
文件 131 2008-12-25 08:24 平差辅助函数\算例\矩阵输出\Result.txt
............此处省略12个文件信息
- 上一篇:病毒分析报告之关于机器狗病毒的分析资料
- 下一篇:牛头刨完整课程设计,全面
评论
共有 条评论