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

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

?? jave-ppp.txt

?? 精密單點定位程序
?? TXT
?? 第 1 頁 / 共 5 頁
字號:

//*** compute ecbf coordinates

      xk = xpk*comgk-ypk*somgk*ceyek;
      yk = xpk*somgk+ypk*comgk*ceyek;
      zk =           ypk      *Math.sin(eyek);

      return new PosT(xk, yk, zk, bcclok, dtr);
   }

   public double eccano(double t) {

//*** compute eccentric anomaly at time T from broadcast elements

      double a,en0,tk,en,emk;

      if( (t-t0e) >  302400.0 ) t=t-604800.0;      //*** handle week rollover
      if( (t-t0e) < -302400.0 ) t=t+604800.0;

      a=sqrta*sqrta;               //*** semimajor axis
      en0=Math.sqrt(gm/(a*a*a));   //*** mean motion
      tk=t-t0e;                    //*** time since orbit reference epoch
      en=en0+deln;                 //*** corrected mean motion
      emk=em0+en*tk;               //*** mean anomaly, M
      return kepEQ(emk);           //*** solve kepler's eq for ecc anomaly, E
   }

   public double kepEQ(double em) {
      
//*** solve for eccentric anomaly given mean anomaly and orbital eccentricity
//*** use simple fixed point iteration of kepler's equation

      double ecca, ecca0;           //*** iterates of eccentric anomaly
      
//*** initialize eccentric anomaly

      ecca=em+e*Math.sin(em);
      
//*** exit only on convergence

      do {
         ecca0=ecca;
         ecca=em+e*Math.sin(ecca0);
      }  while (Math.abs( (ecca-ecca0)/ecca ) > 1.e-14);
      return ecca;
   }

   public void BCinit() {

//*** initialize to test values

      t0c   =  3.10400000000000e+03;
      af2   =  0.00000000000000e+00;
      af1   =  2.04636307898909e-12;
      af0   =  4.73577529191971e-07;

      crs   = -1.74687500000000e+01;
      deln  =  4.57340478638085e-09;
      em0   =  1.63307323511810e+00;

      cuc   = -9.68575477600099e-07;
      e     =  4.74695244338363e-03;
      cus   =  2.30222940444947e-06;
      sqrta =  5.15357911109924e+03;

      t0e   =  3.10400000000000e+03;
      cic   =  7.26431608200074e-08;
      omg0  =  1.12194333211744e+00;
      cis   = -4.28408384323121e-08;

      eye0  =  9.59844678252147e-01;
      crc   =  3.32750000000000e+02;
      w     =  1.44611981813501e+00;
      omgdot= -8.27498754358907e-09;

      eyedot= -7.96461747257267e-11;

      return;
   }

//*** expected test results:

//***  myBC.BCinit();
//***  myPos = myBC.bcxyzt( 3104.0);
//***  System.out.println(myPos.toString4());
//***  myPos = myBC.bcxyzt( 3204.0);
//***  System.out.println(myPos.toString4());
//***  myPos = myBC.bcxyzt( 4104.0);
//***  System.out.println(myPos.toString4());
//***  myPos = myBC.bcxyzt(13104.0);
//***  System.out.println(myPos.toString4());

//***  x=-17212647.7969  y=-20205593.2676  z=  1151304.1641
//***  x=-17199667.6706  y=-20234605.2305  z=   834485.2910
//***  x=-16972873.7180  y=-20363862.4894  z= -2016782.8591
//***  x= -2061865.9599  y=-15633481.5430  z=-21527450.2128

}//***endclass BCstuf
//****************************************************************************
class SP3set {

//*** collection of precise orbits object

   private static final int    MXPRN = 32;         //*** 38 are possible
   private static final int    MXTRW = 3*4*24+1;   //*** time rows (3 days)
   private static final double TINY  = 1.0e-2;     //*** tiny number
   private static final double EPS   = 1.0e-13;    //*** very tiny number
   private static final double BADT  = 0.999999;   //*** bad time flag

