Paparazzi UAS  v5.2.2_stable-0-gd6b9f29
Paparazzi is a free software Unmanned Aircraft System.
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
pprz_geodetic_wmm2010.h
Go to the documentation of this file.
1 /*
2  *
3  * Copyright (C) 2012 Sergey Krukowski <softsr@yahoo.de>.
4  *
5  * This module based on the WMM2010 modell (http://www.ngdc.noaa.gov/geomag/models.shtml).
6  *
7  */
8 
9 #ifndef WMM2010_H
10 #define WMM2010_H
11 
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15 
16 #define WMM2010_FRAC 2
17 #define N_MAX_OF_GH 12
18 
19 // Geo mag current observation epoch begin
20 #define GEO_EPOCH 2010.
21 #define YR_MIN 2010.
22 #define YR_MAX 2015.
23 #define NMAX_1 12
24 #define NMAX_2 12
25 
26 #define IEXT 0
27 #define EXT_COEFF1 (double)0
28 #define EXT_COEFF2 (double)0
29 #define EXT_COEFF3 (double)0
30 
32 #define GPS_EPOCH_BEGIN (double)1980.016393442623
33 #define GPS_EPOCH_YEAR 1980
34 #define GPS_EPOCH_MONTH 1
35 #define GPS_EPOCH_DAY 6
36 
37 #define WEEKS_IN_YEAR 52.143
38 #define SECS_IN_YEAR 31536000
39 
40 #define MAXDEG 13
41 #define MAXCOEFF (MAXDEG*(MAXDEG+2)+1)
42 
43 extern const double gh1[];
44 extern const double gh2[];
45 
46 int16_t extrapsh(double date, double dte1, int16_t nmax1, int16_t nmax2, double *gh);
47 int16_t mag_calc(int16_t igdgc, double flat, double flon, double elev, int16_t nmax,
48  double *gh, double *geo_mag_x, double *geo_mag_y, double *geo_mag_z,
49  int16_t iext, double ext1, double ext2, double ext3);
50 
51 #ifdef __cplusplus
52 } /* extern "C" */
53 #endif
54 
55 #endif /* WMM2010_H */
int16_t mag_calc(int16_t igdgc, double flat, double flon, double elev, int16_t nmax, double *gh, double *geo_mag_x, double *geo_mag_y, double *geo_mag_z, int16_t iext, double ext1, double ext2, double ext3)
const double gh1[]
signed short int16_t
Definition: types.h:17
int16_t extrapsh(double date, double dte1, int16_t nmax1, int16_t nmax2, double *gh)
const double gh2[]