ERIS Pipeline Reference Manual 1.8.15
sc_lines.h File Reference
#include <sc_basic.h>

Go to the source code of this file.

#define SC_ERAD   6371.
 
cpl_error_code sc_lines (cpl_table *groups, cpl_parameterlist *parlist)
 
cpl_error_code sc_lines_readlist (cpl_table *groups, const cpl_parameterlist *parlist)
 
cpl_error_code sc_lines_getmodelbins (cpl_parameterlist *parlist)
 
cpl_error_code sc_lines_readsolflux (cpl_parameterlist *parlist)
 
cpl_error_code sc_lines_readvarpar (cpl_array *varpar, cpl_parameterlist *parlist)
 
cpl_error_code sc_lines_scalelines (cpl_table *groups, const cpl_array *varpar, const cpl_parameterlist *parlist)
 
cpl_error_code sc_lines_vactoair (cpl_table *groups, const cpl_parameterlist *parlist)
 

Detailed Description

Header for routines handling the airglow line list

Author
Stefan Noll & ESO In-Kind Team Innsbruck
Since
17 Jul 2013
Date
17 Jul 2013

Definition in file sc_lines.h.

Macro Definition Documentation

◆ SC_ERAD

#define SC_ERAD   6371.

Average Earth radius in km

Definition at line 63 of file sc_lines.h.

Function Documentation

◆ sc_lines()

cpl_error_code sc_lines ( cpl_table *  groups,
cpl_parameterlist *  parlist 
)

Reads airglow line list from an ASCII file and modifies the line fluxes depending on variability class, period of the night, season, solar activity, and zenith distance. Air wavelengths are provided if required.

INPUT:

Parameters
parlistinput CPL parameter list

OUTPUT:

Parameters
groupsCPL table with airglow line information
parlistparameter list complemented by parameters related to airglow model

ERRORS:

  • see subroutines

Definition at line 48 of file sc_lines.c.

References sc_lines_getmodelbins(), sc_lines_readlist(), sc_lines_readvarpar(), sc_lines_scalelines(), and sc_lines_vactoair().

Referenced by sc_skycorr().

◆ sc_lines_getmodelbins()

cpl_error_code sc_lines_getmodelbins ( cpl_parameterlist *  parlist)

Gets season and time bins for airglow model from observing date in years and UT observing time in s and writes them into the general parameter list. Moreover, the solar radio flux is obtained from year and month which are also taken from observing date. The flux value is read from an ASCII file in the data folder. If the required year and month cannot be found, the local file is updated by a one downloaded from the Canadian reference web server. The most recent entry is taken, if the required month is not in the list. If the procedure fails, an average value of 130 sfu is written into the general parameter list. The entire procedure for obtaining the solar radio flux is not carried out if a positive value for the solflux parameter is already in the parameter list.

INPUT:

Parameters
parlistinput CPL parameter list

OUTPUT:

Parameters
parlistparameter list with sky model bins

ERRORS:

Definition at line 298 of file sc_lines.c.

References sc_basic_fracyear2date(), sc_lines_readsolflux(), and SC_MAXLEN.

Referenced by sc_lines().

◆ sc_lines_readlist()

cpl_error_code sc_lines_readlist ( cpl_table *  groups,
const cpl_parameterlist *  parlist 
)

Reads airglow line data from ASCII file in the sysdata/ folder and writes them into a CPL table. Each line of the file must consist of vacuum wavelength (1st), unextincted flux (2nd), atmospheric transmission at zenith (3rd), variability class (4rd), roto-vibrational system (5th), line group A number (6th), and line group B number (7th). Header lines are allowed if they are marked by #.

INPUT:

Parameters
parlistinput CPL parameter list

OUTPUT:

Parameters
groupsCPL table with airglow line information

ERRORS:

  • File opening failed
  • Unexpected file structure

Definition at line 107 of file sc_lines.c.

References sc_basic_abspath(), SC_LENLINE, and SC_MAXLEN.

Referenced by sc_lines().

◆ sc_lines_readsolflux()

cpl_error_code sc_lines_readsolflux ( cpl_parameterlist *  parlist)

Reads solar radio flux for given year and month from an ASCII file in the sysdata/ folder. If the file source is set to 'WEB' (instead of 'LOCAL'), the local file is substituted by the one from the Canadian reference web site before the reading is started. If the programme fails to find the correct flux value, the solflux parameter is set to -1. If no file source is given, the average value of the solar cycles 19 to 23, i.e. 130 sfu, is assumed.

INPUT:

Parameters
parlistinput CPL parameter list

OUTPUT:

Parameters
parlistCPL parameter list with updated solar radio flux

ERRORS:

  • File opening failed
  • Unexpected file structure

Definition at line 417 of file sc_lines.c.

References sc_basic_abspath(), SC_LENLINE, and SC_MAXLEN.

Referenced by sc_lines_getmodelbins().

◆ sc_lines_readvarpar()

cpl_error_code sc_lines_readvarpar ( cpl_array *  varpar,
cpl_parameterlist *  parlist 
)

Reads data related to airglow scaling from an ASCII file in the sysdata/ folder and fills a CPL array with feature-related correction factors. The resulting factors are related to the standard strengths of airglow emission features of the upper atmosphere given by Hanuschik (2003) and Rousselot et al. (2000). The scaling factors depend on the emission layer width (related to airmass), the monthly-averaged solar flux in sfu, the season of the year, and the time of the day.

INPUT:

Parameters
parlistinput CPL parameter list

OUTPUT:

Parameters
varparcorrection factors for variability classes as CPL array

ERRORS:

  • File opening failed
  • Unexpected file structure
  • Invalid object value(s)

Definition at line 602 of file sc_lines.c.

References sc_basic_abspath(), sc_basic_readline(), SC_ERAD, SC_MAXLEN, and SC_MAXPAR.

Referenced by sc_lines().

◆ sc_lines_scalelines()

cpl_error_code sc_lines_scalelines ( cpl_table *  groups,
const cpl_array *  varpar,
const cpl_parameterlist *  parlist 
)

Modifies line fluxes by multiplying factors depending on the variability class. The factors originate from sc_lines_readvarpar. The routine also considers the flux reduction due to atmospheric absorption for the given airmass-corrected transmission spectrum (part of the input line table). The airmass is calculated using the given telescope altitude angle and the formula of Rozenberg (1966).

INPUT:

Parameters
groupsCPL table with airglow line information
varparcorrection factors for variability classes as CPL array
parlistinput CPL parameter list

OUTPUT:

Parameters
groupsline table with corrected fluxes

ERRORS:

  • none

Definition at line 745 of file sc_lines.c.

Referenced by sc_lines().

◆ sc_lines_vactoair()

cpl_error_code sc_lines_vactoair ( cpl_table *  groups,
const cpl_parameterlist *  parlist 
)

Converts vacuum wavelengths to air wavelengths by using the formula of Edlen (1966). No action is performed if the wavelengths of the input spectrum are already for vacuum.

INPUT:

Parameters
groupsline list with vacuum wavelengths in $\mu{\rm m}$
parlistgeneral CPL parameter list

OUTPUT:

Parameters
groupsline list with vacuum wavelengths in $\mu{\rm m}$ if required

ERRORS:

  • Invalid object value(s)

Definition at line 816 of file sc_lines.c.

References SC_MAXLEN.

Referenced by sc_lines().