   private Gtime  tStuf;                   //*** time object for SP3Set
   private int    nsat=0;                  //*** sats in input file
   private int    nep=0;                   //*** number of time epochs

   private double tstr = 0;                //*** time of 1 st epoch
   private double tstp = 0;                //*** time of last epoch
   private double dlt  = 0;                //*** epoch interval
   private int    imx  = 0;                //*** max index into arrays
   private double t0mx = 0.0;              //*** time for max index

   private double c[]     = new double [9+1];              //*** interp coeff.
   private double xs [][] = new double [MXTRW+1][MXPRN+1]; //*** fortran style
   private double ys [][] = new double [MXTRW+1][MXPRN+1]; 
   private double zs [][] = new double [MXTRW+1][MXPRN+1]; 
   private double ts [][] = new double [MXTRW+1][MXPRN+1];

   private int    ierr;                    //*** error code
   private double xSP3;                    //*** x of sat
   private double ySP3;                    //*** y of sat
   private double zSP3;                    //*** d of sat
   private double tSP3;                    //*** dt of sat

//***
//*** compute methods
//***

   public boolean oterp(int iprn, double tsec){

//*** interpolate sp3 orbit
//*** iprn is prn identifier for a satellite
//*** input time, tsec, is gps seconds from ref. epoch  (see Gtime)

      int    i,intt,ioff;
      double r,t,t0,tint, powr, dt, fac;

//*** satellite prn number not loaded from the sp3 file (1st epoch 0 check)

      r=xs[1][iprn]*xs[1][iprn]+ys[1][iprn]*ys[1][iprn]+zs[1][iprn]*zs[1][iprn];
      if(r <= TINY){
         ierr=1;
         return false;
      }

//*** prevent extrapolation on either end

      if(tsec < tstr || tsec > tstp){
         ierr=2;
         return false;
      }

//*** routine for finding index into table
//*** produces normalized time [0,1,...,8] --> should be 3.5 < tnorm < 4.5

      i  = ((int)Math.round((tsec-tstr)/dlt)+1)-4;
      t0 = (i-1)*dlt+tstr;

//*** boundary conditions

      if(i < 1){
         i  = 1;
         t0 = tstr;
      }else if(i > imx){
         i  = imx;
         t0 = t0mx;
      }
      t = (tsec-t0)/dlt;
      ioff = i-1;

//*** 9-th order interpolator             -- equally-spaced points
//*** time normalized 0,1,...,8           -- should be 3.5 < t < 4.5
//*** ioff is offset into array xs[][]

//*** use stored values if t is exact integer time (avoid division by 0)

      intt = (int)Math.round(t);
      tint = (double)intt;
      if(Math.abs(t-tint) <= EPS) {
         if(intt >= 0 && intt <= 8) {
            xSP3 = xs[intt+1+ioff][iprn];
            ySP3 = ys[intt+1+ioff][iprn];
            zSP3 = zs[intt+1+ioff][iprn];
            tSP3 = ts[intt+1+ioff][iprn];
            if(tSP3 >= BADT){
               ierr=3;
               return false;
            }
         }else{
            System.err.println("index error inside oterp()");
            System.exit(1);
         }

//*** normal interpolation
//*** coefficents, c(), initialized in constructor--see Ben Remondi diss.

      }else{
         powr =1.0;
         xSP3 =0.0;
         ySP3 =0.0;
         zSP3 =0.0;
         tSP3 =0.0;
         for(int j=1; j<=9; j++){
           dt   = t - (double)(j-1);
           powr = dt*powr;
           fac  = 1.0/(c[j]*dt);
           xSP3 = xSP3 + xs[j+ioff][iprn]*fac;
           ySP3 = ySP3 + ys[j+ioff][iprn]*fac;
           zSP3 = zSP3 + zs[j+ioff][iprn]*fac;
           tSP3 = tSP3 + ts[j+ioff][iprn]*fac;
            if(ts[j+ioff][iprn] >= BADT){
               ierr=3;
               return false;
            }
         }
         xSP3 = xSP3*powr;
         ySP3 = ySP3*powr;
         zSP3 = zSP3*powr;
         tSP3 = tSP3*powr;
      }
      ierr=0;
      return true;
   }

//***
//*** constructor
//***

   public SP3set(BufferedReader in, Gtime tStufx) {
      tStuf = tStufx;
      nsat=doSP3Header(in);                              //*** header
      if(nsat > MXPRN){
         System.err.println("Fatal-- nsats=" + nsat);
         System.exit(1);
      }
      for(int i=0; i<=MXTRW; i++){                       //*** zero everything
         for(int j=0; j<=nsat; j++){
            xs[i][j] = 0.0; 
            ys[i][j] = 0.0; 
            zs[i][j] = 0.0; 
            ts[i][j] = 0.0; 
         }
      }
      doSP3Data(in);

//*** finish setting up some index/bookkeeping info

      if(Math.abs( ((tstp-tstr)/(nep-1)) - dlt) > TINY){
         System.err.println("delta t mismatch =" + dlt);
         System.exit(1);
      }
      imx=nep-9+1;
      t0mx=(imx-1)*dlt+tstr;

//*** interpolation coefficients and parameters

      c[1] = 40320.0;
      c[2] = -5040.0;
      c[3] =  1440.0;
      c[4] =  -720.0;
      c[5] =   576.0;
      c[6] =  -720.0;
      c[7] =  1440.0;
      c[8] = -5040.0;
      c[9] = 40320.0;
   }

//***
//*** load methods only accessed thru constructor
//***

   private void doSP3Data(BufferedReader in){

//*** loop over SP3 file data

      String myString;
      String subField;
      int    iprn;
      double x,y,z,t;

      try {
         while( (myString=in.readLine()) != null ){

//*** header

            subField=myString.substring(0,3);
            if(subField.equals("EOF")) {
               break;
            }else{
               nep=nep+1;
               if(nep > MXTRW){
                  System.err.println("Fatal-- # epoch exeeded=" + nep);
                  System.exit(1);
               }
               tstp = eparse(myString);       //*** last epoch (keep updating)
               if(nep == 1)  tstr = tstp;     //*** first epoch
            }

//*** sats                                         *** (P records only)
//***   convert to meters and seconds

            for(int i=1; i<=nsat; i++){
               if( (myString=in.readLine()) != null ){
                  subField=myString.substring(0,1);
                  if(!subField.equals("P")) {
                     System.err.println("Fatal-- missed P rec.");
                     System.exit(1);
                  }

                  subField = myString.substring( 1,4);
                  iprn     = Integer.parseInt(subField.trim());

                  subField = myString.substring( 4,18);
                  x        = Double.valueOf(subField.trim()).doubleValue();
                  xs[nep][iprn] = x*1000.0;

                  subField = myString.substring(18,32);
                  y        = Double.valueOf(subField.trim()).doubleValue();
                  ys[nep][iprn] = y*1000.0;

                  subField = myString.substring(32,46);
                  z        = Double.valueOf(subField.trim()).doubleValue();
                  zs[nep][iprn] = z*1000.0;

                  subField = myString.substring(46,60);
                  t        = Double.valueOf(subField.trim()).doubleValue();
                  ts[nep][iprn] = t/1.0e6;

               }else{
                  System.err.println("Fatal SP3 read\n");
                  in  = null;
                  System.exit(1);
               }
            }
         }//*** endwhile
      }//*** endtry
      catch (IOException e) {
         System.err.println("Error in SP3 r/w\n" + e.toString());
         System.exit(1);
      }
   }

