GRAVI Pipeline Reference Manual 1.9.0
Loading...
Searching...
No Matches
Functions
Earth Orientation Parameters

Functions

cpl_error_code gravi_eop_interpolate (cpl_size n, double *mjd, double *pmx, double *pmy, double *dut, cpl_table *eop_table, cpl_propertylist *header)
 
void eraAtboq (double rc, double dc, eraASTROM *astrom, double enuob[3])
 
void eraAtcoq (double rc, double dc, double pmr, double pmd, double px, double rv, eraASTROM *astrom, double enuob[3])
 
void dtp2s (double xi, double eta, double raz, double decz, double *ra, double *dec)
 
void rotate_vector (double in[3], double angle, double axis[3], double out[3])
 
void difference (double x[3], double y[3], double z[3])
 
void multiply (double xyz[3], double factor)
 
void normalize (double xyz[3])
 
void cross (double x[3], double y[3], double z[3])
 
cpl_error_code gravi_eop_pointing_uv (cpl_table *input_table, cpl_propertylist *header, cpl_table *eop_table, cpl_propertylist *eop_header, int save_pointing, cpl_table *array_table)
 Compute the pointing directions and projected baselines.
 
cpl_error_code gravi_compute_pointing_uv (gravi_data *p2vmred_data, gravi_data *eop_data)
 Compute the pointing directions and projected baselines in OI_VIS.
 

Detailed Description

This module implements the function link the the Earth Orientation Parameters. It contains the function called by the recipe gravity_eop to generate the static calibration file : gravity_eop_download_finals2000A() and gravity_eop_data_totable()

It also implements the computation the UV coordinates making use of this EOP calibration file : gravi_compute_pointing_uv()

Function Documentation

◆ cross()

void cross ( double  x[3],
double  y[3],
double  z[3] 
)

◆ difference()

void difference ( double  x[3],
double  y[3],
double  z[3] 
)

◆ dtp2s()

void dtp2s ( double  xi,
double  eta,
double  raz,
double  decz,
double *  ra,
double *  dec 
)

◆ eraAtboq()

void eraAtboq ( double  rc,
double  dc,
eraASTROM *  astrom,
double  enuob[3] 
)

Definition at line 180 of file gravi_eop.c.

Referenced by gravi_eop_pointing_uv().

◆ eraAtcoq()

void eraAtcoq ( double  rc,
double  dc,
double  pmr,
double  pmd,
double  px,
double  rv,
eraASTROM *  astrom,
double  enuob[3] 
)

◆ gravi_compute_pointing_uv()

cpl_error_code gravi_compute_pointing_uv ( gravi_data p2vmred_data,
gravi_data eop_data 
)

Compute the pointing directions and projected baselines in OI_VIS.

Parameters
p2vmred_datainput/output data
eop_datadata containing the EOP pameters

Compute the projected baselines [UCOORD,VCOORD] for FT and SC Save the pointing directions [E_U,E_V,E_V,E_AZ,E_ZD] for the SC only

Definition at line 466 of file gravi_eop.c.

References cpl_msg_debug(), cpl_msg_info(), CPLCHECK_MSG, gravi_data_get_header, gravi_data_get_oi_vis, gravi_data_get_table(), gravi_data_get_table_x(), gravi_eop_pointing_uv(), GRAVI_FT, gravi_msg_function_exit, gravi_msg_function_start, GRAVI_OI_ARRAY_EXT, gravi_pfits_get_pola_num(), and GRAVI_SC.

Referenced by gravity_vis().

◆ gravi_eop_interpolate()

cpl_error_code gravi_eop_interpolate ( cpl_size  n,
double *  mjd,
double *  pmx,
double *  pmy,
double *  dut,
cpl_table *  eop_table,
cpl_propertylist *  header 
)

◆ gravi_eop_pointing_uv()

cpl_error_code gravi_eop_pointing_uv ( cpl_table *  input_table,
cpl_propertylist *  header,
cpl_table *  eop_table,
cpl_propertylist *  eop_header,
int  save_pointing,
cpl_table *  array_table 
)

Compute the pointing directions and projected baselines.

Parameters
input_tableinput/output data
headerinput header
eop_tabletable containing the EOP pameters
eop_headerheader of EOP table
save_pointingsave (E_U,E_V,E_V,E_AZ,E_ZD) is specified
array_tableOI_ARRAY table (optional)

For each DIT of the input table, compute [E_U,E_V,E_W,E_AZ,E_ZD]_Obs as the transformation into Observed reference frame of the orthonormal [E_U,E_V,E_W,E_AZ,E_ZD]_ICRS defined in the ICRS. This way, the real-time projected baseline can be recomputed easily off-line. [E_U,E_V,E_W,E_AZ,E_ZD]_Obs does not form an orthonormal basis, due to the effects of precession, nutation, aberration... The quantities [E_U,E_V,E_W,E_AZ,E_ZD]_Obs are stored as new columns in the input table, is save_pointing is specified. If the array_table is specified, the projected baseline [UCOORD,VCOORD] is calculated.

Definition at line 228 of file gravi_eop.c.

References cpl_msg_info(), CPLCHECK_MSG, eraAtboq(), gravi_eop_interpolate(), gravi_msg_function_exit, gravi_msg_function_start, GRAVI_NBASE, gravi_pfits_get_geoelev(), gravi_pfits_get_geolat(), gravi_pfits_get_geolon(), gravi_pfits_get_mid_decep, gravi_pfits_get_mid_raep, gravi_pfits_get_plx(), gravi_pfits_get_pmdec(), gravi_pfits_get_pmra(), gravi_table_get_value, header, and rotate_vector().

Referenced by gravi_compute_pointing_uv(), and gravi_metrology_reduce().

◆ multiply()

void multiply ( double  xyz[3],
double  factor 
)

◆ normalize()

void normalize ( double  xyz[3])

◆ rotate_vector()

void rotate_vector ( double  in[3],
double  angle,
double  axis[3],
double  out[3] 
)

Definition at line 195 of file gravi_eop.c.

Referenced by gravi_eop_pointing_uv().