Skip to content

Commit

Permalink
Specifying preferred wavelengths for analytical Gaussian fit for #253
Browse files Browse the repository at this point in the history
  • Loading branch information
mgalloy committed May 6, 2024
1 parent a330a1f commit ab18023
Show file tree
Hide file tree
Showing 14 changed files with 42 additions and 23 deletions.
2 changes: 1 addition & 1 deletion resource/wave_regions/ucomp.1074.spec.cfg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[DEFAULT]
center_wavelength : type=float, default=1074.7
wing_offset : type=float, default=0.11
wing_offset : type=float, optional, default=0.11
name : type=str, default=Fe XIII
doi : type=str, default=https://doi.org/10.26024/g8p7-wy42
nickname : type=str, default=
Expand Down
2 changes: 1 addition & 1 deletion resource/wave_regions/ucomp.1079.spec.cfg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[DEFAULT]
center_wavelength : type=float, default=1079.8
wing_offset : type=float, default=0.11
wing_offset : type=float, optional, default=0.11
name : type=str, default=Fe XIII
doi : type=str, default=https://doi.org/10.26024/g8p7-wy42
nickname : type=str, default=
Expand Down
2 changes: 1 addition & 1 deletion resource/wave_regions/ucomp.1083.spec.cfg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[DEFAULT]
center_wavelength : type=float, default=1083.0
wing_offset : type=float, default=0.11
wing_offset : type=float, optional
name : type=str, default=He I
doi : type=str, default=https://doi.org/10.26024/g8p7-wy42
nickname : type=str, default=
Expand Down
2 changes: 1 addition & 1 deletion resource/wave_regions/ucomp.530.spec.cfg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[DEFAULT]
center_wavelength : type=float, default=530.3
wing_offset : type=float, default=0.11
wing_offset : type=float, optional
name : type=str, default=Fe XIV
doi : type=str, default=https://doi.org/10.26024/g8p7-wy42
nickname : type=str, default=green line
Expand Down
2 changes: 1 addition & 1 deletion resource/wave_regions/ucomp.637.spec.cfg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[DEFAULT]
center_wavelength : type=float, default=637.4
wing_offset : type=float, default=0.11
wing_offset : type=float, optional, default=0.06
name : type=str, default=Fe X
doi : type=str, default=https://doi.org/10.26024/g8p7-wy42
nickname : type=str, default=
Expand Down
2 changes: 1 addition & 1 deletion resource/wave_regions/ucomp.656.spec.cfg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[DEFAULT]
center_wavelength : type=float, default=656.3
wing_offset : type=float, default=0.11
wing_offset : type=float, optional
name : type=str, default=H I
doi : type=str, default=https://doi.org/10.26024/g8p7-wy42
nickname : type=str, default=red line (H-alpha)
Expand Down
2 changes: 1 addition & 1 deletion resource/wave_regions/ucomp.670.spec.cfg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[DEFAULT]
center_wavelength : type=float, default=670.20
wing_offset : type=float, default=0.11
wing_offset : type=float, optional
name : type=str, default=Ni XV
doi : type=str, default=https://doi.org/10.26024/g8p7-wy42
nickname : type=str, default=
Expand Down
2 changes: 1 addition & 1 deletion resource/wave_regions/ucomp.691.spec.cfg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[DEFAULT]
center_wavelength : type=float, default=691.8
wing_offset : type=float, default=0.11
wing_offset : type=float, optional
name : type=str, default=Ar XI
doi : type=str, default=https://doi.org/10.26024/g8p7-wy42
nickname : type=str, default=
Expand Down
2 changes: 1 addition & 1 deletion resource/wave_regions/ucomp.706.spec.cfg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[DEFAULT]
center_wavelength : type=float, default=706.2
wing_offset : type=float, default=0.11
wing_offset : type=float, optional, default=0.06
name : type=str, default=Fe XV
doi : type=str, default=https://doi.org/10.26024/g8p7-wy42
nickname : type=str, default=
Expand Down
2 changes: 1 addition & 1 deletion resource/wave_regions/ucomp.761.spec.cfg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[DEFAULT]
center_wavelength : type=float, default=761.10
wing_offset : type=float, default=0.11
wing_offset : type=float, optional
name : type=str, default=S XII
doi : type=str, default=https://doi.org/10.26024/g8p7-wy42
nickname : type=str, default=
Expand Down
2 changes: 1 addition & 1 deletion resource/wave_regions/ucomp.789.spec.cfg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[DEFAULT]
center_wavelength : type=float, default=789.4
wing_offset : type=float, default=0.11
wing_offset : type=float, optional, default=0.07
name : type=str, default=Fe XI
doi : type=str, default=https://doi.org/10.26024/g8p7-wy42
nickname : type=str, default=
Expand Down
2 changes: 1 addition & 1 deletion resource/wave_regions/ucomp.802.spec.cfg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[DEFAULT]
center_wavelength : type=float, default=802.40
wing_offset : type=float, default=0.11
wing_offset : type=float, optional
name : type=str, default=Ni XV
doi : type=str, default=https://doi.org/10.26024/g8p7-wy42
nickname : type=str, default=
Expand Down
2 changes: 1 addition & 1 deletion resource/wave_regions/ucomp.991.spec.cfg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[DEFAULT]
center_wavelength : type=float, default=991.30
wing_offset : type=float, default=0.11
wing_offset : type=float, optional
name : type=str, default=S VIII
doi : type=str, default=https://doi.org/10.26024/g8p7-wy42
nickname : type=str, default=
Expand Down
39 changes: 29 additions & 10 deletions src/level2/ucomp_l2_file.pro
Original file line number Diff line number Diff line change
Expand Up @@ -79,28 +79,47 @@ pro ucomp_l2_file, filename, thumbnail=thumbnail, run=run
p_angle = ucomp_getpar(primary_header, 'SOLAR_P0')
occulter_radius = ucomp_getpar(primary_header, 'RADIUS')

