亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? broad.c

?? GPS詳盡的代碼
?? C
字號:
broad.c

void broadcast(fp,ifp,borb,itborb)
/* 函數 broadcast 計算廣播星歷 */
FILE *fp[Ista];
int ifp;
long itborb[8];
double borb[Isat*I96*8];
{    int idat[Isat*6*Iepoch*Ista],idimension=0,version;
     double ddat[Isat*28*Iepoch*Ista],ion_p[8];
     int i,j,K,k,c,c1,j1;
/* 函數 r_eph 讀全部星歷數據 */ 
     r_eph(fp,stdout,ifp,&version,ion_p,idat,ddat,&idimension);
     for(i=0;i<ifp;i++) fclose(fp[i]);
/* 計算軌道數據 */
     borbc(idat,ddat,idimension,borb,itborb);
/* 為控制的輸出 */
}
void borbc(idat,ddat,idimension,borb,itborb)
/* 應用廣播星歷計算軌道數據 */
int idat[Isat*6*Iepoch*Ista],idimension;
long itborb[8];
double ddat[Isat*28*Iepoch*Ista];
double borb[Isat*I96*8];
{    int i,i1,j,k,j4,Idt=900,iepoch,isat_n,iiv[Isat];
     double epocht,orbit[5];
/* 設置計算時間 */
     for(i=1;i<6;i++) itborb[i]=idat[i]; itborb[5]=0; itborb[6]=0;
     itborb[4] -= 2; if(itborb[4]<0) itborb[4] = 0;
     iepoch = 1 + (-itborb[4]*3600-itborb[5]*60+
            (idat[4+(idimension-1)*6]+2)*3600+idat[5+(idimension-1)*6]*60)/Idt;
     if(iepoch>97) iepoch=97;
     itborb[7]=iepoch;
     for(k=0,j=0;j<iepoch;j++) 				/* 對于每一個歷元 */
      { epocht=itborb[4]*3600.+j*Idt;
        isat_n = findisat(idat,ddat,idimension,iiv,epocht);
        if(j==0) itborb[0] = isat_n;
        i = (int)(epocht/3600);j4=(int)(epocht-i*3600);j4=j4/60;
        for(i=0;i<isat_n;i++) 				/* 對于每一衛星 */
         { i1=iiv[i];
           broadcast_orbit(idat,ddat,idimension,i1,epocht,orbit);
           for(j4=0;j4<4;j4++) borb[j4+i*8+j*8*Isat]=orbit[j4];
           borb[7+i*8+j*8*Isat]=orbit[4];
           broadcast_orbit(idat,ddat,idimension,i1,epocht+1.,orbit);
           for(j4=1;j4<4;j4++)
           borb[j4+3+i*8+j*8*Isat]=orbit[j4]-borb[j4+i*8+j*8*Isat];
           k+=1;}}}
int findisat(idat,ddat,idimension,iiv,epocht)
/* 找到共同的衛星號和最接近歷元epocht (記錄數據)時的衛星向量 iiv */
int idat[Isat*6*Iepoch*Ista],idimension,iiv[Isat];
double ddat[Isat*28*Iepoch*Ista],epocht;
{    int isat=0,i,j1,j2,j3,k,k1;
     double t,tj[Isat*20];
     int isatv[Isat*20],j[Isat*20];
/* 注明衛星號和數據行號以及時間差 */
     for(k=0,i=0;i<idimension;i++) 
       { t = fabs(idat[4+i*6]*3600.-epocht);
         tj[k]=t;j[k]=i;isatv[k]=idat[i*6];k+=1; }
/* 找到最靠近的數據 */
     onceagain:;
     for(j1=0;j1<k-1;j1++) 
       { for(j2=j1+1;j2<k;j2++) 
          { if(isatv[j1]==isatv[j2]) 
             { if(tj[j1]>tj[j2]+0.001) j3 = j1;
                else j3 = j2;
                for(k1=j3;k1<k-1;k1++) 
                  { tj[k1]=tj[k1+1];isatv[k1]=isatv[k1+1];j[k1]=j[k1+1]; }
                 k -= 1;
                 goto onceagain; }}}
/* 將數據排次序,令衛星號增加 */
     once1again:; j3 = 0;
     for(j1=0;j1<k-1;j1++) 
      { for(j2=j1+1;j2<k;j2++) 
        { if(isatv[j1]>isatv[j2]) 
          { j3 += 1;
            i=isatv[j1];isatv[j1]=isatv[j1+1];isatv[j1+1]=i;
            i=j[j1],j[j1]=j[j1+1];j[j1+1]=i; } } }
     if(j3!=0) goto once1again;   
/* 將結果放入輸出向量 */ 
     for(i=0;i<k;i++) {iiv[i] = j[i];}
     return(k);}
