⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ppf_orbit.h

📁 read envisat and analyis sar data from NASA
💻 H
📖 第 1 页 / 共 2 页
字号:
#ifndef _PPF_LIB_H#include <ppf_lib.h>#endif#ifndef _PPF_ORBIT_H#define _PPF_ORBIT_H#ifdef __cplusplusextern "C"{#endif/* This version number is the SCCS version number valid only for internal configuration and control *//* The oficial version number can be found in the History box below. */static char PPF_ORBIT_H [] = "@(#)ppf_orbit.h	1.10 05/17/05";/***************************************************************************** *  * Copyright	: DEIMOS Space S.L. * Project	: REMASE *  * Module	: ppf_orbit.h * Purpose	: It is the header file of the PPF_ORBIT CFI to be used  *                by the final user * * History	+------------------------------------------------------------+ *		| Version | Date     | Name         | Change                 | *		|---------|----------|--------------|------------------------| *		|    4.1  | 17/01/97 |   GMV, S.A   | First release          | *		|    4.2  | 30/04/97 |   GMV, S.A   | Second release         | *		|    4.3  | 18/05/98 |   GMV, S.A   | Third release          | *		|    4.4  | 13/10/98 |   GMV, S.A   | Fourth release         | *		|    4.5  | 25/05/99 |   GMV, S.A   | Fifth release          | *		|    4.6  | 14/04/00 |   GMV, S.A   | Sixth release          | *		|    4.7  | 22/06/01 |   GMV, S.A   | Seventh release        | *		|    4.8  | 31/07/01 |   GMV, S.A   | Eigth release          | *		|    4.9  | 22/10/01 | DEIMOS Space | Ninth release          | *		|    5.0  | 18/01/02 | DEIMOS Space | Tenth release          | *		|    5.1  | 25/11/02 | DEIMOS Space | Eleventh release       | *		|    5.2  | 26/05/03 | DEIMOS Space | Twelfth release        | *              |    5.3  | 13/12/04 | DEIMOS Space | Thirteenth release     | *              |   5.3.1 | 15/02/05 | DEIMOS Space | Forteenth release      | *              |    5.4  | 17/05/05 | DEIMOS Space | Fifteenth release      | *		+------------------------------------------------------------+ *  ****************************************************************************//* Main CFI Functions - prototype declaration *//* ========================================== */ long po_genstate(double mjdr[2], long *irep, long *icyc, double *rlong,                  double *ascmlst, long *iorb0, long *iorb,                  double mjdp[2], double pos[3], double vel[3],                 long ierr[4]); long po_ppforb(long *mode, double mjdr[2], double xm[6], double mjdp[2],                double x[6], double pos[3], double vel[3], double acc[3],                double res[54], long ierr[4]);long po_genops(long *mode, long *choice,                char *esoc_file, char *doris_file,               double *mjd0, double *mjd1,               double mjdp[2], double pos[3], double vel[3],               long *selected, double res[32], long ierr[10]);long po_interpol(long *mode, long *choice, 	         long *ndc , char **doris_precise_file,	         long *ndl , char **doris_prelim_file,	         long *ner , char **esoc_rest_file,	         double *mjdr0   , double *mjdr1 , double mjdp[2], double x[6], 	         double  pos[3]  , double vel[3] , double acc[3] , 	         long   *selected, double res[54], long ierr[10]);/* Error Handling Functions - prototype declaration *//* ================================================ */#define PO_MAX_COD PL_MAX_COD#define PO_MAX_STR PL_MAX_STRlong po_silent(void);long po_verbose(void);long po_print_msg(long *n, char msg[PO_MAX_COD][PO_MAX_STR]);long po_vector_msg(long *func_id, long *ierr, long *n, char msg[PO_MAX_COD][PO_MAX_STR]);long po_vector_code(long *func_id, long *ierr, long *n, long vec[PO_MAX_COD]);/* Modes and switches *//* ================== *//* Returned status code *//* -------------------- */typedef enum{PO_ERR  = PL_ERR,    /* Error status */PO_OK   = PL_OK,      /* Nominal status */PO_WARN = PL_WARN     /* Warning status */}PO_PErr_type_enum;             /* CAREFUL: variables holding these values MUST be declared as long !!! *//* po_ppforb initialization modes *//* ------------------------------ */typedef enum{                                   PO_INIT_ARC = -2,          /* Initialization within a short orbit arc */        PO_INIT_GENSTATE,          /* Initialization close to the ANX (low accuracy propagation model) */        PO_INIT                    /* Initialization close to the ANX (high accuracy propagation model = NOMINAL) */ }PO_PPFORB_init_enum;                 /* CAREFUL: variables holding these values MUST be declared as long !!! *//* po_ppforb propagation modes *//* --------------------------- */ typedef enum{                      PO_PROPAG_ANX = 1,         /* Propagation using time relative to the ascending node */        PO_PROPAG                  /* Propagation using absolute time */ }PO_PPFORB_prop_enum;                 /* CAREFUL: variables holding these values MUST be declared as long !!! *//* po_ppforb result vector modes *//* ----------------------------- */typedef enum{                      PO_PPFORB_RES_BAS = 1000,                /* Basic result, no derivatives */        PO_PPFORB_RES_BAS_D = 2000,              /* Basic result, 1st derivatives */        PO_PPFORB_RES_BAS_2D = 4000,             /* Basic result, 2nd derivatives */        PO_PPFORB_RES_AUX = 10000,               /* Auxiliary result, no derivatives */        PO_PPFORB_RES_AUX_D = 20000,             /* Auxiliary result, 1st derivatives */        PO_PPFORB_RES_AUX_2D = 40000             /* Auxiliary result, 2nd derivatives */ }PO_PPFORB_result_enum;	/* CAREFUL: look up thoroughly the SUM to understand how to use the results vector mode *//* po_ppforb results vector *//* ------------------------ */typedef enum{	PO_PPFORB_RES_ORBIT_RAD = 0,	PO_PPFORB_RES_RADIAL_ORB_VEL,	PO_PPFORB_RES_TRANS_ORB_VEL,	PO_PPFORB_RES_ORB_VEL_MAG,	PO_PPFORB_RES_RA_SAT,	PO_PPFORB_RES_DEC_SAT,	PO_PPFORB_RES_EARTH_ROTATION_ANGLE,	PO_PPFORB_RES_GEOC_LONG,				PO_PPFORB_RES_GEOD_LAT,				PO_PPFORB_RES_GEOC_LAT,				PO_PPFORB_RES_SAT_ASPECT_ANGLE,				PO_PPFORB_RES_GEOC_ASPECT_ANGLE,				PO_PPFORB_RES_SSP_ASPECT_ANGLE,				PO_PPFORB_RES_GEOC_DISTANCE_OF_SSP,				PO_PPFORB_RES_RAD_CUR_PARALLEL_MERIDIAN,				PO_PPFORB_RES_RAD_CUR_ORTHO_MERIDIAN,				PO_PPFORB_RES_RAD_CUR_ALONG_GROUNDTRACK,				PO_PPFORB_RES_MSLT,				PO_PPFORB_RES_TLST,				PO_PPFORB_RES_TRUE_SUN_RA,				PO_PPFORB_RES_TRUE_SUN_DEC,				PO_PPFORB_RES_TRUE_SUN_SEMI_DIAM,				PO_PPFORB_RES_MOON_RA,				PO_PPFORB_RES_MOON_DEC,				PO_PPFORB_RES_MOON_SEMI_DIAM,				PO_PPFORB_RES_MOON_AREA_LIT,				PO_PPFORB_RES_SAT_ECLIPSE_FLAG,				PO_PPFORB_RES_GEOD_ALT,				PO_PPFORB_RES_GEOD_LAT_D,				PO_PPFORB_RES_GEOC_LAT_D,				PO_PPFORB_RES_GEOC_LONG_D,				PO_PPFORB_RES_RA_SAT_D,				PO_PPFORB_RES_GEOC_DISTANCE_OF_SSP_D,				PO_PPFORB_RES_RAD_CUR_PARALLEL_MERIDIAN_D,				PO_PPFORB_RES_RAD_CUR_ORTHO_MERIDIAN_D,				PO_PPFORB_RES_GEOD_ALT_D,				PO_PPFORB_RES_NORTH_VEL,				PO_PPFORB_RES_EAST_VEL,				PO_PPFORB_RES_MAG_VEL,				PO_PPFORB_RES_AZ_VEL,				PO_PPFORB_RES_GEOD_LAT_2D,				PO_PPFORB_RES_GEOC_LAT_2D,				PO_PPFORB_RES_GEOC_LONG_2D,				PO_PPFORB_RES_RA_SAT_2D,				PO_PPFORB_RES_GEOC_DISTANCE_OF_SSP_2D,				PO_PPFORB_RES_RAD_CUR_PARALLEL_MERIDIAN_2D,				PO_PPFORB_RES_RAD_CUR_ORTHO_MERIDIAN_2D,				PO_PPFORB_RES_GEOD_ALT_2D,				PO_PPFORB_RES_NORTH_ACC,				PO_PPFORB_RES_EAST_ACC,				PO_PPFORB_RES_GROUNDTRACK_TANG_ACC,				PO_PPFORB_RES_AZ_ACC,				PO_PPFORB_RES_NODAL_PERIOD,				PO_PPFORB_RES_UTC_NEXT_ANX	} PO_PPFORB_res_name_enum;/* --------------------------- *//* po_genops DORIS records selection *//* --------------------------------- */typedef enum{	PO_ALL_REC = 0,            /* Select all the records of the DORIS navigation file (nominal operation) */	PO_USER_REC                /* Select the user's specified records of the DORIS navigation file */}PO_GENOPS_rec_enum;                 /* CAREFUL: variables holding these values MUST be declared as long !!! *//* po_genops types of choice of file *//* --------------------------------- */typedef enum{				PO_AUTO_FILE = 0,          /* Automatic selection (nominal operation) */	PO_ONLY_DORIS_FILE,        /* ONLY Doris Precise     Orbit */	PO_ONLY_ESOC_FILE          /* ONLY ESOC  Restituted  Orbit */}PO_GENOPS_file_enum;                 /* CAREFUL: variables holding these values MUST be declared as long !!! *//* po_interpol operation modes *//* --------------------------- */typedef enum{			PO_INIT_FILE    = 0,       /* Initialization mode */	PO_INTERPOLATE  = 2        /* Interpolation  mode */}PO_INTERPOL_mode_enum;               /* CAREFUL: variables holding these values MUST be declared as long !!! *//* po_interpol types of choice of data *//* ----------------------------------- */typedef enum{				PO_AUTO_SELECT = 0,		/* Automatic selection (nominal operation) */	PO_ONLY_DORIS_PRECISE,		/* ONLY Doris Precise     Orbit */	PO_ONLY_DORIS_PRELIMINARY,	/* ONLY Doris Preliminary Orbit */	PO_ONLY_ESOC_RESTITUTED,       	/* ONLY ESOC  Restituted  Orbit */	PO_ONLY_DORIS_NAVIGATOR		/* ONLY Doris   Orbit */}PO_INTERPOL_choice_enum;                  /* CAREFUL: variables holding these values MUST be declared as long !!! *//* po_interpol types of selected data *//* ---------------------------------- */typedef enum{	PO_NONE              = -1,	/* No file has been selected        */	PO_DORIS_PRECISE     =  1,	/* Doris Precise     Orbit selected */	PO_DORIS_PRELIMINARY =  2,	/* Doris Preliminary Orbit selected */	PO_ESOC_RESTITUTED   =  3,      /* ESOC  Restituted  Orbit selected */	PO_DORIS_NAVIGATOR   =  4	/* Doris Navigator   Orbit selected */}PO_INTERPOL_select_enum;                  /* CAREFUL: variables holding these values MUST be declared as long !!! *//* po_interpol results *//* ------------------- */typedef enum{                     PO_INTERPOL_RES_BAS = 1000,                /* Basic result, no derivatives */        PO_INTERPOL_RES_BAS_D = 2000,              /* Basic result, 1st derivatives */        PO_INTERPOL_RES_BAS_2D  = 4000,             /* Basic result, 2nd derivatives */        PO_INTERPOL_RES_AUX = 10000,               /* Auxiliary result, no derivatives */        PO_INTERPOL_RES_AUX_D = 20000,             /* Auxiliary result, 1st derivatives */        PO_INTERPOL_RES_AUX_2D = 40000             /* Auxiliary result, 2nd derivatives */ }PO_INTERPOL_result_enum; /* CAREFUL: look up thoroughly the SUM to understand how to use the results vector mode *//* po_interpool results vector *//* --------------------------- */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -