資源簡介
lambda算法是一種基于最小二乘估計調(diào)整的搜索算法,是當(dāng)前廣泛應(yīng)用的基于gps載波相位進行定位,測姿和定向的算法。

代碼片段和文件信息
#?include?
#?include?
#?include?
#?include?
#?include??//屏幕處理函數(shù)放在conio.h中
#?include?
#?include?
using?namespace?std;
const?double?pi=3.141593;
void?ldl(double?**Qdouble?**Ldouble?**Dint?n);??//對矩陣Q進行LtDL分解,Lt為下三角矩陣,D為對角矩陣
int?round(double?a);??//對a四舍五入
void?Inv(double?**Aint?n);??//計算矩陣的逆
void?MatrixMultiply(double?**Adouble?**B?double?**Cint?n);???//計算矩陣乘積
void?threeMultiply(double?**Adouble?**Bdouble?**Cint?n);
void?decorrel(double?**Qdouble?*aint?**Zdouble?**Ddouble?**Ldouble?*zint?n);??//去相關(guān)計算
int?sign(double?a);
double?chistart(double?**Ddouble?**Ldouble?*aint?ncandsdouble?factorint?n);
double?gamma(double?x);??//計算伽馬(gamma)函數(shù)值
void?reform(double?*Qint?*bint?ncands);??//將數(shù)組Q中元素從小到大排列,并記錄順序
void?lsearch(double?*afloatdouble?**Ldouble?**Ddouble?Chi2
?double?**afixeddouble?*sqnormint?&ierrint?nint?ncands);
bool?ifdynamic(double?**Qahatint?n);
int?main()
{
int?n=62;
/*cout<<“請輸入?yún)f(xié)方差矩陣維數(shù):“;
cin>>n;*/
int?ncands=2ijkierr;
double?Chi2factor=1.5;
double?**Qahat**L**D**afixed**ahelp2**Qhelp**Zhelp;
Qahat=new?double*[n];L=new?double*[n];D=new?double*[n];afixed=new?double*[n];
ahelp2=new?double*[n];Qhelp=new?double*[n];Zhelp=new?double*[n];
double?**ahelp;
ahelp=new?double*[ncands];
for(i=0;i ahelp[i]=new?double[n];
double?*afloat*z*sqnorm;
afloat=new?double[n];z=new?double[n];sqnorm=new?double[ncands];
i=0;
fstream?fin1(“F:\\float_B.txt“);
for(i=0;i fin1>>afloat[i];
int?**Z*incr;
Z=new?int*[n];
incr=new?int[n];
for(i=0;i {
Qahat[i]=new?double[n];L[i]=new?double[n];D[i]=new?double[n];afixed[i]=new?double[ncands];
ahelp2[i]=new?double[ncands];Qhelp[i]=new?double[n];Zhelp[i]=new?double[n];Z[i]=new?int[n];
}
fstream?fin2(“F:\\Q_BB.txt“);
for(i=0;i for(j=0;j fin2>>Qahat[i][j];
bool?TT1;
TT1=ifdynamic(Qahatn);
if(!TT1)
{
cout<<“錯誤!輸入的協(xié)方差陣不是對稱矩陣。“< return?0;
}
for(i=0;i for(j=0;j Qhelp[i][j]=Qahat[i][j];
ldl(QhelpLDn);
for(i=0;i if(D[i][i]<0)
{
cout<<“錯誤!輸入的協(xié)方差陣不是正定矩陣。“< return?0;
}
for(i=0;i incr[i]=afloat[i];
for(i=0;i afloat[i]=afloat[i]-incr[i];
decorrel(QahatafloatZDLzn);
Chi2=chistart(DLzncandsfactorn);
lsearch(zLDChi2afixedsqnormierrnncands);
if(ierr==1)
{
cout<<“沒有足夠的候選解!“< return?0;
}
for(i=0;i for(j=0;j Zhelp[i][j]=Z[i][j];
Inv(Zhelpn);
for(i=0;i for(j=0;j ahelp[j][i]=afixed[i][j];
for(i=0;i for(j=0;j {
ahelp2[j][i]=0;
for(k=0;k ahelp2[j][i]+=ahelp[i][k]*Zhelp[k][j];
}
for(j=0;j for(i=0;i ahelp2[i][j]+=incr[i];
for(i=0;i for(j=0;j afixed[i][j]=round(ahelp2[i][j]);
fstream?fout1(“F:\\固定解.txt
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????630847??2012-07-02?17:25??LAMBDA\Debug\lambda2.exe
?????文件?????852012??2012-07-02?17:25??LAMBDA\Debug\lambda2.ilk
?????文件?????381452??2012-07-02?17:25??LAMBDA\Debug\lambda2.obj
?????文件???????5277??2012-06-29?08:53??LAMBDA\Debug\simple.obj
?????文件??????82944??2012-07-02?17:25??LAMBDA\Debug\vc60.idb
?????文件?????135168??2012-07-02?17:25??LAMBDA\Debug\vc60.pdb
?????文件???17367040??2012-07-31?09:38??LAMBDA\ipch\lambda2-b958b990\lambda2-6ea0b709.ipch
?????文件??????22861??2012-04-12?21:44??LAMBDA\LAMBDA?C編程.txt
?????文件??????18810??2012-07-02?17:24??LAMBDA\lambda2.cpp
?????文件???????3413??2012-07-02?17:25??LAMBDA\lambda2.dsp
?????文件????????537??2012-07-02?17:30??LAMBDA\lambda2.dsw
?????文件??????41984??2012-07-02?17:30??LAMBDA\lambda2.ncb
?????文件??????48640??2012-07-02?17:30??LAMBDA\lambda2.opt
?????文件????????749??2012-07-02?17:25??LAMBDA\lambda2.plg
?????文件????5918720??2012-07-31?09:45??LAMBDA\lambda2.sdf
?????文件???????2560??2012-07-31?09:43??LAMBDA\lambda2.suo
?????文件???????6120??2012-07-31?09:36??LAMBDA\lambda2.vcxproj
?????文件????????143??2012-07-31?09:36??LAMBDA\lambda2.vcxproj.user
?????目錄??????????0??2012-08-07?10:23??LAMBDA\ipch\lambda2-b958b990
?????目錄??????????0??2012-08-07?10:23??LAMBDA\Debug
?????目錄??????????0??2012-08-07?10:23??LAMBDA\ipch
?????目錄??????????0??2012-08-07?10:23??LAMBDA
-----------?---------??----------?-----??----
?????????????25519277????????????????????22
- 上一篇:Z77PD3.F9e.zip
- 下一篇:USB 加密狗映射工具
評論
共有 條評論