void broadcast_orbit(idat,ddat,idimension,i_line,epocht,orbit)
/* 此函數應用廣播星歷的i_line 數據計算epocht歷元的衛星位置 */
int idat[Isat*6*Iepoch*Ista],idimension,i_line;
double ddat[Isat*28*Iepoch*Ista];
double orbit[5],epocht;
{    int i,j,j1,k;
     double e,M_,l,w,r,ri,E,u,v,mue,we,to,toe,sqrta,r0;
     double sw,cw,sl,cl,si,ci,rx,ry,rz,pi2,tk,u2,t;
     mue = 39860.05e+10; we = 729211.5e-10; pi2 = 2*acos(-1.);
     t = epocht;
     i = i_line; 
     toe = ddat[12+i*28]; sqrta = ddat[11+i*28];
     to = toe-(idat[4+i*6]*3600+idat[5+i*6]*60+ddat[0+i*28]);
     if(to>302400.e0) to -= 604800.e0;
     if(to<-302400.e0) to += 604800.e0;
     t += to;
     tk = t -toe;
     if(tk>302400.e0) tk -= 604800.e0;
     if(tk<-302400.e0) tk += 604800.e0;
     M_ = ddat[7+i*28] +
         (sqrt(mue)/ddat[11+i*28]/ddat[11+i*28]/ddat[11+i*28]+ddat[6+i*28])*tk;
     M_ = fmod(M_,pi2);
     M_ = fmod(M_+pi2,pi2);
     e = ddat[9+i*28];
     E = Kepler_equation(e,M_);
     v = atan2(sqrt(1-e*e)*sin(E),cos(E)-e);
     u = ddat[18+i*28] + v;
     u2 = fmod(u+u,pi2);
     u2 = fmod(u2+pi2,pi2);
     w = u + ddat[8+i*28]*cos(u2) + ddat[10+i*28]*sin(u2);
     w = fmod(w,pi2);
     w = fmod(w+pi2,pi2);
     r0 = sqrta*(1-e*cos(E))*sqrta;
     r = r0 + ddat[17+i*28]*cos(u2) + ddat[5+i*28]*sin(u2);
     ri = ddat[16+i*28] + ddat[13+i*28]*cos(u2) + ddat[15+i*28]*sin(u2)+ddat[20+i*28]*tk;
     l = ddat[14+i*28] + (ddat[19+i*28]-we)*tk - we*fmod(toe,6.048e5);
     l = fmod(l, pi2);
     l = fmod(l+pi2, pi2);
     cw = cos(w); sw = sin(w);
     cl = cos(l); sl = sin(l);
     ci = cos(ri); si = sin(ri);
     rx =  r*cw*cl-r*sw*sl*ci;
     ry =  r*cw*sl+r*sw*cl*ci;
     rz =  r*sw*si;
     orbit[0]=(double)idat[0+i*6];
     orbit[1]=rx;orbit[2]=ry;orbit[3]=rz;
     orbit[4] = ddat[1+i*28] + ddat[2+i*28]*tk + ddat[3+i*28]*tk*tk;
     orbit[4]*=1000000; }
double Kepler_equation(e,M_)
double e,M_;
/* 求解開普勒方程,求 E(t) = M(t) + e*sinE(t)  */
  { int i;
    double s,s1;
    s = M_; 
    repeat:;
    s1 = M_ + e*sin(s);
    if(fabs(s1-s)>1.e-8) {s=s1;goto repeat;}
    return(s1);}
void r_eph(fp,fp1,ifp,version,ion_p,idat,ddat,idimension) 
/* 函數 r_eph 從全部有關數據中讀取標準軌道文件并檢查數據,避免重復*/
FILE *fp[Ista],*fp1;
int *version,*idimension;
double ion_p[8];
int ifp,idat[Isat*6*Iepoch*Ista];
double ddat[Isat*28*Iepoch*Ista];
{  int i,j,K=0,jj,c,Ic;
   int sat,year,month,day,hour,min;
   double f1,f2,f3,f4;
   char s[Iline];
/*讀廣播軌道數據文件中的字頭 */ 
     for(jj=0;jj<ifp;jj++) 
      { c = getline(fp[jj],s);         
        sscanf(s,"%d", &i); *version = i; Ic = i;
        for (j=0;j<2;j++) c = getline(fp[jj],s); 
        if(i==2) 
        { for (j=0;j<4;j++) 
          { c = getline(fp[jj],s);
           if(strstr(s,"HEAD")) goto datapart; }}
        datapart:;
/* 讀取軌道數據 */
        while ((c = getline(fp[jj],s)) != EOF) 
        {  i = 0; DdE_e(s);
           sscanf(s,"%d %d %d %d %d %d %lf %lf %lf %lf",&sat,&year,&month,
                  &day,&hour,&min,&f1,&f2,&f3,&f4);
/* 時間檢查 小時=24,分鐘=60,秒數=60 */
           if(f1==60.) { f1 = 0.; min += 1; }
           if(min==60) { min = 0; hour += 1; }
           if(hour==24) { hour = 0; day += 1; }
/* 存儲數據 */
           idat[0+K*6] = sat;   idat[1+K*6] = year;
           idat[2+K*6] = month; idat[3+K*6] = day;
           idat[4+K*6] = hour;  idat[5+K*6] = min;
           ddat[0+K*28] = f1;   ddat[1+K*28] = f2;
           ddat[2+K*28] = f3;   ddat[3+K*28] = f4;
/* 讀其他的6行并存儲 */
           for (j=0;j<6;j++) 
            { c = getline(fp[jj],s); i += 1;  DdE_e(s);
              sscanf(s,"%lf %lf %lf %lf",&f1,&f2,&f3,&f4);
              ddat[0+i*4+K*28] = f1;   ddat[1+i*4+K*28] = f2;
              ddat[2+i*4+K*28] = f3;   ddat[3+i*4+K*28] = f4; }
           if(Ic==2) c = getline(fp[jj],s);
           K += 1; }
        *idimension = K;
/* 數據檢查 */
        eph_check(fp1,version,ion_p,idat,ddat,idimension); }
/* 為控制的輸出 */
}
void eph_check(fp1,version,ion_p,idat,ddat,idimension) 
/* 函數 eph_check 檢查由 r_eph 讀取的星歷數據,按時間和衛星號排序,避免重復 */
FILE *fp1;
int *version,*idimension;
double ion_p[8];
int idat[Isat*6*Iepoch*Ista];
double ddat[Isat*28*Iepoch*Ista];
{    int i,j,k,K,c,c1;
     int isum;
     long time,time1;
     double f1,f2,f3,f4;
     K = *idimension;
/* 將數據按時間排序 */
     tloop:; c = 0;
     for (i=0;i<K-1;i++) 
      { time = idat[2+i*6]*10000+idat[3+6*i]*100+idat[4+6*i];
        time1 = idat[2+i*6+6]*10000+idat[3+6*i+6]*100+idat[4+6*i+6];
        if (time>time1) 
        { c += 1;
          for (j=0;j<6;j++) 
            { isum = idat[j+6*i];
              idat[j+6*i] = idat[j+6*i+6]; idat[j+6*i+6] = isum; }
              for (j=0;j<28;j++) 
             { f1 = ddat[j+28*i];
               ddat[j+28*i] = ddat[j+28*i+28]; ddat[j+28*i+28] = f1;}}
/* 在同一歷元中,將數據按衛星號排序 */ 
        else if (time==time1) 
        { if (idat[6*i]>idat[6+6*i]) 
          { c += 1;
            for (j=0;j<6;j++) 
            {  isum = idat[j+6*i];
               idat[j+6*i] = idat[j+6*i+6]; idat[j+6*i+6] = isum; }
               for (j=0;j<28;j++) 
               { f1 = ddat[j+28*i];
                 ddat[j+28*i] = ddat[j+28*i+28]; ddat[j+28*i+28] = f1;}}
/* 對于同樣衛星和同一歷元,如果數據相同,進行檢查 */ 
           else if (idat[6*i]==idat[6+6*i]) 
          { c1 = 0; for (j=0;j<6;j++) 
           { if (idat[j+6*i]!=idat[j+6*i+6]) c1 += 1; }
              for (j=0;j<28;j++) 
              { if (ddat[j+28*i]!=ddat[j+28*i+28]) c1 += 1; }
              c1 = 0; 
/* 如果數據不同,則存儲,刪除相同歷元和相同衛星號的數據 */
              if (c1==0) 
              {  for (k=i+1;k<K-1;k++)
                {  for (j=0;j<6;j++) idat[j+6*k]=idat[j+6*k+6];
                    for (j=0;j<28;j++) ddat[j+28*k]=ddat[j+28*k+28]; }
                 K -= 1; *idimension = K;
                 goto tloop; }
              else {;}   }}}
     if (c!=0) goto tloop;}
