dustem_initialize_ext.pro
3.83 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
FUNCTION dustem_initialize_ext,Next,comments=comments,help=help
;+
; NAME:
; dustem_initialize_ext
;
; PURPOSE:
; Initializes an empty Dustem EXT structure
;
; CATEGORY:
; DUSTEM Wrapper, Distribued, Low-Level
;
; CALLING SEQUENCE:
; st=dustem_initialize_ext(Next[,/help])
;
; INPUTS:
; Next: Number of elements/filters in the EXT structure
; OPTIONAL INPUT PARAMETERS:
; None
; OUTPUTS:
; st = EXT structure
; The structure contains the following tags
; instru : name of the instrument. Actually not used by DustemWrap.
; filter : name of the filter. Actually defines the wavelength, the flux convention, etc ...
; wave : wavelength in microns. Actually not used by DustemWrap. [microns]
; EXT_I : Total Extinction Cross-section (a.k.a. Ext_I) [cm^2/H]
; EXT_Q : Q Extinction Cross-section [cm^2/H]
; EXT_U : U Extintion Cross-section [cm^2/H]
; EXT_P : P Extinction Cross-section [cm^2/H] (computed from EXT_Q,EXT_U or directly from VG's models)
; EXT_smallp : Smallp Extinction Cross-section (Extinction polarization fraction) []
; psi : polarization angle [deg] (computed from EXT_Q,EXT_U)
; sigextII : = error^2 (for completness on sigmas) [cm^2/H^2]
; sigextQQ : variance on Q [cm^2/H^2]
; sigextUU : variance on U [cm^2/H^2]
; sigextIQ : IQ covariance [cm^2/H^2]
; sigextIU : IU covariance [cm^2/H^2]
; sigextQU : QU covariance [cm^2/H^2]
; sigextP : uncertainty on largep [cm^2/H]
; sigextsmallp = uncertainty on smallp []
; sigextpsi : uncertainty on psi [deg]
;
; OPTIONAL OUTPUT PARAMETERS:
; comments : string comments about the EXT SED
;
; ACCEPTED KEY-WORDS:
; help = if set, print this help
;
; COMMON BLOCKS:
; None
;
; SIDE EFFECTS:
; None
;
; RESTRICTIONS:
; None
;
; PROCEDURE:
; Straightforward
;
; EXAMPLES
; st=dustem_initialize_ext(10)
; help,st
;
; MODIFICATION HISTORY:
; Written by JPB 2009
; Evolution details on the DustEMWrap gitlab.
; See http://dustemwrap.irap.omp.eu/ for FAQ and help.
;-
IF keyword_set(help) THEN BEGIN
doc_library,'dustem_initialize_ext'
sed=0.
goto,the_end
ENDIF
iv=la_undef(4)
one_st={instru:'',filter:'',wave:iv,EXT_I:iv,EXT_Q:iv,EXT_U:iv,EXT_P:iv,EXT_smallp:iv,psi:iv,sigextII:iv,sigextQQ:iv,sigextUU:iv,sigextIQ:iv,sigextIU:iv,sigextQU:iv,sigextP:iv,sigextsmallp:iv,sigext_psi:iv}
comments=['Dustem-Wrap EXT']
comments=[comments,'Comment lines start with \']
comments=[comments,'Undefined/missing value is -32768.0']
comments=[comments,'Assumes a reference N(H) = *!dustem_HCD']
comments=[comments,'instru: Instrument name']
comments=[comments,'filter: Instrument filter']
comments=[comments,'wave: Filter reference wavelength [mic]']
comments=[comments,'EXT_I: EXT intensity [cm^2/H]']
comments=[comments,'EXT_Q: Q Stokes parameter extinction cross-section [cm^2/H]']
comments=[comments,'EXT_U: U Stokes parameter extinction cross-section [cm^2/H]']
comments=[comments,'EXT_P: Extinction Polarized Intensity [cm^2/H]']
comments=[comments,'EXT_smallp: Extinction Polarized Fraction []']
comments=[comments,'psi: polarization angle [deg]']
comments=[comments,'sigextII: variance on EXT_I [(cm^2/H)^2]']
comments=[comments,'sigextQQ: variance on EXT_Q [(cm^2/H)^2]']
comments=[comments,'sigextUU: variance on EXT_U [(cm^2/H)^2]']
comments=[comments,'sigextIQ: covariance on EXT_I and EXT_Q [(cm^2/H)^2]']
comments=[comments,'sigextIU: covariance on EXT_I and EXT_U [(cm^2/H)^2]']
comments=[comments,'sigextQU: covariance on EXT_Q and EXT_U [(cm^2/Hs)^2]']
comments=[comments,'sigextP: variance on Extinction Polarized Intensity (P) [(cm^2/H)^2]']
comments=[comments,'sigextsmallp: variance on Extinction Polarized fraction (EXT_P) []']
comments=[comments,'sigextpsi: variance on polarisation fraction (psi) [deg^2]']
sed=replicate(one_st,Next)
the_end:
RETURN,sed
END