; TODO: need to specify wave region dependent wavelengths to find the closest
; We have specified wave region dependent wavelengths to find the closest
; band to instead of choosing the band on either side of the center; we
; already specify center_wavelength for each wave_region, need wing_offset
; as well, then the three bands to find would be:
; already specify center_wavelength for each wave_region, use wing_offset
; to specify the three bands:
;
; 1. center_wavelength - wing_offset
; 2. center_wavelength
; 3. center_wavelength + wing_offset
; 1. blue: closest to center_wavelength - wing_offset
; 2. center: closest to center_wavelength
; 3. red: closest to center_wavelength + wing_offset
;
; If no wing_offset specified for a wave region, just use the center three
; wavelengths. Discussed in #263.

center_wavelength = run->line(wave_region, 'center_wavelength')
wing_offset = run->line(wave_region, 'wing_offset')

!null = min(abs(wavelengths - (center_wavelength - wing_offset)), blue_index)
!null = min(abs(wavelengths - center_wavelength), center_index)
!null = min(abs(wavelengths - (center_wavelength + wing_offset)), red_index)
if (n_elements(wing_offset) gt 0L) then begin
; NOTE: this is naive and assuming that there are not two equally distant
; wavelengths to the preferred spot, for example, if center wavelength is
; 1074.7 with 0.11 wing_offset, and the observed wavelengths were:
;
; 1074.535, 1074.645, 1074.7, 1074.755, 1074.865
;
; Then we might get a tie that is broken arbitrarily that results in
; selecting blue=1074.535 and red=1074.755, depending on floating point
; round off, or always rounding down, or some other arbitrary process.

!null = min(abs(wavelengths - (center_wavelength - wing_offset)), blue_index)
!null = min(abs(wavelengths - center_wavelength), center_index)
!null = min(abs(wavelengths - (center_wavelength + wing_offset)), red_index)
endif else begin
blue_index = n_wavelengths / 2L - 1L
center_index = n_wavelengths / 2L
red_index = n_wavelengths / 2L + 1L
endelse

mg_log, 'indices in %d wavelengths, blue: %d, center: %d, red: %d', $
n_wavelengths, blue_index, center_index, red_index, $
name=run.logger_name, /debug

intensity_blue = reform(ext_data[*, *, 0, blue_index])
intensity_center = reform(ext_data[*, *, 0, center_index])
intensity_blue = reform(ext_data[*, *, 0, blue_index])
intensity_red = reform(ext_data[*, *, 0, red_index])

summed_intensity = ucomp_integrate(reform(ext_data[*, *, 0, *]))
Expand Down

0 comments on commit ab18023

Please sign in to comment.