MRTKLIB 0.7.14
Modernized GNSS Positioning Library
Loading...
Searching...
No Matches
mrtk_ppp.h File Reference

MRTKLIB Precise Point Positioning (PPP) Module. More...

Include dependency graph for mrtk_ppp.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  mdcl6d_t
 QZSS L6D message control struct. More...

Functions

void init_miono (gtime_t gt)
 Initialize MADOCA-PPP L6D ionospheric correction control.
int decode_qzss_l6dmsg (mdcl6d_t *mdcl6d)
 Decode QZSS L6D message.
int input_qzssl6d (mdcl6d_t *mdcl6d, uint8_t data)
 Input QZSS L6D message byte-by-byte.
int input_qzssl6df (mdcl6d_t *mdcl6d, FILE *fp)
 Input QZSS L6D message from file.
void pppos (mrtk_ctx_t *ctx, rtk_t *rtk, const obsd_t *obs, int n, const nav_t *nav)
 Precise point positioning.
int pppnx (const prcopt_t *opt)
 Number of estimated states for PPP.
int pppoutstat (rtk_t *rtk, char *buff)
 Write PPP solution status to buffer.

Detailed Description

MRTKLIB Precise Point Positioning (PPP) Module.

This header provides the PPP positioning functions including the main PPP filter (pppos), number-of-states query (pppnx), and solution status output (pppoutstat).

Note
Functions declared here are implemented in mrtk_ppp.c.

Definition in file mrtk_ppp.h.

Function Documentation

◆ decode_qzss_l6dmsg()

int decode_qzss_l6dmsg ( mdcl6d_t * mdcl6d)
extern

Decode QZSS L6D message.

Parameters
[in,out]mdcl6dL6D message control struct
Returns
status (-1: error, 0: no message, 10: iono correction decoded)

Definition at line 322 of file mrtk_madoca_iono.c.

References _miono, l6_header_t::alert, l6_header_t::anme, l6_header_t::csid, decode_miono_correction(), decode_miono_coverage(), l6_header_t::fac, getbitu(), l6_prn_info_t::iono_slot, L6_DATA_BITS, L6_HEADER_BITS, l6_parse_header(), L6_PREAMBLE, l6_prn_info(), mdcl6d, MIONO_MT_COR, MIONO_MT_COV, l6_header_t::msgid, l6_header_t::preamble, l6_header_t::prn, l6_header_t::sf_ind, time_str(), trace(), and l6_header_t::vid.

Referenced by input_qzssl6d().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ init_miono()

void init_miono ( gtime_t gt)
extern

Initialize MADOCA-PPP L6D ionospheric correction control.

Parameters
[in]gtGPST for week number determination

Definition at line 513 of file mrtk_madoca_iono.c.

References _miono, and MIONO_MAX_PRN.

Referenced by decoderaw(), and init_mdcl6d().

Here is the caller graph for this function:

◆ input_qzssl6d()

int input_qzssl6d ( mdcl6d_t * mdcl6d,
uint8_t data )
extern

Input QZSS L6D message byte-by-byte.

Parameters
[in,out]mdcl6dL6D message control struct
[in]dataL6D 1-byte data
Returns
status (-1: error, 0: no message, 10: iono correction decoded)

Definition at line 532 of file mrtk_madoca_iono.c.

References decode_qzss_l6dmsg(), L6_FRAME_LEN, mdcl6d, and trace().

Referenced by decoderaw(), and input_qzssl6df().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ input_qzssl6df()

int input_qzssl6df ( mdcl6d_t * mdcl6d,
FILE * fp )
extern

Input QZSS L6D message from file.

Parameters
[in,out]mdcl6dL6D message control struct
[in]fpfile pointer
Returns
status (-2: EOF, -1..10: same as input_qzssl6d)

Definition at line 562 of file mrtk_madoca_iono.c.

References input_qzssl6d(), mdcl6d, and trace().

Referenced by update_qzssl6d().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pppnx()

int pppnx ( const prcopt_t * opt)

Number of estimated states for PPP.

Parameters
[in]optProcessing options
Returns
Number of states

Definition at line 1681 of file mrtk_ppp.c.

References NX.

Referenced by rtkinit().

Here is the caller graph for this function:

◆ pppos()

void pppos ( mrtk_ctx_t * ctx,
rtk_t * rtk,
const obsd_t * obs,
int n,
const nav_t * nav )

Precise point positioning.

Parameters
[in,out]rtkRTK control/result struct
[in]obsObservation data
[in]nNumber of observation data
[in]navNavigation data

Definition at line 1783 of file mrtk_ppp.c.

References nav_s::erp, filter(), ssat_t::fix, free, gpst2utc(), mat(), matcpy(), MAX_ITER, MAXOBS, MAXSAT, prcopt_t::minfix, prcopt_t::nf, rtk_t::nfix, norm(), rtk_t::nx, prcopt_t::odisp, rtk_t::opt, rtk_t::P, rtk_t::Pa, prcopt_t::posopt, ppp_ar(), ppp_res(), prcopt_t::sateph, satposs(), SOLQ_FIX, SOLQ_FIX_WL, SOLQ_PPP, SOLQ_SINGLE, rtk_t::ssat, test_hold_amb(), testeclipse(), prcopt_t::tidecorr, tidedisp(), time2str(), trace(), udstate_ppp(), update_stat(), rtk_t::x, rtk_t::xa, and zeros().

Referenced by rtkpos().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pppoutstat()

int pppoutstat ( rtk_t * rtk,
char * buff )

Write PPP solution status to buffer.

Parameters
[in,out]rtkRTK control/result struct
[out]buffOutput buffer
Returns
Number of bytes written

Definition at line 240 of file mrtk_ppp.c.

References ssat_t::azel, CLIGHT, prcopt_t::dynamics, ecef2enu(), ecef2pos(), IB, IC, II, prcopt_t::ionoopt, IONOOPT_EST, IT, MAXSAT, prcopt_t::mode, NF, rtk_t::opt, PMODE_PPP_RTK, ppprtk_outstat(), R2D, sol_t::rr, satno2id(), rtk_t::sol, SOLQ_FIX, rtk_t::ssat, sol_t::stat, STD(), sol_t::time, time2gpst(), trace(), prcopt_t::tropopt, TROPOPT_EST, TROPOPT_ESTG, ssat_t::vs, rtk_t::x, and rtk_t::xa.

Referenced by rtkoutstat().

Here is the call graph for this function:
Here is the caller graph for this function: