From 953a8a7c306dc5bd274558ac3d6970f68a555150 Mon Sep 17 00:00:00 2001 From: joanvallve <jvallve@iri.upc.edu> Date: Fri, 17 Jul 2020 12:45:16 +0200 Subject: [PATCH] WIP --- src/ephemeris.c | 3 +++ src/rtklib.h | 1 + src/sbas.c | 39 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 43 insertions(+) diff --git a/src/ephemeris.c b/src/ephemeris.c index 404d6d1..d7e722a 100644 --- a/src/ephemeris.c +++ b/src/ephemeris.c @@ -759,7 +759,10 @@ extern void satposs(gtime_t teph, const obsd_t *obs, int n, const nav_t *nav, trace(3,"satposs : teph=%s n=%d ephopt=%d\n",time_str(teph,3),n,ephopt); if (ephopt==2) + { printf("====satposs : teph=%s n=%d ephopt=%d\n",time_str(teph,3),n,ephopt); + print_sbassat(&nav->sbssat); + } for (i=0;i<n&&i<2*MAXOBS;i++) { for (j=0;j<6;j++) rs [j+i*6]=0.0; diff --git a/src/rtklib.h b/src/rtklib.h index d7bf3a1..e28fdac 100644 --- a/src/rtklib.h +++ b/src/rtklib.h @@ -1821,6 +1821,7 @@ EXPORT int sbsioncorr(gtime_t time, const nav_t *nav, const double *pos, const double *azel, double *delay, double *var); EXPORT double sbstropcorr(gtime_t time, const double *pos, const double *azel, double *var); +EXPORT void print_sbassat(const sbssat_t *sbssat); /* options functions ---------------------------------------------------------*/ EXPORT opt_t *searchopt(const char *name, const opt_t *opts); diff --git a/src/sbas.c b/src/sbas.c index 2223a3b..812d8ec 100644 --- a/src/sbas.c +++ b/src/sbas.c @@ -123,6 +123,45 @@ static double degfcorr(int ai) }; return 0<ai&&ai<=15?degf[ai]:0.0058; } +/* print sbsfcorr_t (JV) -------------------------------------------------------*/ +static void print_sbsfcorr(const sbsfcorr_t *sbsfcorr) +{ + printf("\t\tiodf: %d, udre: %d, [%f, %f, %f, %d]\n", + sbsfcorr->iodf, + sbsfcorr->udre, + sbsfcorr->prc, + sbsfcorr->rrc, + sbsfcorr->dt, + sbsfcorr->ai); +} +/* print sbslcorr_t (JV) -------------------------------------------------------*/ +static void print_sbslcorr(const sbslcorr_t *sbslcorr) +{ + printf("\t\tiode: %d, [[%f, %f, %f], [%f, %f, %f], %f, %f]\n", + sbslcorr->iode, + sbslcorr->dpos[0],sbslcorr->dpos[1],sbslcorr->dpos[2], + sbslcorr->dvel[0],sbslcorr->dvel[1],sbslcorr->dvel[2], + sbslcorr->daf0,sbslcorr->daf1); +} +/* print sbssatp_t (JV) -------------------------------------------------------*/ +static void print_sbssatp(const sbssatp_t *sbssatp) +{ + printf("\tsat: %d\n", sbssatp->sat); /* satellite number */ + printf("\tfcorr:\n"); + print_sbsfcorr(&sbssatp->fcorr);/* fast correction */ + printf("\tlcorr:\n"); + print_sbslcorr(&sbssatp->lcorr);/* long term correction */ +} +/* print sbssat_t (JV) -------------------------------------------------------*/ +extern void print_sbassat(const sbssat_t *sbssat) +{ + printf("iodp: %d\n", sbssat->iodp); /* IODP (issue of date mask) */ + printf("tlat: %d\n", sbssat->tlat); /* system latency (s) */ + printf("nsat: %d\n", sbssat->nsat); /* number of satellites */ + printf("sat:\n"); + for (int i = 0; i < sbssat->nsat; i++) + print_sbssatp(&sbssat->sat[i]); +} /* decode type 1: prn masks --------------------------------------------------*/ static int decode_sbstype1(const sbsmsg_t *msg, sbssat_t *sbssat) { -- GitLab