001 /*
002 * $Id: SGP4SatData.java,v 1.4 2012/02/19 17:35:39 davep Exp $
003 *
004 * This file is part of McIDAS-V
005 *
006 * Copyright 2007-2012
007 * Space Science and Engineering Center (SSEC)
008 * University of Wisconsin - Madison
009 * 1225 W. Dayton Street, Madison, WI 53706, USA
010 * https://www.ssec.wisc.edu/mcidas
011 *
012 * All Rights Reserved
013 *
014 * McIDAS-V is built on Unidata's IDV and SSEC's VisAD libraries, and
015 * some McIDAS-V source code is based on IDV and VisAD source code.
016 *
017 * McIDAS-V is free software; you can redistribute it and/or modify
018 * it under the terms of the GNU Lesser Public License as published by
019 * the Free Software Foundation; either version 3 of the License, or
020 * (at your option) any later version.
021 *
022 * McIDAS-V is distributed in the hope that it will be useful,
023 * but WITHOUT ANY WARRANTY; without even the implied warranty of
024 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
025 * GNU Lesser Public License for more details.
026 *
027 * You should have received a copy of the GNU Lesser Public License
028 * along with this program. If not, see http://www.gnu.org/licenses.
029 */
030 // based off of the "typedef struct elsetrec" in the CSSI's sgp4unit.h file
031 // conatins all the data needed for a SGP4 propogated satellite
032 // holds all initialization info, etc.
033
034 package edu.wisc.ssec.mcidasv.data.adde.sgp4;
035
036 import java.io.Serializable;
037
038 /**
039 * 19 June 2009
040 * converted to Java by:
041 * @author Shawn E. Gano, shawn@gano.name
042 */
043 public class SGP4SatData implements Serializable
044 {
045 public int satnum; // changed to int SEG
046 public int epochyr, epochtynumrev;
047 public int error; // 0 = ok, 1= eccentricity (sgp4), 6 = satellite decay, 7 = tle data
048 public char operationmode;
049 public char init, method;
050
051 public SGP4unit.Gravconsttype gravconsttype; // gravity constants to use - SEG
052
053 /* Near Earth */
054 public int isimp;
055 public double aycof , con41 , cc1 , cc4 , cc5 , d2 , d3 , d4 ,
056 delmo , eta , argpdot, omgcof , sinmao , t , t2cof, t3cof ,
057 t4cof , t5cof , x1mth2 , x7thm1 , mdot , nodedot, xlcof , xmcof ,
058 nodecf;
059
060 /* Deep Space */
061
062 public int irez;
063 public double d2201 , d2211 , d3210 , d3222 , d4410 , d4422 , d5220 , d5232 ,
064 d5421 , d5433 , dedt , del1 , del2 , del3 , didt , dmdt ,
065 dnodt , domdt , e3 , ee2 , peo , pgho , pho , pinco ,
066 plo , se2 , se3 , sgh2 , sgh3 , sgh4 , sh2 , sh3 ,
067 si2 , si3 , sl2 , sl3 , sl4 , gsto , xfact , xgh2 ,
068 xgh3 , xgh4 , xh2 , xh3 , xi2 , xi3 , xl2 , xl3 ,
069 xl4 , xlamo , zmol , zmos , atime , xli , xni;
070
071 public double a , altp , alta , epochdays, jdsatepoch , nddot , ndot ,
072 bstar , rcse , inclo , nodeo , ecco , argpo , mo ,
073 no;
074
075 // Extra Data added by SEG - from TLE and a name variable (and save the lines for future use)
076 public String name="", line1="", line2="";
077 public boolean tleDataOk;
078 public String classification, intldesg;
079 public int nexp, ibexp, numb; // numb is the second number on line 1
080 public long elnum,revnum;
081
082 }