[SIM2D-146] Dichroic model is inconsistent between blue and red Created: 17/Dec/21 Updated: 22/Dec/21 Resolved: 22/Dec/21 |
|
| Status: | Done |
| Project: | DRP 2-D Simulator |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Story | Priority: | Normal |
| Reporter: | price | Assignee: | Kiyoto Yabe |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Attachments: |
|
| Reviewers: | hassan |
| Description |
|
The dichroic throughputs from pfs_thr_20201231_ext_all_*.dat have a sum that exceeds unity, which is unphysical.
import numpy as np import matplotlib.pyplot as plt blueData = np.genfromtxt("../drp_instdata/data/throughput/pfs_thr_20201231_ext_all_blu.dat") redData = np.genfromtxt("../drp_instdata/data/throughput/pfs_thr_20201231_ext_all_red.dat") wavelength = np.concatenate((blueData[:2600, 0], redData[:, 0])) assert(np.all(blueData[2600:, 0] == redData[:401, 0])) blue = np.zeros_like(wavelength) blue[:3001] = blueData[:, 5] red = np.zeros_like(wavelength) red[2600:] = redData[:, 5] total = blue + red plt.plot(wavelength, blue, "b-") plt.plot(wavelength, red, "r-") plt.plot(wavelength, total, "k-") plt.xlabel("Wavelength (nm)") plt.ylabel("Dichroic transmission") plt.suptitle("pfs_thr_20201231_ext_all_*.dat") plt.show() |
| Comments |
| Comment by Kiyoto Yabe [ 21/Dec/21 ] |
|
I just upload the new version (pfs_thr_20211220_ext_all_*.dat) to `drp_instdata`. The cause is that the reflectance of the blue dichroic used for the estimation is taken from the datasheet of the "witness sample". I could not find the proper estimation for the reflectance, so assume that reflectance = 1 - transmittance, but note that the absorption documented is 3-4% in average and might be severer in bluer part. Anyway, the updated version does not show any tip at the transition wavelength when blue and red are combined. |
| Comment by price [ 22/Dec/21 ] |
|
It looks like that with the new curves, the dichroic cutoff in the blue arm has moved 15 nm to shorter wavelengths, and the ripples on the blue arm have disappeared.
I confirmed that the NIR is unaffected.
import numpy as np import matplotlib.pyplot as plt blueData = np.genfromtxt("../drp_instdata/data/throughput/pfs_thr_20201231_ext_all_blu.dat") redData = np.genfromtxt("../drp_instdata/data/throughput/pfs_thr_20201231_ext_all_red.dat") nirData = np.genfromtxt("../drp_instdata/data/throughput/pfs_thr_20201231_ext_all_nir.dat") assert(np.all(blueData[2600:, 0] == redData[:401, 0])) assert(np.all(redData[3150:, 0] == nirData[:401, 0])) wavelength = np.concatenate((blueData[:2600, 0], redData[:, 0], nirData[401:, 0])) blue = np.zeros_like(wavelength) blue[:3001] = blueData[:, 9] red = np.zeros_like(wavelength) red[2600:6151] = redData[:, 9] nir = np.zeros_like(wavelength) nir[5750:] = nirData[:, 9] total = blue + red + nir plt.plot(wavelength, blue, "b:") plt.plot(wavelength, red, "g:") plt.plot(wavelength, nir, "r:") plt.plot(wavelength, total, "k:", label="Old") blueData = np.genfromtxt("../drp_instdata/data/throughput/pfs_thr_20211220_ext_all_blu.dat") redData = np.genfromtxt("../drp_instdata/data/throughput/pfs_thr_20211220_ext_all_red.dat") nirData = np.genfromtxt("../drp_instdata/data/throughput/pfs_thr_20211220_ext_all_nir.dat") assert(np.all(blueData[2600:, 0] == redData[:401, 0])) assert(np.all(redData[3150:, 0] == nirData[:401, 0])) wavelength = np.concatenate((blueData[:2600, 0], redData[:, 0], nirData[401:, 0])) blue = np.zeros_like(wavelength) blue[:3001] = blueData[:, 9] red = np.zeros_like(wavelength) red[2600:6151] = redData[:, 9] nir = np.zeros_like(wavelength) nir[5750:] = nirData[:, 9] total = blue + red + nir plt.plot(wavelength, blue, "b-") plt.plot(wavelength, red, "g-") plt.plot(wavelength, nir, "r-") plt.plot(wavelength, total, "k-", label="New") plt.xlabel("Wavelength (nm)") plt.ylabel("Transmission") plt.legend() plt.suptitle("Old vs New") plt.show() |
| Comment by price [ 22/Dec/21 ] |
|
I've updated the simulator to use the new throughput curves provided by Kiyoto Yabe. |
| Comment by hassan [ 22/Dec/21 ] |
|
No objections with suggested changes in pull requests. |
| Comment by price [ 22/Dec/21 ] |
|
Thanks, Kiyoto Yabe and hassan. Merged to master. |