   private double eparse(String myStr){

//*** parse the epoch record in an SP3 format

      int    iyr, imo, idy, ihr, imn;
      double sec;
      String subField;

      subField=myStr.substring(0,1);
      if(!subField.equals("*")) {
         System.err.println("Fatal-- missed epoch rec.");
         System.exit(1);
      }

      subField = myStr.substring( 3, 7);
      iyr       = Integer.parseInt(subField.trim());

      subField = myStr.substring( 7,10);
      imo       = Integer.parseInt(subField.trim());

      subField = myStr.substring(10,13);
      idy       = Integer.parseInt(subField.trim());

      subField = myStr.substring(13,16);
      ihr       = Integer.parseInt(subField.trim());

      subField = myStr.substring(16,19);
      imn       = Integer.parseInt(subField.trim());

      subField = myStr.substring(19,myStr.length());
      sec       = Double.valueOf(subField.trim()).doubleValue();

      return tStuf.civjts(iyr, imo, idy, ihr, imn, sec);
   }

   private int doSP3Header(BufferedReader in){

//*** loop over SP3 file header

      String myString;
      String subField;
      int    icount;
      int    nsat=0;

//*** loop until header end detected

      icount=0;
      try {
         if( (myString=in.readLine()) != null ){icount=icount+1;}

         if( (myString=in.readLine()) != null ){
            icount=icount+1;
            subField = myString.substring(23,38);
            dlt      = Double.p

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲成av人片www| 99精品久久免费看蜜臀剧情介绍| 韩国视频一区二区| 色综合激情五月| 欧美成人bangbros| 亚洲国产精品嫩草影院| 国产综合久久久久影院| 欧美日韩www| 亚洲人成在线播放网站岛国 | 久久久久久电影| 亚洲v中文字幕| av日韩在线网站| 国产欧美一区二区三区在线看蜜臀| 亚洲成人自拍一区| 一道本成人在线| 国产精品免费aⅴ片在线观看| 日韩va欧美va亚洲va久久| 91免费版在线| 国产精品嫩草久久久久| 国产高清一区日本| 欧美哺乳videos| 美日韩一级片在线观看| 欧美三级电影一区| 亚洲免费观看高清完整| 北条麻妃一区二区三区| 精品人伦一区二区色婷婷| 日韩成人av影视| 欧美日韩黄色一区二区| 亚洲精品一二三| 成人av午夜电影| 国产精品久久久久久妇女6080| 国内欧美视频一区二区| 欧美精品一区二区久久久| 久久国产三级精品| 日韩女优制服丝袜电影| 免费看欧美美女黄的网站| 日韩欧美一区电影| 韩国一区二区视频| 久久精品欧美一区二区三区不卡 | 欧美激情一区二区三区蜜桃视频| 九九**精品视频免费播放| 日韩一区二区三| 激情综合网av| 国产日韩精品视频一区| 国产99精品国产| 国产精品成人网| 在线视频国内一区二区| 日韩精品1区2区3区| 欧美成人精精品一区二区频| 国产综合一区二区| 国产精品久久久久久久久晋中| 成人小视频在线| 亚洲女人的天堂| 欧美欧美午夜aⅴ在线观看| 亚洲国产乱码最新视频| 欧美一卡二卡三卡| 国产一区二区0| 亚洲欧美成人一区二区三区| 在线亚洲人成电影网站色www| 欧美成人女星排行榜| 欧美大白屁股肥臀xxxxxx| 九色porny丨国产精品| 国产日产欧美一区| 99久久久精品免费观看国产蜜| 夜夜揉揉日日人人青青一国产精品| 欧美视频一区二区三区在线观看 | 色欧美乱欧美15图片| 亚洲国产精品久久人人爱蜜臀| 5566中文字幕一区二区电影| 精彩视频一区二区三区| 国产精品久久三| 欧美一区二区三区视频| 国产成人在线色| 亚洲国产一二三| 国产日韩一级二级三级| 欧美日韩国产综合草草| 国产福利精品一区| 性做久久久久久免费观看欧美| 久久久久成人黄色影片| 欧美日韩视频在线一区二区| 狠狠v欧美v日韩v亚洲ⅴ| 亚洲精品美国一| 久久久久久久久一| 欧美美女黄视频| 97精品国产露脸对白| 免费在线看成人av| 亚洲一区二区不卡免费| 中文在线一区二区| 精品国产三级a在线观看| 在线欧美一区二区| 成人精品亚洲人成在线| 精品一区二区免费视频| 亚洲国产中文字幕在线视频综合| 国产精品卡一卡二| 久久人人爽爽爽人久久久| 欧美久久久影院| 91视频xxxx| 成人激情小说乱人伦| 经典一区二区三区| 另类的小说在线视频另类成人小视频在线| 中文字幕中文字幕一区二区 | 91精品国产91久久久久久一区二区| 北岛玲一区二区三区四区| 国产综合色产在线精品| 日韩电影免费一区| 午夜精品免费在线| 亚洲国产综合视频在线观看| 亚洲精品免费看| 亚洲六月丁香色婷婷综合久久| 亚洲国产电影在线观看| 久久久久久电影| 国产三级欧美三级| 久久一区二区三区四区| 久久综合九色综合欧美就去吻| 欧美大片在线观看| 精品国产一区二区精华| 日韩欧美一级特黄在线播放| 日韩视频一区二区三区| 日韩免费在线观看| 欧美成人女星排行榜| 久久这里只有精品首页| 久久精品亚洲麻豆av一区二区| 久久久亚洲精品石原莉奈| 精品国产1区2区3区| 久久九九全国免费| 国产精品久久久久毛片软件| 欧美国产97人人爽人人喊| 亚洲视频在线观看一区| 亚洲天天做日日做天天谢日日欢 | 精品国产一区久久| 久久久91精品国产一区二区三区| 久久网站最新地址| 国产精品乱码久久久久久| 亚洲欧美综合网| 亚洲综合一区二区| 视频一区二区中文字幕| 蜜乳av一区二区| 成人精品gif动图一区| 91首页免费视频| 欧美三级韩国三级日本一级| 91精品国产综合久久福利软件| 欧美大片一区二区| 中文字幕免费一区| 亚洲一区二区三区视频在线播放| 日本在线播放一区二区三区| 久久国产麻豆精品| 成人av资源站| 91精品国产综合久久蜜臀| 国产亚洲精品aa| 亚洲精品国产第一综合99久久| 日韩激情一二三区| 国产sm精品调教视频网站| 日本电影欧美片| 久久午夜羞羞影院免费观看| 亚洲精品视频一区| 精品写真视频在线观看| 91亚洲精品一区二区乱码| 日韩一区二区影院| 国产精品伦理一区二区| 日韩黄色在线观看| av中文字幕不卡| 日韩亚洲欧美在线观看| 综合中文字幕亚洲| 美国十次综合导航| 日本道精品一区二区三区| 久久久午夜电影| 午夜电影一区二区三区| 成人综合在线视频| 日韩亚洲欧美高清| 一区二区三区高清在线| 国产伦精品一区二区三区免费| 欧美日韩激情一区二区| 亚洲欧洲av一区二区三区久久| 久久99热这里只有精品| 欧美午夜免费电影| 亚洲欧洲日韩一区二区三区| 老司机免费视频一区二区| 欧美三级电影网站| 亚洲美女区一区| aaa亚洲精品| 国产清纯白嫩初高生在线观看91| 视频一区二区三区在线| 91久久精品一区二区| 国产精品日日摸夜夜摸av| 国产一区二区三区在线观看精品| 在线综合视频播放| 亚洲成av人片在线| 在线观看av一区二区| 中文字幕在线不卡| 高清beeg欧美| 久久久亚洲精品一区二区三区| 麻豆freexxxx性91精品| 4438x亚洲最大成人网| 亚洲成a人片综合在线| 91视视频在线观看入口直接观看www | 午夜精品福利久久久| 91久久精品国产91性色tv| 亚洲三级在线免费| 99精品国产91久久久久久| 欧美激情在线免费观看|