OB.DAAC Logo
NASA Logo
Ocean Color Science Software

ocssw V2022
geolocate_hawkeye.cpp File Reference
#include <fstream>
#include <iostream>
#include <sstream>
#include <gsl/gsl_blas.h>
#include <gsl/gsl_linalg.h>
#include <gsl/gsl_matrix_double.h>
#include "geolocate_hawkeye.h"
#include "hawkeyeUtil.h"
#include "netcdf.h"
Include dependency graph for geolocate_hawkeye.cpp:

Go to the source code of this file.

Macros

#define VERSION   "0.772"
 

Functions

int main (int argc, char *argv[])
 
int j2000_to_ecr (int32_t iyr, int32_t idy, double sec, double ecmat[3][3])
 
int j2000_to_mod (int32_t iyr, int32_t idy, double sec, double j2mod[3][3])
 
int get_nut (int32_t iyr, int32_t idy, double xnut[3][3])
 
int ephparms (double t, double &xls, double &gs, double &xlm, double &omega)
 
int nutate (double t, double xls, double gs, double xlm, double omega, double &dpsi, double &eps, double &epsm)
 
int get_ut1 (int32_t iyr, int32_t idy, double &ut1utc)
 
int gha2000 (int32_t iyr, double day, double &gha)
 
int euler (float a[3], double xm[3][3])
 
int mtoq (double rm[3][3], double q[4])
 
int qprod (double q1[4], float q2[4], double q3[4])
 
int qprod (float q1[4], float q2[4], float q3[4])
 
int orb_interp (size_t n_orb_rec, size_t sdim, double *torb, orb_array *p, orb_array *v, double *time, orb_array *posi, orb_array *veli)
 
int q_interp (size_t n_att_rec, size_t sdim, double *tq, quat_array *q, double *time, quat_array *qi)
 
int l_sun (size_t sdim, int32_t iyr, int32_t iday, double *sec, orb_array *sunr)
 
int sun2000 (size_t sdim, int32_t iyr, int32_t idy, double *sec, orb_array *sun)
 
int qtom (float q[4], double rm[3][3])
 
int scan_ell (float p[3], double sm[3][3], double coef[10])
 
int uni_geonav (float pos[3], float vel[3], double smat[3][3], double coef[10], float sunr[3], orb_array *pview, size_t npix, float *xlat, float *xlon, short *solz, short *sola, short *senz, short *sena, short *range)
 
int mat2rpy (float pos[3], float vel[3], double smat[3][3], float rpy[3], double om[3][3])
 

Macro Definition Documentation

◆ VERSION

#define VERSION   "0.772"

Definition at line 13 of file geolocate_hawkeye.cpp.

Function Documentation

◆ ephparms()

int ephparms ( double  t,
double &  xls,
double &  gs,
double &  xlm,
double &  omega 
)

Definition at line 575 of file geolocate_hawkeye.cpp.

◆ euler()

int euler ( float  a[3],
double  xm[3][3] 
)

Definition at line 717 of file geolocate_hawkeye.cpp.

◆ get_nut()

int get_nut ( int32_t  iyr,
int32_t  idy,
double  xnut[3][3] 
)

Definition at line 547 of file geolocate_hawkeye.cpp.

◆ get_ut1()

int get_ut1 ( int32_t  iyr,
int32_t  idy,
double &  ut1utc 
)

Definition at line 635 of file geolocate_hawkeye.cpp.

◆ gha2000()

int gha2000 ( int32_t  iyr,
double  day,
double &  gha 
)

Definition at line 685 of file geolocate_hawkeye.cpp.

◆ j2000_to_ecr()

int j2000_to_ecr ( int32_t  iyr,
int32_t  idy,
double  sec,
double  ecmat[3][3] 
)

Definition at line 455 of file geolocate_hawkeye.cpp.

◆ j2000_to_mod()

int j2000_to_mod ( int32_t  iyr,
int32_t  idy,
double  sec,
double  j2mod[3][3] 
)

Definition at line 512 of file geolocate_hawkeye.cpp.

◆ l_sun()

int l_sun ( size_t  sdim,
int32_t  iyr,
int32_t  iday,
double *  sec,
orb_array sunr 
)

Definition at line 966 of file geolocate_hawkeye.cpp.

◆ main()

int main ( int  argc,
char *  argv[] 
)

An implementation of a Lon/Lat to UTM zone code written by Chuck Gantz chuck.nosp@m..gan.nosp@m.tz@gl.nosp@m.obal.nosp@m.star..nosp@m.com ...in 1998...found on http://www.gpsy.com/gpsinfo/geotoutm/, a site published by Karen Nakamura, last updated 22 June 2000.

Minor modifications to the code were made to eliminate deprecation warnings

Definition at line 39 of file geolocate_hawkeye.cpp.

◆ mat2rpy()

int mat2rpy ( float  pos[3],
float  vel[3],
double  smat[3][3],
float  rpy[3],
double  om[3][3] 
)

Definition at line 1284 of file geolocate_hawkeye.cpp.

◆ mtoq()

int mtoq ( double  rm[3][3],
double  q[4] 
)

Definition at line 786 of file geolocate_hawkeye.cpp.

◆ nutate()

int nutate ( double  t,
double  xls,
double  gs,
double  xlm,
double  omega,
double &  dpsi,
double &  eps,
double &  epsm 
)

Definition at line 604 of file geolocate_hawkeye.cpp.

◆ orb_interp()

int orb_interp ( size_t  n_orb_rec,
size_t  sdim,
double *  torb,
orb_array p,
orb_array v,
double *  time,
orb_array posi,
orb_array veli 
)

Definition at line 845 of file geolocate_hawkeye.cpp.

◆ q_interp()

int q_interp ( size_t  n_att_rec,
size_t  sdim,
double *  tq,
quat_array q,
double *  time,
quat_array qi 
)

Definition at line 924 of file geolocate_hawkeye.cpp.

◆ qprod() [1/2]

int qprod ( double  q1[4],
float  q2[4],
double  q3[4] 
)

Definition at line 823 of file geolocate_hawkeye.cpp.

◆ qprod() [2/2]

int qprod ( float  q1[4],
float  q2[4],
float  q3[4] 
)

Definition at line 834 of file geolocate_hawkeye.cpp.

◆ qtom()

int qtom ( float  q[4],
double  rm[3][3] 
)

Definition at line 1062 of file geolocate_hawkeye.cpp.

◆ scan_ell()

int scan_ell ( float  p[3],
double  sm[3][3],
double  coef[10] 
)

Definition at line 1078 of file geolocate_hawkeye.cpp.

◆ sun2000()

int sun2000 ( size_t  sdim,
int32_t  iyr,
int32_t  idy,
double *  sec,
orb_array sun 
)

Definition at line 991 of file geolocate_hawkeye.cpp.

◆ uni_geonav()

int uni_geonav ( float  pos[3],
float  vel[3],
double  smat[3][3],
double  coef[10],
float  sunr[3],
orb_array pview,
size_t  npix,
float *  xlat,
float *  xlon,
short *  solz,
short *  sola,
short *  senz,
short *  sena,
short *  range 
)

Definition at line 1115 of file geolocate_hawkeye.cpp.