File indexing completed on 2024-04-28 11:29:29
0001 #ifndef _sgp4ext_ 0002 #define _sgp4ext_ 0003 /* ---------------------------------------------------------------- 0004 * 0005 * sgp4ext.h 0006 * 0007 * this file contains extra routines needed for the main test program for sgp4. 0008 * these routines are derived from the astro libraries. 0009 * 0010 * companion code for 0011 * fundamentals of astrodynamics and applications 0012 * 2007 0013 * by david vallado 0014 * 0015 * (w) 719-573-2600, email dvallado@agi.com 0016 * 0017 * current : 0018 * 20 apr 07 david vallado 0019 * misc documentation updates 0020 * changes : 0021 * 14 aug 06 david vallado 0022 * original baseline 0023 * ---------------------------------------------------------------- */ 0024 0025 #include <cstring> 0026 #include <cmath> 0027 0028 #include "sgp4unit.h" 0029 0030 0031 // ------------------------- function declarations ------------------------- 0032 0033 double sgn 0034 ( 0035 double x 0036 ); 0037 0038 double mag 0039 ( 0040 double x[3] 0041 ); 0042 0043 void cross 0044 ( 0045 double vec1[3], double vec2[3], double outvec[3] 0046 ); 0047 0048 double dot 0049 ( 0050 double x[3], double y[3] 0051 ); 0052 0053 double angle 0054 ( 0055 double vec1[3], 0056 double vec2[3] 0057 ); 0058 0059 void newtonnu 0060 ( 0061 double ecc, double nu, 0062 double& e0, double& m 0063 ); 0064 0065 void rv2coe 0066 ( 0067 double r[3], double v[3], double mu, 0068 double& p, double& a, double& ecc, double& incl, double& omega, double& argp, 0069 double& nu, double& m, double& arglat, double& truelon, double& lonper 0070 ); 0071 0072 void jday 0073 ( 0074 int year, int mon, int day, int hr, int minute, double sec, 0075 double& jd 0076 ); 0077 0078 void days2mdhms 0079 ( 0080 int year, double days, 0081 int& mon, int& day, int& hr, int& minute, double& sec 0082 ); 0083 0084 void invjday 0085 ( 0086 double jd, 0087 int& year, int& mon, int& day, 0088 int& hr, int& minute, double& sec 0089 ); 0090 0091 #endif 0092