Manticore  Version 1.0
Physics of Molecular Clouds
SPIRE.cc
Go to the documentation of this file.
1 
8 #include <algorithm>
9 #include <cmath>
10 
11 #include "SPIRE.h"
12 #include "manticore.h"
13 
14 namespace mu = mutils;
15 
16 namespace manticore {
17 
25  // {nu0, resp250}
26  {9.188639e+11, 1.084730e-04},
27  {9.215620e+11, 1.218772e-04},
28  {9.245599e+11, 1.347726e-04},
29  {9.275579e+11, 1.479526e-04},
30  {9.305558e+11, 1.586027e-04},
31  {9.335537e+11, 1.718282e-04},
32  {9.362518e+11, 1.880550e-04},
33  {9.392498e+11, 2.138530e-04},
34  {9.422477e+11, 2.447838e-04},
35  {9.452456e+11, 2.927174e-04},
36  {9.479438e+11, 3.561768e-04},
37  {9.509417e+11, 4.300636e-04},
38  {9.539396e+11, 5.161096e-04},
39  {9.569375e+11, 6.143470e-04},
40  {9.599355e+11, 7.120191e-04},
41  {9.626336e+11, 8.125776e-04},
42  {9.656315e+11, 9.187778e-04},
43  {9.686294e+11, 1.033799e-03},
44  {9.716274e+11, 1.162803e-03},
45  {9.743255e+11, 1.339292e-03},
46  {9.773234e+11, 1.489921e-03},
47  {9.803213e+11, 1.647826e-03},
48  {9.833193e+11, 1.797823e-03},
49  {9.863172e+11, 1.902874e-03},
50  {9.890153e+11, 2.003211e-03},
51  {9.920132e+11, 2.097966e-03},
52  {9.950112e+11, 2.222780e-03},
53  {9.980091e+11, 2.461444e-03},
54  {1.001007e+12, 2.934525e-03},
55  {1.003705e+12, 3.612882e-03},
56  {1.006703e+12, 5.620042e-03},
57  {1.009701e+12, 9.065826e-03},
58  {1.012699e+12, 1.510255e-02},
59  {1.015397e+12, 2.759992e-02},
60  {1.018395e+12, 6.137481e-02},
61  {1.021393e+12, 1.069816e-01},
62  {1.024391e+12, 1.317988e-01},
63  {1.027389e+12, 1.587615e-01},
64  {1.030087e+12, 1.892676e-01},
65  {1.033085e+12, 2.255164e-01},
66  {1.036083e+12, 2.574784e-01},
67  {1.039081e+12, 2.904251e-01},
68  {1.042079e+12, 3.151850e-01},
69  {1.044777e+12, 3.320039e-01},
70  {1.047775e+12, 3.296086e-01},
71  {1.050773e+12, 3.618141e-01},
72  {1.053770e+12, 3.393903e-01},
73  {1.056469e+12, 3.433350e-01},
74  {1.059467e+12, 3.706502e-01},
75  {1.062464e+12, 3.835538e-01},
76  {1.065462e+12, 4.011251e-01},
77  {1.068460e+12, 4.149469e-01},
78  {1.071158e+12, 4.236222e-01},
79  {1.074156e+12, 4.306788e-01},
80  {1.077154e+12, 4.402838e-01},
81  {1.080152e+12, 4.417987e-01},
82  {1.083150e+12, 4.459048e-01},
83  {1.085848e+12, 4.536940e-01},
84  {1.088846e+12, 4.640540e-01},
85  {1.091844e+12, 4.700480e-01},
86  {1.094842e+12, 4.706400e-01},
87  {1.097540e+12, 4.656820e-01},
88  {1.100538e+12, 4.630806e-01},
89  {1.103536e+12, 4.567477e-01},
90  {1.106534e+12, 4.497102e-01},
91  {1.109532e+12, 4.547749e-01},
92  {1.112230e+12, 4.594671e-01},
93  {1.115228e+12, 4.729480e-01},
94  {1.118226e+12, 4.905253e-01},
95  {1.121224e+12, 5.026655e-01},
96  {1.124222e+12, 5.089402e-01},
97  {1.126920e+12, 5.058823e-01},
98  {1.129918e+12, 4.927037e-01},
99  {1.132916e+12, 4.750698e-01},
100  {1.135914e+12, 4.671513e-01},
101  {1.138612e+12, 4.602544e-01},
102  {1.141610e+12, 4.571810e-01},
103  {1.144608e+12, 4.657265e-01},
104  {1.147606e+12, 4.742719e-01},
105  {1.150603e+12, 4.808684e-01},
106  {1.153302e+12, 4.867153e-01},
107  {1.156300e+12, 4.910630e-01},
108  {1.159297e+12, 4.857408e-01},
109  {1.162295e+12, 4.804186e-01},
110  {1.164993e+12, 4.751714e-01},
111  {1.167991e+12, 4.699992e-01},
112  {1.170989e+12, 4.648270e-01},
113  {1.173987e+12, 4.638525e-01},
114  {1.176985e+12, 4.629530e-01},
115  {1.179683e+12, 4.609290e-01},
116  {1.182681e+12, 4.571671e-01},
117  {1.185679e+12, 4.533436e-01},
118  {1.188677e+12, 4.497450e-01},
119  {1.191675e+12, 4.460715e-01},
120  {1.194373e+12, 4.450219e-01},
121  {1.197371e+12, 4.514693e-01},
122  {1.200369e+12, 4.579168e-01},
123  {1.203367e+12, 4.622650e-01},
124  {1.206065e+12, 4.656387e-01},
125  {1.209063e+12, 4.676629e-01},
126  {1.212061e+12, 4.579917e-01},
127  {1.215059e+12, 4.483206e-01},
128  {1.218057e+12, 4.410485e-01},
129  {1.220755e+12, 4.359506e-01},
130  {1.223753e+12, 4.308526e-01},
131  {1.226751e+12, 4.374500e-01},
132  {1.229749e+12, 4.446471e-01},
133  {1.232747e+12, 4.522171e-01},
134  {1.235445e+12, 4.604556e-01},
135  {1.238443e+12, 4.689188e-01},
136  {1.241441e+12, 4.650323e-01},
137  {1.244438e+12, 4.580067e-01},
138  {1.247137e+12, 4.506822e-01},
139  {1.250135e+12, 4.418534e-01},
140  {1.253132e+12, 4.327376e-01},
141  {1.256130e+12, 4.296415e-01},
142  {1.259128e+12, 4.294180e-01},
143  {1.261826e+12, 4.295670e-01},
144  {1.264824e+12, 4.333828e-01},
145  {1.267822e+12, 4.365676e-01},
146  {1.270820e+12, 4.359528e-01},
147  {1.273818e+12, 4.315584e-01},
148  {1.276516e+12, 4.275973e-01},
149  {1.279514e+12, 4.273752e-01},
150  {1.282512e+12, 4.274492e-01},
151  {1.285510e+12, 4.268570e-01},
152  {1.288208e+12, 4.250062e-01},
153  {1.291206e+12, 4.231555e-01},
154  {1.294204e+12, 4.167434e-01},
155  {1.297202e+12, 4.090734e-01},
156  {1.300200e+12, 4.004701e-01},
157  {1.302898e+12, 3.881761e-01},
158  {1.305896e+12, 3.764801e-01},
159  {1.308894e+12, 3.728756e-01},
160  {1.311892e+12, 3.741262e-01},
161  {1.314890e+12, 3.753421e-01},
162  {1.317588e+12, 3.794046e-01},
163  {1.320586e+12, 3.833486e-01},
164  {1.323584e+12, 3.823028e-01},
165  {1.326582e+12, 3.759019e-01},
166  {1.329280e+12, 3.698354e-01},
167  {1.332278e+12, 3.578914e-01},
168  {1.335276e+12, 3.449645e-01},
169  {1.338274e+12, 3.369568e-01},
170  {1.341271e+12, 3.374651e-01},
171  {1.343970e+12, 3.379009e-01},
172  {1.346968e+12, 3.400584e-01},
173  {1.349965e+12, 3.415895e-01},
174  {1.352963e+12, 3.430257e-01},
175  {1.355961e+12, 3.436028e-01},
176  {1.358659e+12, 3.441799e-01},
177  {1.361657e+12, 3.411501e-01},
178  {1.364655e+12, 3.352276e-01},
179  {1.367653e+12, 3.286348e-01},
180  {1.370351e+12, 3.278186e-01},
181  {1.373349e+12, 3.273886e-01},
182  {1.376347e+12, 3.250650e-01},
183  {1.379345e+12, 3.210074e-01},
184  {1.382343e+12, 3.179080e-01},
185  {1.385041e+12, 3.137072e-01},
186  {1.388039e+12, 3.087715e-01},
187  {1.391037e+12, 3.040208e-01},
188  {1.394035e+12, 2.997811e-01},
189  {1.396733e+12, 2.956514e-01},
190  {1.399731e+12, 2.926807e-01},
191  {1.402729e+12, 2.896240e-01},
192  {1.405727e+12, 2.844460e-01},
193  {1.408725e+12, 2.705123e-01},
194  {1.411423e+12, 2.569133e-01},
195  {1.414421e+12, 2.404181e-01},
196  {1.417419e+12, 2.217483e-01},
197  {1.420417e+12, 2.034087e-01},
198  {1.423415e+12, 1.888247e-01},
199  {1.426113e+12, 1.738108e-01},
200  {1.429111e+12, 1.598519e-01},
201  {1.432109e+12, 1.481155e-01},
202  {1.435106e+12, 1.364123e-01},
203  {1.437805e+12, 1.232542e-01},
204  {1.440803e+12, 1.099215e-01},
205  {1.443800e+12, 9.732562e-02},
206  {1.446798e+12, 8.545625e-02},
207  {1.449796e+12, 7.342128e-02},
208  {1.452494e+12, 6.431992e-02},
209  {1.455492e+12, 5.668411e-02},
210  {1.458490e+12, 4.919344e-02},
211  {1.461488e+12, 4.375944e-02},
212  {1.464486e+12, 3.848005e-02},
213  {1.467184e+12, 3.389748e-02},
214  {1.470182e+12, 2.980627e-02},
215  {1.473180e+12, 2.572455e-02},
216  {1.476178e+12, 2.316208e-02},
217  {1.478876e+12, 2.066791e-02},
218  {1.481874e+12, 1.827823e-02},
219  {1.484872e+12, 1.619948e-02},
220  {1.487870e+12, 1.418459e-02},
221  {1.490868e+12, 1.266808e-02},
222  {1.493566e+12, 1.125878e-02},
223  {1.496564e+12, 9.976284e-03},
224  {1.499562e+12, 9.081730e-03},
225  {1.502560e+12, 8.197224e-03},
226  {1.505558e+12, 7.434978e-03},
227  {1.508256e+12, 6.727826e-03},
228  {1.511254e+12, 6.048443e-03},
229  {1.514252e+12, 5.639204e-03},
230  {1.517250e+12, 5.233646e-03},
231  {1.519948e+12, 4.902739e-03},
232  {1.522946e+12, 4.643269e-03},
233  {1.525944e+12, 4.384697e-03},
234  {1.528942e+12, 3.967740e-03},
235  {1.531939e+12, 3.540782e-03},
236  {1.534638e+12, 3.184214e-03},
237  {1.537636e+12, 2.954032e-03},
238  {1.540633e+12, 2.728737e-03},
239  {1.543631e+12, 2.585153e-03},
240  {1.546629e+12, 2.456319e-03},
241  {1.549327e+12, 2.302204e-03},
242  {1.552325e+12, 2.058967e-03},
243  {1.555323e+12, 1.816655e-03},
244  {1.558321e+12, 1.634322e-03},
245  {1.561019e+12, 1.484656e-03},
246  {1.564017e+12, 1.343556e-03},
247  {1.567015e+12, 1.435372e-03},
248  {1.570013e+12, 1.529347e-03},
249  {1.573011e+12, 1.593072e-03},
250  {1.575709e+12, 1.622637e-03},
251  {1.578707e+12, 1.651940e-03},
252  {1.581705e+12, 1.574919e-03},
253  {1.584703e+12, 1.486488e-03},
254  {1.587401e+12, 1.392713e-03},
255  {1.590399e+12, 1.288397e-03},
256  {1.593397e+12, 1.183896e-03},
257  {1.596395e+12, 1.216501e-03},
258  {1.599393e+12, 1.294675e-03},
259  {1.602091e+12, 1.367362e-03},
260  {1.605089e+12, 1.417856e-03},
261  {1.608087e+12, 1.472770e-03},
262  {1.611085e+12, 1.387733e-03},
263  {1.614083e+12, 1.202401e-03},
264  {1.616781e+12, 1.020101e-03},
265  {1.619779e+12, 8.941457e-04},
266  {1.622777e+12, 7.702332e-04},
267  {1.625774e+12, 6.554547e-04},
268  {1.628473e+12, 5.511324e-04},
269  {1.631471e+12, 4.471695e-04},
270  {1.634468e+12, 3.868312e-04},
271  {1.637466e+12, 3.330373e-04},
272  {1.640464e+12, 3.430392e-04},
273  {1.643162e+12, 5.041553e-04},
274  {1.646160e+12, 6.636344e-04},
275  {1.649158e+12, 6.809904e-04},
276  {1.652156e+12, 6.445440e-04},
277  {1.655154e+12, 5.775735e-04},
278  {1.657852e+12, 3.222030e-04},
279  {1.672542e+12, 1.426754e-04},
280  {1.675540e+12, 3.257785e-04},
281  {1.678538e+12, 4.182634e-04},
282  {1.681536e+12, 3.849293e-04},
283  {1.684234e+12, 3.523299e-04},
284  {1.687232e+12, 2.392848e-04},
285  {1.690230e+12, 1.113489e-04},
286  {1.704920e+12, 1.121522e-04},
287  {1.707918e+12, 1.332626e-04},
288  {1.710616e+12, 1.011877e-04},
289  {1.725306e+12, 1.367894e-04},
290  {1.728304e+12, 2.133156e-04},
291  {1.731301e+12, 2.849122e-04},
292  {1.734299e+12, 3.498730e-04},
293  {1.737297e+12, 4.146718e-04},
294  {1.739995e+12, 3.716393e-04},
295  {1.742993e+12, 3.037991e-04},
296  {1.745991e+12, 2.479662e-04},
297  {1.748989e+12, 2.316049e-04},
298  {1.751687e+12, 2.155208e-04},
299  {1.754685e+12, 2.104223e-04},
300  {1.757683e+12, 2.115269e-04},
301  {1.760681e+12, 2.076203e-04},
302  {1.763679e+12, 1.495520e-04},
303  {1.795757e+12, 1.269763e-04},
304  {1.798755e+12, 1.634596e-04},
305 };
306 
314  // {nu0, resp350}
315  {6.370590e+11, 1.113030e-04},
316  {6.400569e+11, 1.230394e-04},
317  {6.430548e+11, 1.348546e-04},
318  {6.460527e+11, 1.421731e-04},
319  {6.487509e+11, 1.521099e-04},
320  {6.517488e+11, 1.599524e-04},
321  {6.547467e+11, 1.639040e-04},
322  {6.577447e+11, 1.706184e-04},
323  {6.607426e+11, 1.829189e-04},
324  {6.634407e+11, 2.064539e-04},
325  {6.664386e+11, 2.383758e-04},
326  {6.694366e+11, 2.844468e-04},
327  {6.724345e+11, 3.284091e-04},
328  {6.751326e+11, 3.810997e-04},
329  {6.781305e+11, 4.354011e-04},
330  {6.811285e+11, 4.847582e-04},
331  {6.841264e+11, 5.547926e-04},
332  {6.871243e+11, 6.724104e-04},
333  {6.898224e+11, 8.334800e-04},
334  {6.928204e+11, 1.035958e-03},
335  {6.958183e+11, 1.343013e-03},
336  {6.988162e+11, 1.722713e-03},
337  {7.018141e+11, 2.191495e-03},
338  {7.045123e+11, 2.897803e-03},
339  {7.075102e+11, 4.069488e-03},
340  {7.105081e+11, 5.786725e-03},
341  {7.135061e+11, 8.848851e-03},
342  {7.162042e+11, 1.511291e-02},
343  {7.192021e+11, 3.231656e-02},
344  {7.222000e+11, 6.647241e-02},
345  {7.251980e+11, 8.051505e-02},
346  {7.281959e+11, 9.755227e-02},
347  {7.308940e+11, 1.137612e-01},
348  {7.338919e+11, 1.304646e-01},
349  {7.368899e+11, 1.502373e-01},
350  {7.398878e+11, 1.813522e-01},
351  {7.425859e+11, 2.054086e-01},
352  {7.455838e+11, 2.416745e-01},
353  {7.485818e+11, 2.753118e-01},
354  {7.515797e+11, 3.150791e-01},
355  {7.545776e+11, 3.404826e-01},
356  {7.572757e+11, 3.717275e-01},
357  {7.602737e+11, 3.847605e-01},
358  {7.632716e+11, 3.985087e-01},
359  {7.662695e+11, 3.983693e-01},
360  {7.692674e+11, 4.044490e-01},
361  {7.719656e+11, 4.097709e-01},
362  {7.749635e+11, 4.218764e-01},
363  {7.779614e+11, 4.328801e-01},
364  {7.809594e+11, 4.424593e-01},
365  {7.836575e+11, 4.346474e-01},
366  {7.866554e+11, 4.355906e-01},
367  {7.896533e+11, 4.383730e-01},
368  {7.926513e+11, 4.397610e-01},
369  {7.956492e+11, 4.432323e-01},
370  {7.983473e+11, 4.488396e-01},
371  {8.013452e+11, 4.563386e-01},
372  {8.043432e+11, 4.624408e-01},
373  {8.073411e+11, 4.560023e-01},
374  {8.103390e+11, 4.514346e-01},
375  {8.130371e+11, 4.468798e-01},
376  {8.160351e+11, 4.446660e-01},
377  {8.190330e+11, 4.306800e-01},
378  {8.220309e+11, 4.274240e-01},
379  {8.247291e+11, 4.190620e-01},
380  {8.277270e+11, 4.208057e-01},
381  {8.307249e+11, 4.268449e-01},
382  {8.337228e+11, 4.385382e-01},
383  {8.367208e+11, 4.620739e-01},
384  {8.394189e+11, 4.704902e-01},
385  {8.424168e+11, 4.662448e-01},
386  {8.454147e+11, 4.643230e-01},
387  {8.484127e+11, 4.418194e-01},
388  {8.514106e+11, 4.190298e-01},
389  {8.541087e+11, 4.027699e-01},
390  {8.571066e+11, 4.004363e-01},
391  {8.601046e+11, 4.100312e-01},
392  {8.631025e+11, 4.119052e-01},
393  {8.658006e+11, 4.256229e-01},
394  {8.687985e+11, 4.334937e-01},
395  {8.717965e+11, 4.304953e-01},
396  {8.747944e+11, 4.187266e-01},
397  {8.777923e+11, 4.158781e-01},
398  {8.804904e+11, 4.152784e-01},
399  {8.834884e+11, 4.159530e-01},
400  {8.864863e+11, 4.217999e-01},
401  {8.894842e+11, 4.231307e-01},
402  {8.924821e+11, 4.229807e-01},
403  {8.951803e+11, 4.209566e-01},
404  {8.981782e+11, 4.162334e-01},
405  {9.011761e+11, 4.042382e-01},
406  {9.041741e+11, 4.001899e-01},
407  {9.068722e+11, 3.906687e-01},
408  {9.098701e+11, 3.858706e-01},
409  {9.128680e+11, 3.914184e-01},
410  {9.158660e+11, 4.032636e-01},
411  {9.188639e+11, 4.076119e-01},
412  {9.215620e+11, 4.218562e-01},
413  {9.245599e+11, 4.157836e-01},
414  {9.275579e+11, 4.079592e-01},
415  {9.305558e+11, 3.843131e-01},
416  {9.335537e+11, 3.642828e-01},
417  {9.362518e+11, 3.455978e-01},
418  {9.392498e+11, 3.411915e-01},
419  {9.422477e+11, 3.424765e-01},
420  {9.452456e+11, 3.514910e-01},
421  {9.479438e+11, 3.550670e-01},
422  {9.509417e+11, 3.577633e-01},
423  {9.539396e+11, 3.623654e-01},
424  {9.569375e+11, 3.565730e-01},
425  {9.599355e+11, 3.504580e-01},
426  {9.626336e+11, 3.489034e-01},
427  {9.656315e+11, 3.432031e-01},
428  {9.686294e+11, 3.329129e-01},
429  {9.716274e+11, 3.206344e-01},
430  {9.743255e+11, 3.246320e-01},
431  {9.773234e+11, 3.198354e-01},
432  {9.803213e+11, 3.191768e-01},
433  {9.833193e+11, 3.210894e-01},
434  {9.863172e+11, 3.238847e-01},
435  {9.890153e+11, 3.213156e-01},
436  {9.920132e+11, 3.106108e-01},
437  {9.950112e+11, 3.039082e-01},
438  {9.980091e+11, 2.945527e-01},
439  {1.001007e+12, 2.808325e-01},
440  {1.003705e+12, 2.671690e-01},
441  {1.006703e+12, 2.517009e-01},
442  {1.009701e+12, 2.286804e-01},
443  {1.012699e+12, 1.954161e-01},
444  {1.015397e+12, 1.614493e-01},
445  {1.018395e+12, 1.301406e-01},
446  {1.021393e+12, 1.038095e-01},
447  {1.024391e+12, 8.270192e-02},
448  {1.027389e+12, 6.741234e-02},
449  {1.030087e+12, 5.732167e-02},
450  {1.033085e+12, 4.929158e-02},
451  {1.036083e+12, 4.130312e-02},
452  {1.039081e+12, 3.463880e-02},
453  {1.042079e+12, 2.819033e-02},
454  {1.044777e+12, 2.335016e-02},
455  {1.047775e+12, 1.811908e-02},
456  {1.050773e+12, 1.633863e-02},
457  {1.053770e+12, 1.256146e-02},
458  {1.056469e+12, 1.047577e-02},
459  {1.059467e+12, 9.551904e-03},
460  {1.062464e+12, 8.438137e-03},
461  {1.065462e+12, 7.543218e-03},
462  {1.068460e+12, 6.966835e-03},
463  {1.071158e+12, 6.205355e-03},
464  {1.074156e+12, 5.593317e-03},
465  {1.077154e+12, 5.065830e-03},
466  {1.080152e+12, 4.525811e-03},
467  {1.083150e+12, 3.964608e-03},
468  {1.085848e+12, 3.482331e-03},
469  {1.088846e+12, 3.070218e-03},
470  {1.091844e+12, 2.678345e-03},
471  {1.094842e+12, 2.302080e-03},
472  {1.097540e+12, 2.010432e-03},
473  {1.100538e+12, 1.765819e-03},
474  {1.103536e+12, 1.531600e-03},
475  {1.106534e+12, 1.324607e-03},
476  {1.109532e+12, 1.133836e-03},
477  {1.112230e+12, 9.211749e-04},
478  {1.115228e+12, 7.403564e-04},
479  {1.118226e+12, 6.005857e-04},
480  {1.121224e+12, 4.741391e-04},
481  {1.124222e+12, 3.814859e-04},
482  {1.126920e+12, 3.106380e-04},
483  {1.129918e+12, 2.526412e-04},
484  {1.132916e+12, 1.997789e-04},
485  {1.135914e+12, 1.662938e-04},
486  {1.138612e+12, 1.341020e-04},
487  {1.141610e+12, 1.121883e-04},
488 };
489 
497  // {nu0, resp500}
498  {3.378661e+11, 1.152396e-04},
499  {3.408640e+11, 1.181795e-04},
500  {3.438619e+11, 1.284199e-04},
501  {3.468599e+11, 1.384172e-04},
502  {3.495580e+11, 1.632476e-04},
503  {3.525559e+11, 1.851311e-04},
504  {3.555539e+11, 2.152869e-04},
505  {3.585518e+11, 2.390951e-04},
506  {3.612499e+11, 2.433564e-04},
507  {3.642478e+11, 2.702321e-04},
508  {3.672458e+11, 2.758241e-04},
509  {3.702437e+11, 3.037856e-04},
510  {3.732416e+11, 3.272337e-04},
511  {3.759397e+11, 3.625637e-04},
512  {3.789377e+11, 3.713014e-04},
513  {3.819356e+11, 4.131943e-04},
514  {3.849335e+11, 4.366220e-04},
515  {3.879314e+11, 5.188042e-04},
516  {3.906296e+11, 5.856516e-04},
517  {3.936275e+11, 6.152500e-04},
518  {3.966254e+11, 6.753472e-04},
519  {3.996233e+11, 8.077790e-04},
520  {4.023215e+11, 8.842694e-04},
521  {4.053194e+11, 9.420840e-04},
522  {4.083173e+11, 1.055578e-03},
523  {4.113153e+11, 1.169510e-03},
524  {4.143132e+11, 1.218659e-03},
525  {4.170113e+11, 1.416993e-03},
526  {4.200092e+11, 1.539650e-03},
527  {4.230072e+11, 1.800817e-03},
528  {4.260051e+11, 1.924076e-03},
529  {4.290030e+11, 2.148664e-03},
530  {4.317011e+11, 2.452447e-03},
531  {4.346991e+11, 2.910644e-03},
532  {4.376970e+11, 3.392583e-03},
533  {4.406949e+11, 3.839616e-03},
534  {4.433930e+11, 4.380467e-03},
535  {4.463910e+11, 4.900885e-03},
536  {4.493889e+11, 5.302535e-03},
537  {4.523868e+11, 6.235960e-03},
538  {4.553847e+11, 7.241960e-03},
539  {4.580829e+11, 8.000044e-03},
540  {4.610808e+11, 9.604309e-03},
541  {4.640787e+11, 1.187934e-02},
542  {4.670766e+11, 1.460389e-02},
543  {4.700746e+11, 1.767086e-02},
544  {4.727727e+11, 2.174774e-02},
545  {4.757706e+11, 2.731719e-02},
546  {4.787686e+11, 3.538345e-02},
547  {4.817665e+11, 4.576044e-02},
548  {4.844646e+11, 6.312938e-02},
549  {4.874625e+11, 9.557154e-02},
550  {4.904605e+11, 1.727868e-01},
551  {4.934584e+11, 4.017021e-01},
552  {4.964563e+11, 4.049896e-01},
553  {4.991544e+11, 4.020121e-01},
554  {5.021524e+11, 4.014753e-01},
555  {5.051503e+11, 4.152664e-01},
556  {5.081482e+11, 4.015217e-01},
557  {5.111461e+11, 3.863303e-01},
558  {5.138443e+11, 3.911615e-01},
559  {5.168422e+11, 3.872034e-01},
560  {5.198401e+11, 3.983367e-01},
561  {5.228380e+11, 4.097184e-01},
562  {5.255362e+11, 4.145183e-01},
563  {5.285341e+11, 4.096134e-01},
564  {5.315320e+11, 4.071538e-01},
565  {5.345300e+11, 3.798043e-01},
566  {5.375279e+11, 3.689333e-01},
567  {5.402260e+11, 3.816051e-01},
568  {5.432239e+11, 3.747360e-01},
569  {5.462219e+11, 3.799160e-01},
570  {5.492198e+11, 3.941980e-01},
571  {5.519179e+11, 3.969849e-01},
572  {5.549158e+11, 4.070332e-01},
573  {5.579138e+11, 4.030113e-01},
574  {5.609117e+11, 3.990638e-01},
575  {5.639096e+11, 4.061032e-01},
576  {5.666077e+11, 3.865783e-01},
577  {5.696057e+11, 3.770488e-01},
578  {5.726036e+11, 3.756246e-01},
579  {5.756015e+11, 3.888175e-01},
580  {5.785994e+11, 3.876931e-01},
581  {5.812976e+11, 3.832705e-01},
582  {5.842955e+11, 3.938398e-01},
583  {5.872934e+11, 3.873933e-01},
584  {5.902913e+11, 3.813965e-01},
585  {5.929895e+11, 3.909685e-01},
586  {5.959874e+11, 3.973410e-01},
587  {5.989853e+11, 3.989903e-01},
588  {6.019833e+11, 3.984656e-01},
589  {6.049812e+11, 4.027388e-01},
590  {6.076793e+11, 4.043132e-01},
591  {6.106772e+11, 4.122600e-01},
592  {6.136752e+11, 4.115853e-01},
593  {6.166731e+11, 4.047596e-01},
594  {6.196710e+11, 3.933566e-01},
595  {6.223691e+11, 3.830425e-01},
596  {6.253671e+11, 3.912327e-01},
597  {6.283650e+11, 3.942540e-01},
598  {6.313629e+11, 4.120595e-01},
599  {6.340610e+11, 4.159883e-01},
600  {6.370590e+11, 4.310556e-01},
601  {6.400569e+11, 4.375913e-01},
602  {6.430548e+11, 4.463269e-01},
603  {6.460527e+11, 4.322028e-01},
604  {6.487509e+11, 4.291626e-01},
605  {6.517488e+11, 4.161289e-01},
606  {6.547467e+11, 4.036237e-01},
607  {6.577447e+11, 4.066202e-01},
608  {6.607426e+11, 4.114061e-01},
609  {6.634407e+11, 4.130316e-01},
610  {6.664386e+11, 4.186382e-01},
611  {6.694366e+11, 4.397867e-01},
612  {6.724345e+11, 4.394962e-01},
613  {6.751326e+11, 4.428877e-01},
614  {6.781305e+11, 4.409197e-01},
615  {6.811285e+11, 4.334893e-01},
616  {6.841264e+11, 4.247976e-01},
617  {6.871243e+11, 4.263770e-01},
618  {6.898224e+11, 4.354391e-01},
619  {6.928204e+11, 4.309237e-01},
620  {6.958183e+11, 4.308288e-01},
621  {6.988162e+11, 4.209850e-01},
622  {7.018141e+11, 4.145988e-01},
623  {7.045123e+11, 4.026928e-01},
624  {7.075102e+11, 3.940691e-01},
625  {7.105081e+11, 3.823944e-01},
626  {7.135061e+11, 3.711300e-01},
627  {7.162042e+11, 3.624220e-01},
628  {7.192021e+11, 3.503130e-01},
629  {7.222000e+11, 3.182011e-01},
630  {7.251980e+11, 2.824519e-01},
631  {7.281959e+11, 2.417210e-01},
632  {7.308940e+11, 1.912909e-01},
633  {7.338919e+11, 1.485214e-01},
634  {7.368899e+11, 1.126421e-01},
635  {7.398878e+11, 8.847162e-02},
636  {7.425859e+11, 6.941678e-02},
637  {7.455838e+11, 5.377674e-02},
638  {7.485818e+11, 4.211782e-02},
639  {7.515797e+11, 3.294597e-02},
640  {7.545776e+11, 2.529130e-02},
641  {7.572757e+11, 1.957721e-02},
642  {7.602737e+11, 1.509525e-02},
643  {7.632716e+11, 1.142713e-02},
644  {7.662695e+11, 8.472993e-03},
645  {7.692674e+11, 6.437254e-03},
646  {7.719656e+11, 5.122231e-03},
647  {7.749635e+11, 4.029038e-03},
648  {7.779614e+11, 3.145234e-03},
649  {7.809594e+11, 2.566684e-03},
650  {7.836575e+11, 2.081271e-03},
651  {7.866554e+11, 1.581703e-03},
652  {7.896533e+11, 1.358924e-03},
653  {7.926513e+11, 1.120979e-03},
654  {7.956492e+11, 9.590680e-04},
655  {7.983473e+11, 6.895932e-04},
656  {8.013452e+11, 5.635714e-04},
657  {8.043432e+11, 5.225258e-04},
658  {8.073411e+11, 4.744991e-04},
659  {8.103390e+11, 4.831183e-04},
660  {8.130371e+11, 4.299104e-04},
661  {8.160351e+11, 4.299673e-04},
662  {8.190330e+11, 4.297545e-04},
663  {8.220309e+11, 4.590609e-04},
664  {8.247291e+11, 3.919290e-04},
665  {8.277270e+11, 3.414828e-04},
666  {8.307249e+11, 2.940791e-04},
667  {8.337228e+11, 2.751976e-04},
668  {8.367208e+11, 3.250078e-04},
669  {8.394189e+11, 3.350167e-04},
670  {8.424168e+11, 2.670179e-04},
671  {8.454147e+11, 2.175510e-04},
672  {8.484127e+11, 1.947723e-04},
673  {8.514106e+11, 1.445354e-04},
674 };
675 
676 
678 {
679  const char *const fn = "SPIRE::init";
680 
681  // Band response table.
682  switch (band_) {
683  case 250: resp_ = band250; break;
684  case 350: resp_ = band350; break;
685  case 500: resp_ = band500; break;
686  default:
687  MU_EXCEPTION(fn, "SPIRE has no %lu micron band", band_);
688  break;
689  }
690 
691  // Band center.
692  center_ = 1e4*c_light/band_;
693 
694  // Extended source adjustment.
695  if (extend_) {
696  auto inu0 = 1/center_;
697  for (auto &entry: resp_) { entry.second *= pow(entry.first*inu0, -1.7); }
698  }
699 
700  // Required post-initialization.
701  Detector::init();
702 }
703 
704 } // namespace manticore
double center_
Effective band center (Hz).
Definition: Detector.h:115
static tableType band500
Response table for the 500 micron band.
Definition: SPIRE.h:32
virtual void init()
Initializes detector characteristics.
Definition: Detector.cc:31
Package namespace.
Definition: Detector.cc:13
std::vector< std::pair< double, double > > tableType
Detector response table type.
Definition: Detector.h:101
constexpr double c_light
Speed of light (cm/s).
Definition: manticore.h:20
unsigned band_
Fiducial detector band (microns).
Definition: SPIRE.h:36
MathUtils package.
Definition: CommandLine.cc:10
#define MU_EXCEPTION(src, msg,...)
Throws mutils::Exception using uniform messaging.
Definition: Exception.h:90
bool extend_
Default to extended (else point) source observation.
Definition: Detector.h:113
static tableType band250
Response table for the 250 micron band.
Definition: SPIRE.h:32
virtual void init()
Initializes detector characteristics.
Definition: SPIRE.cc:677
static tableType band350
Response table for the 350 micron band.
Definition: SPIRE.h:32
tableType resp_
Spectral response table.
Definition: Detector.h:110