void DdE_e(s)
/* 改變數據指數中格式 D, d, E 為 e */
char s[Iline];
{    int i,c;
     for (i=0;i<Iline;i++) 
    {   c = s[i]; if(c=='D' || c=='d' || c=='E') s[i] = 'e';
        if (c=='\n') break;  }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品电影在线播放| 国产偷v国产偷v亚洲高清 | 中文字幕高清一区| www.一区二区| 亚洲一区二区三区不卡国产欧美| 欧美美女黄视频| 国产一区二三区| 国产精品网友自拍| 在线免费不卡视频| 蜜桃av一区二区在线观看| 国产日韩欧美精品综合| 99国内精品久久| 亚瑟在线精品视频| 久久看人人爽人人| 91黄视频在线观看| 免费成人在线网站| 国产欧美日韩中文久久| 色偷偷久久人人79超碰人人澡 | 亚洲国产精品人人做人人爽| 日韩欧美国产一区在线观看| av综合在线播放| 日韩高清一区在线| 中文无字幕一区二区三区| 欧美视频精品在线| 国产一区视频导航| 亚洲自拍都市欧美小说| 欧美精品一区视频| 色悠久久久久综合欧美99| 青青草成人在线观看| 国产精品欧美久久久久一区二区| 欧美日韩在线一区二区| 国产成人综合在线| 亚洲成人免费影院| 日本一区二区三区久久久久久久久不| 欧美性三三影院| 国产精品中文有码| 夜夜嗨av一区二区三区| 久久精品无码一区二区三区| 在线视频一区二区免费| 国产精品一区免费在线观看| 一区二区三区免费在线观看| 久久精品亚洲麻豆av一区二区| 欧洲另类一二三四区| 国产成人综合在线观看| 日韩一区精品视频| 91麻豆精品国产91久久久久| 精品在线免费观看| 亚洲欧美偷拍卡通变态| 欧美videossexotv100| 91色在线porny| 久久国产三级精品| 一区二区三区国产精华| 久久久久9999亚洲精品| 7777精品伊人久久久大香线蕉经典版下载| 国产凹凸在线观看一区二区| 日产国产欧美视频一区精品| 亚洲天堂久久久久久久| 久久影音资源网| 欧美精品1区2区3区| av成人动漫在线观看| 国产制服丝袜一区| 午夜精品一区在线观看| 亚洲视频每日更新| 久久久久久久久久久黄色| 欧美精选一区二区| 日本韩国欧美国产| 不卡的av中国片| 激情小说亚洲一区| 日韩高清一级片| 亚洲一区二区三区视频在线播放 | 精品999在线播放| 欧美精品xxxxbbbb| 欧美在线一区二区| 99re这里都是精品| 高潮精品一区videoshd| eeuss鲁片一区二区三区在线观看 eeuss鲁片一区二区三区在线看 | 亚洲色图制服丝袜| 久久精品欧美一区二区三区不卡| 日韩一二三四区| 欧美三区在线视频| 在线精品视频免费播放| 91麻豆国产福利在线观看| 国产.欧美.日韩| 国产精品1区2区| 国产在线播放一区| 精品一区二区三区在线观看| 日韩电影免费在线观看网站| 亚洲一区二区三区四区在线观看 | av亚洲精华国产精华精华| 国产在线精品免费| 美女诱惑一区二区| 日本美女一区二区三区视频| 婷婷丁香激情综合| 亚洲成人精品一区二区| 亚洲国产视频网站| 亚洲综合精品自拍| 亚洲一区二区三区四区五区黄| 亚洲精品高清视频在线观看| 亚洲女同一区二区| 亚洲美女视频在线| 亚洲男人天堂一区| 亚洲黄色免费网站| 一区二区高清视频在线观看| 一区二区三区毛片| 亚洲午夜久久久| 亚洲国产精品久久久久婷婷884| 亚洲一二三专区| 亚洲成年人影院| 日韩国产高清在线| 蓝色福利精品导航| 极品少妇xxxx偷拍精品少妇| 国产在线精品一区在线观看麻豆| 国产一区二区三区精品视频| 国产福利不卡视频| 成人少妇影院yyyy| 色综合久久综合网欧美综合网 | 91精品国产福利| 欧美成人一区二区| 久久久久久久电影| 国产精品色婷婷久久58| 久久久综合视频| 日韩免费视频一区二区| 欧美一二区视频| 欧美成人一区二区三区在线观看| 精品99999| 国产精品美女久久久久久久久久久 | 亚洲第一福利一区| 美女免费视频一区| 国产丶欧美丶日本不卡视频| av不卡一区二区三区| 色婷婷亚洲精品| 91麻豆精品国产91久久久更新时间| 日韩视频免费观看高清完整版在线观看| 精品欧美一区二区三区精品久久| 久久久美女毛片| 亚洲四区在线观看| 亚洲第一激情av| 精品一区二区在线视频| 国产.欧美.日韩| 在线亚洲+欧美+日本专区| 91精品国产欧美日韩| 久久综合国产精品| 亚洲欧洲精品成人久久奇米网| 亚洲香肠在线观看| 精品系列免费在线观看| av电影在线观看不卡| 欧美日韩久久久久久| 久久一二三国产| 亚洲精品国产品国语在线app| 天堂va蜜桃一区二区三区 | 欧美一区二区三区喷汁尤物| 国产午夜精品久久久久久免费视 | 日本道免费精品一区二区三区| 日本韩国欧美一区| 日韩欧美中文字幕一区| 亚洲国产成人在线| 亚洲18色成人| 国产精品亚洲综合一区在线观看| 日本高清无吗v一区| 欧美成人精品1314www| 亚洲三级免费观看| 日韩成人一区二区三区在线观看| 国产91富婆露脸刺激对白| 欧美日韩一区二区三区高清| 久久伊99综合婷婷久久伊| 亚洲免费观看高清完整版在线 | eeuss影院一区二区三区| 欧美日本在线视频| 国产欧美一区二区三区在线老狼| 亚洲福利国产精品| 丁香六月综合激情| 51精品国自产在线| 中文字幕欧美一区| 久久福利视频一区二区| 色综合久久久久综合99| 精品国产凹凸成av人网站| 亚洲综合一区二区| 国产乱一区二区| 5566中文字幕一区二区电影| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆 | 国产69精品久久久久毛片 | 久久婷婷国产综合国色天香| 亚洲国产成人精品视频| zzijzzij亚洲日本少妇熟睡| 欧美tk丨vk视频| 亚洲午夜激情网站| www.欧美.com| 精品成人一区二区三区四区| 一区二区在线看| 成人av网在线| 精品国产一区二区亚洲人成毛片| 亚洲大片免费看| 色综合天天综合网国产成人综合天| 精品99一区二区| 日本vs亚洲vs韩国一区三区二区| 色婷婷狠狠综合| 亚洲欧洲无码一区二区三区| 国产精品一线二线三线精华| 91精品国产乱码| 午夜国产精品影院在线观看|