File: appendixb.rst

package info (click to toggle)
pysynphot 2.0.0%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 36,188 kB
  • sloc: python: 80,424; csh: 349; makefile: 223; ansic: 94
file content (1468 lines) | stat: -rw-r--r-- 67,796 bytes parent folder | download | duplicates (3)
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
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
.. _pysynphot-appendixb:

****************************
Appendix B: OBSMODE Keywords
****************************

In this section, we describe the keywords available for
:ref:`pysynphot-obsmode-bandpass`. **pysynphot** supports
:ref:`science instruments currently installed on HST <pysynphot-appendixb-inflight>`
as of Servicing Mission 4 (SM4) performed in May 2009,
:ref:`legacy HST instruments <pysynphot-appendixb-legacy>`, and
:ref:`non-HST filter systems <pysynphot-appendixb-nonhst>`.
:ref:`Cross-instrument keywords <pysynphot-appendixb-special-keywords>` are
also listed.

In all the following tables, the |mjd_par| keyword is used to account for
time-dependent sensitivity, while the ADC (Analog-to-Digital Converter) gain
keyword is used to convert flux unit from electrons to data number (DN).
The keywords are also further explained in the
following sections. More instrument-specific details
can be obtained from their respective Instrument Handbooks.

The complete list of allowed component names that represent the
telescope (:ref:`pysynphot-ota`), Corrective Optics Space Telescope Axial
Replacement (:ref:`pysynphot-costar`), and science instruments is as tabulated
below:

+-----------+-----------------------------------------------------------------+
|Description|Keywords                                                         |
+===========+=================================================================+
|Telescope  |ota noota                                                        |
+-----------+-----------------------------------------------------------------+
|COSTAR     |costar nocostar                                                  |
+-----------+-----------------------------------------------------------------+
|Instrument |acs cos fgs foc fos hrs hsp nicmos pc stis wf wfc wfc3 wfpc wfpc2|
+-----------+-----------------------------------------------------------------+

As of September 1993, the default modes for the telescope and COSTAR components
are ``ota`` and ``nocostar``, respectively. Soon after COSTAR was installed in
the telescope, the default mode was changed to ``costar`` for original
instruments. Once the second-generation instruments were installed, with their
built-in optical corrections, the default mode for ``costar`` or ``nocostar``
became instrument-specific. Note that for the :ref:`pysynphot-appendixb-wfpc1`
instrument, the names ``wf``, ``wfc``, and ``wfpc`` are all equivalent and
correspond to the Wide Field Camera.

.. |acs_ramp| replace:: :ref:`Ramp filter <pysynphot_acs_parameterized_ramp>`
.. |aper_par| replace:: :ref:`EE radius <pysynphot-parameterized-aper>`
.. |cont_par| replace:: :ref:`Decontamination <pysynphot-parameterized-contamination>`
.. |mjd_par| replace:: :ref:`pysynphot-parameterized-mjd`
.. |nic_therm| replace:: :ref:`Thermal component <pysynphot-parameterized-temperature>`
.. |wfc3_bkg| replace:: :ref:`Background calculation <pysynphot-parameterized-temperature>`
.. |wfc3_qyc| replace:: :ref:`Quantum yield correction <pysynphot-wfc3-qyc>`
.. |wfpc2_lrf| replace:: :ref:`lrf# <pysynphot-wfpc2-ramp>`
.. |wfpc2_quad| replace:: :ref:`fquvn fquvn33 fqch4n fqch4n33 fqch4n15 fqch4p15 polq polq_par polq_perp polqn33 polqn18 polqp15 <pysynphot-wfpc2-quad>`


.. _pysynphot-appendixb-inflight:

In-Flight Instruments
=====================

This section contains science instruments that are currently installed on HST.


.. _pysynphot-appendixb-acs:

ACS
---

.. note:: HRC is currently not operational.

The ACS keywords consist of a list of detectors, filters,
:ref:`extraction apertures <pysynphot-parameterized-aper>`, and
|mjd_par| specifications. For example:

>>> bp = S.ObsBandpass('acs,wfc1,f555w')

+---------------+-----------------------------------------------------------------+
|Description    |Keywords                                                         |
+===============+=================================================================+
|Detector       |hrc sbc wfc1 wfc2                                                |
+-----------+---+-----------------------------------------------------------------+
|Filter     |HRC|f220w f250w f330w f344n f435w f475w f502n f550m f555w f606w f625w|
|           |   |f658n f660n f775w f814w f850lp f892n pol_uv pol_v                |
|           +---+-----------------------------------------------------------------+
|           |WFC|f435w f475w f502n f550m f555w f606w f625w f658n f660n f775w f814w|
|           |   |f850lp f892n pol_uv pol_v                                        |
|           +---+-----------------------------------------------------------------+
|           |SBC|f115lp f125lp f140lp f150lp f165lp f122m                         |
+-----------+---+-----------------------------------------------------------------+
||acs_ramp| |HRC|fr388n fr459m fr505n fr656n fr914m                               |
|           +---+-----------------------------------------------------------------+
|           |WFC|fr1016n fr388n fr423n fr459m fr462n fr505n fr551n fr601n fr647m  |
|           |   |fr656n fr716n fr782n fr853n fr914m fr931n                        |
+-----------+---+-----------------------------------------------------------------+
|Disperser  |HRC|g800l pr200l                                                     |
|           +---+-----------------------------------------------------------------+
|           |WFC|g800l                                                            |
|           +---+-----------------------------------------------------------------+
|           |SBC|pr110l pr130l                                                    |
+-----------+---+-----------------------------------------------------------------+
||aper_par|     |aper#0.0 aper#0.1 aper#0.2 aper#0.3 aper#0.4 aper#0.5 aper#0.6   |
|               |aper#0.8 aper#1.0 aper#1.5 aper#2.0 aper#4.0                     |
+---------------+-----------------------------------------------------------------+
||mjd_par|      |mjd#                                                             |
+---------------+-----------------------------------------------------------------+
|Coronographic  |coron                                                            |
|(HRC only)     |                                                                 |
+---------------+-----------------------------------------------------------------+


.. _pysynphot_acs_parameterized_ramp:

Ramp Filter
^^^^^^^^^^^

The WFC detector has 15 ramp filters available for use, while the HRC has 6.
To use a ramp filter in simulations, use the keyword syntax
``filtername#cenwave``, where ``filtername`` is the name of the ramp filter
and ``cenwave`` the desired central wavelength in Angstroms.
Also see :ref:`pysynphot-parameterized` for more information. For example:

>>> bp = S.ObsBandpass('acs,wfc1,fr388n#3880')


.. _pysynphot-appendixb-cos:

COS
---

The COS keywords consist of a list of detectors, apertures,
mirrors, gratings, central wavelengths, and |mjd_par| specifications.

FUV spectral simulations are performed by specifying one of the FUV gratings
along with a central wavelength. NUV spectral simulations are
performed by specifying one of the NUV gratings along with a
central wavelength. In both cases, only first-order light is
included in the calculation, and the resulting spectrum will
include all three stripes on the detector.

Imaging simulations are performed by specifying one of the mirrors
(``mirrorb`` for bright objects) with the NUV detector.

Either the Primary Science Aperture (``psa``) or the Bright Object
Aperture (``boa``) may be specified with any simulation; the Primary
Science Aperture will be included by default if neither is specified.

For example:

>>> bp = S.ObsBandpass('cos,nuv,g185m,c1786')

+----------------+------------------------------------+
|Description     |Keywords                            |
+================+====================================+
|Detector        |fuv nuv                             |
+----------------+------------------------------------+
|Aperture        |boa psa                             |
+----------------+------------------------------------+
|Mirror          |mirrora mirrorb                     |
+----------+-----+------------------------------------+
|Grating   |FUV  |g130m g140l g160m                   |
|          +-----+------------------------------------+
|          |NUV  |g185m g225m g230l g285m             |
+----------+-----+------------------------------------+
|Central   |g130m|c1291 c1300 c1309 c1318 c1327       |
|wavelength+-----+------------------------------------+
|          |g140l|c1105 c1230                         |
|          +-----+------------------------------------+
|          |g160m|c1577 c1589 c1600 c1611 c1623       |
|          +-----+------------------------------------+
|          |g185m|c1786 c1817 c1835 c1850 c1864 c1882 |
|          |     |c1890 c1900 c1913 c1921 c1941 c1953 |
|          |     |c1971 c1986 c2010                   |
|          +-----+------------------------------------+
|          |g225m|c2186 c2217 c2233 c2250 c2268 c2283 |
|          |     |c2306 c2325 c2339 c2357 c2373 c2390 |
|          |     |c2410                               |
|          +-----+------------------------------------+
|          |g230l|c2635 c2950 c3000 c3360             |
|          +-----+------------------------------------+
|          |g285m|c2617 c2637 c2657 c2676 c2695 c2709 |
|          |     |c2719 c2739 c2850 c2952 c2979 c2996 |
|          |     |c3018 c3035 c3057 c3074 c3094       |
+----------+-----+------------------------------------+
||mjd_par|       |mjd#                                |
+----------+-----+------------------------------------+


.. _pysynphot-appendixb-fgs:

FGS
---

The FGS instrument keywords consist of a list of filters plus a coordinate axis.
Some of the filter names are aliases for other filters. For instance,
``astroclear`` is an alias for F605W, ``clear`` for F583W, ``red`` for
F650W, and ``yellow`` for 550W. For example:

>>> bp = S.ObsBandpass('fgs,f583w,y')

+-----------+-----------------------------------------------------------+
|Description|Keywords                                                   |
+===========+===========================================================+
|Filter     |f550w (yellow) f583w (clear) f605w (astroclear) f650w (red)|
|           |nd5 pupil                                                  |
+-----------+-----------------------------------------------------------+
|Axis       |x y                                                        |
+-----------+-----------------------------------------------------------+


.. _pysynphot-appendixb-nicmos:

NICMOS
------

.. note:: NICMOS is currently not operational.

The NICMOS keywords consist of a list of filters, grisms, polarizers, and
detectors.

Both the filter name and camera number are required in the observation mode.
The detector keyword ``tacq`` is another way to specify Detector 2.
For thermal calculations, all component keywords, except the detector, may be
:ref:`parameterized for temperature <pysynphot-parameterized-temperature>`.

For example:

>>> bp = S.ObsBandpass('nicmos,1,f090m,dn,primary#270')

+-----------------+-----------------------------------------------------------------+
|Description      |Keywords                                                         |
+=================+=================================================================+
|Detector         |1 2 3 tacq                                                       |
+------+----------+-----------------------------------------------------------------+
|Filter|Detector 1|blank f090m f095n f097n f108n f110m f110w f113n f140w f145m f160w|
|      |          |f164n f165m f166n f170m f187n f190n pol0s pol120s pol240s        |
|      +----------+-----------------------------------------------------------------+
|      |Detector 2|blank f100w f160w f165m f171m f180m f187n f187w f190n f204m f205w|
|      +----------+f207m f212n f215n f216n f222m f237m pol0l pol120l pol240l        |
|      |tacq      |                                                                 |
|      +----------+-----------------------------------------------------------------+
|      |Detector 3|blank f108n f110w f113n f150w f160w f164n f166n f175w f187n f190n|
|      |          |f196n f200n f212n f215n f222m f240m g096 g141 g206               |
+------+----------+-----------------------------------------------------------------+
|ADC gain         |dn                                                               |
+-----------------+-----------------------------------------------------------------+
||nic_therm|      |spider primary pads hole sec edge bend1 reimag pupil image para1 |
|                 |para2 bend dewar cmask dqe                                       |
+-----------------+-----------------------------------------------------------------+


.. _pysynphot-appendixb-stis:

STIS
----

The STIS keywords consist of filters, apertures, gratings, central wavelengths,
and ADC gains.

In the STIS instrument, imaging mirrors and gratings are contained in the
Mode Select Mechanism (MSM) while filters and slits are in the aperture wheel.
Each grating or imaging mirror can be used with only one of the 3 STIS
detectors (CCD, NUVMAMA, or FUVMAMA); Therefore, specifying the grating
automatically determines the detector.

Each central wavelength is intended for use with a particular grating.
See the STIS Instrument Handbook for a listing of which central wavelengths are
allowed with each grating. The low order gratings (G140L, G230L, G230LB, G430L,
and G750L) have only one allowed setting; Thus, central wavelength should not be
specified for those. If no central wavelength is specified,
results will be calculated for the entire bandpass of the grating.

In principle, any filter or slit (aperture) could be used with any grating or
mirror, although in practice, certain combinations are restricted or forbidden.
Since the slits and filters are in the same wheel, it is not possible to use
both a slit and a filter at the same time. Some small slits also contain
built-in neutral density filters.
In addition to the aperture names listed, those used for HST Phase 2 proposals
are also acceptable. For example, the ``52X0.05`` is equivalent to ``s52x005``
listed in the table below.
If no aperture or filter is specified, the calculation is done for the "clear"
aperture.

The |mjd_par| keyword only applies to FUV and NUV MAMAs.
The ADC gain keyword only applies to CCD; It is used to convert results from
units of electrons to DN.

These ``obsmode`` strings are all equivalent, with 50CCD being the unobstructed
full-field aperture for the CCD detector:

>>> bp = S.ObsBandpass('stis,g430l')
>>> bp = S.ObsBandpass('stis,ccd,g430l')
>>> bp = S.ObsBandpass('stis,ccd,g430l,50ccd')

This assumes that an imaging mirror is being used because the detector name is
specified without a grating:

>>> bp = S.ObsBandpass('stis,ccd,f28x50lp')

This will calculate results for the entire bandpass of the instrument because
no central wavelength is specified:

>>> bp = S.ObsBandpass('stis,ccd,g430m,52X0.2')

This will only calculate results for the wavelength range covered by the
specified wavelength setting:

>>> bp = S.ObsBandpass('stis,ccd,g430m,52X0.2,c4451')

+-----------+---------------------------------------------------------------------+
|Description|Keywords                                                             |
+===========+=====================================================================+
|Filter     |25mama 50ccd 50coron f25ciii f25cn182 f25cn270 f25lya f25mgii f25nd3 |
|           |f25nd5 f25ndq1 f25ndq2 f25ndq3 f25ndq4 f25qtz f25srf2 f28x50lp       |
|           |f28x50oii f28x50oiii                                                 |
+-----------+---------------------------------------------------------------------+
|Aperture   |s005x29 s005x31nda s005x31ndb s009x29 s01x003 s01x006 s01x009 s01x02 |
|           |s02x005nd s02x006 s02x006fpa s02x006fpb s02x006fpc s02x006fpd        |
|           |s02x006fpe s02x009 s02x02 s02x02fpa s02x02fpb s02x02fpc s02x02fpd    |
|           |s02x02fpe s02x05 s02x29 s03x005nd s03x006 s03x009 s03x02 s05x05      |
|           |s10x006 s10x02 s2x2 s31x005nda s31x005ndb s31x005ndc s36x005n45      |
|           |s36x005p45 s36x06n45 s36x06p45 s52x005 s52x01 s52x02 s52x05 s52x2    |
|           |s6x006 s6x02 s6x05 s6x6                                              |
+-----------+---------------------------------------------------------------------+
|Grating    |e140h e140hb e140m e140mb e230h e230m g140l g140lb g140m g140mb g230l|
|           |g230lb g230m g230mb g430l g430m g750l g750m prism x140 x140m x230    |
|           |x230h                                                                |
+-----------+---------------------------------------------------------------------+
|Mirror     |acq ccd fuvmama nuvmama                                              |
+-----------+---------------------------------------------------------------------+
|Central    |all c1687 c1769 c1851 c1933 c2014 c2095 c2176 c2257 c2338 c2419 c2499|
|wavelength |c2579 c2659 c2739 c2818 c2898 c2977 c3055 c3134 i1884 i2600 i2800    |
|           |i2828 c1713 c1854 c1995 c2135 c2276 c2416 c2557 c2697 c2836 c2976    |
|           |c3115 i2794 c1978 c2707 i2124 i2269 i2415 i2561 c1763 c2013 c2263    |
|           |c2513 c2762 c3012 i1813 i1863 i1913 i1963 i2063 i2113 i2163 i2213    |
|           |i2313 i2363 i2413 i2463 i2563 i2613 i2663 i2713 i2812 i2862 i2912    |
|           |i2962 c3165 c3423 c3680 c3936 c4194 c4451 c4706 c4961 c5216 c5471    |
|           |i3305 i3843 i4781 i5093 c1173 c1222 c1272 c1321 c1371 c1420 c1470    |
|           |c1518 c1567 c1616 c1665 c1714 i1218 i1387 i1400 i1540 i1550 i1640    |
|           |c1425 c1234 c1416 c1598 i1271 i1307 i1343 i1380 i1453 i1489 i1526    |
|           |i1562 c7751 c8975 c10363 c10871 c5734 c6252 c6768 c7283 c7795        |
|           |c8311 c8825 c9336 c9851 i6094 i6581 i8561 i9286 i9806                |
+-----------+---------------------------------------------------------------------+
|ADC gain   |a2d1 a2d2 a2d3 a2d4                                                  |
+-----------+---------------------------------------------------------------------+
||mjd_par|  |mjd#                                                                 |
+-----------+---------------------------------------------------------------------+


.. _pysynphot-appendixb-wfc3:

WFC3
----

The WFC3 keywords consist of a list of detectors, filters, |mjd_par|, and
:ref:`extraction apertures <pysynphot-parameterized-aper>`
for each of its 2 channels (UVIS and IR), in addition to other special keyword,
as tabulated below. For example:

>>> bp = S.ObsBandpass('wfc3,uvis1,f218w')

+------------------------+-------------------------------------------------+
|Description             |Keywords                                         |
+========================+=================================================+
|Detector                |uvis1 uvis2 ir                                   |
+--------+---------------+-------------------------------------------------+
|Filter  |UVIS           |f200lp f218w f225w f275w f280n f300x f336w f343n |
|        |               |f350lp f373n f390m f390w f395n f410m f438w f467m |
|        |               |f469n f475w f475x f487n f502n f547m f555w f600lp |
|        |               |f606w f621m f625w f631n f645n f656n f657n f658n  |
|        |               |f665n f673n f680n f689m f763m f775w f814w f845m  |
|        |               |f850lp f953n fq232n fq243n fq378n fq387n fq422m  |
|        |               |fq436n fq437n fq492n fq508n fq575n fq619n fq634n |
|        |               |fq672n fq674n fq727n fq750n fq889n fq906n fq924n |
|        |               |fq937n                                           |
|        +---------------+-------------------------------------------------+
|        |IR             |f098m f105w f110w f125w f126n f127m f128n f130n  |
|        |               |f132n f139m f140w f153m f160w f164n f167n        |
+--------+---------------+-------------------------------------------------+
|Grism   |UVIS           |g280                                             |
|        +---------------+-------------------------------------------------+
|        |IR             |g102 g141                                        |
+--------+---------------+-------------------------------------------------+
|ADC gain                |dn                                               |
+------------------------+-------------------------------------------------+
||wfc3_qyc|              |qyc                                              |
+------------------------+-------------------------------------------------+
||wfc3_bkg|              |bkg                                              |
+------------------------+-------------------------------------------------+
||aper_par|              |aper#0.00 aper#0.10 aper#0.15 aper#0.20          |
|                        |aper#0.25a aper#0.30 aper#0.40 aper#0.50         |
|                        |aper#0.60 aper#0.80 aper#1.00 aper#1.50 aper#2.00|
+------------------------+-------------------------------------------------+
||mjd_par|               |mjd#                                             |
+------------------------+-------------------------------------------------+


.. _pysynphot-wfc3-qyc:

Quantum Yield Correction
^^^^^^^^^^^^^^^^^^^^^^^^

The ``qyc`` keyword is used to apply a wavelength-dependent
quantum yield correction.
At short wavelengths, the UVIS detector has a finite chance of
producing two elections for one incoming photon. By default,
**pysynphot** reports the count rate in electrons if the
``dn`` keyword is not specified, or data numbers otherwise.

However, the appropriate count rate for SNR calculations should be in
electrons with a correction for this quantum yield effect; That is,
users should specify the ``qyc`` keyword but not ``dn``. For example:

>>> bp = S.ObsBandpass('wfc3,uvis1,f218w,qyc')


.. _pysynphot-appendixb-legacy:

Legacy Instruments
==================

The instruments which had previously flown on HST but had been
replaced by more modern detectors are included here for completeness.


.. _pysynphot-appendixb-foc:

FOC
---

The FOC keywords consist of a list of detectors, filters, and
miscellaneous keywords. The ``f/48`` detector has 2 filter wheels and the
``f/96`` detector has 4. Some of the filters have aliases. For instance,
``fuvop`` is an alias for ``prism1``, ``nuvop`` for ``prism2``,
``fopcd`` for ``prism3``, ``g450m`` for F305LP,
``g225m`` for F220W, and ``g150m`` for F140W.
The miscellaneous keywords include the :ref:`pysynphot-costar` and
the occulting fingers. For example:

>>> bp = S.ObsBandpass('foc,costar,f/96,f410m')

+--------------+--------------------------------------------------+
|Description   |Keywords                                          |
+==============+==================================================+
|Detector      |f/48 f/96 f/288 spec                              |
+------+-------+--------------------------------------------------+
|f/48  |Wheel 1|f140w (g130m) f150w (g150m) f175w f195w f220w     |
|      |       |(g225m) f305lp (g450m) prism3 (fopcd) (grat-prism)|
|      +-------+--------------------------------------------------+
|      |Wheel 2|f130lp f180lp f275w f342w f430w prism1 (fuvop)    |
|      |       |prism2 (nuvop)                                    |
+------+-------+--------------------------------------------------+
|f/96  |Wheel 1|f600m f630m f2nd f4nd f6nd f8nd pol0 pol0_par     |
|      |       |pol0_per pol0_unp pol60 pol60_par pol60_per       |
|      |       |pol60_unp pol120 pol120_par pol120_per pol120_unp |
|      |       |prism1 (fuvop) prism2 (nuvop)                     |
|      +-------+--------------------------------------------------+
|      |Wheel 2|f140w f175w f220w f275w f320w f342w f370lp f430w  |
|      |       |f480lp f486n f501n                                |
|      +-------+--------------------------------------------------+
|      |Wheel 3|f120m f130m f140m f152m f165w f170m f190m f195w   |
|      |       |f210m f231m f1nd                                  |
|      +-------+--------------------------------------------------+
|      |Wheel 4|f130lp f253m f278m f307m f346m f372m f410m f437m  |
|      |       |f470m f502m f550m                                 |
+------+-------+--------------------------------------------------+
|Image |f/48   |x48n256 x48n256d x48n512 x48nlrg x48zlrg x48zrec  |
|Format+-------+--------------------------------------------------+
|      |f/96   |x96n128 x96n256 x96n512 x96nlrg x96z512 x96zlrg   |
+------+-------+--------------------------------------------------+
|Spectral Order|order1 order2 order3 order4                       |
+--------------+--------------------------------------------------+
|Occulting     |occ0p23 occ0p4 occ0p8                             |
|FIngers       |                                                  |
+--------------+--------------------------------------------------+
|Detector      |x48n256 x48n256d x48n512 x48nlrg x48zlrg x48zrec  |
|Format        |x96n128 x96n256 x96n512 x96z512 x96nlrg x96zlrg   |
+--------------+--------------------------------------------------+

Note that the spectroscopic capabilities, and hence the related
keywords ``spec``, ``order1``, ``order2``, ``order3``, and ``order4``,
are only available for the ``f/48`` camera. Furthermore, the ``occ0p23``
keyword is only available with the ``f/48`` camera, and the ``occ0p4`` and
``occ0p8`` keywords are only available with the ``f/96`` camera.

The ``x48*`` and ``x96*`` keywords are used to account for the known dependency
of DQE on the detector format (see the FOC Instrument Handbook for
more details). These keywords invoke throughput tables that contain
the (wavelength-independent) relative sensitivities for each format,
where the 512x512 format (``x48n512`` and ``x96n512``) is set to 1.0.
The associations between formats and keywords are listed below.

+------+-------+-------------+
|Camera|Keyword|Camera Format|
+======+=======+=============+
|f/96  |x96n128|128 x 128    |
|      +-------+-------------+
|      |x96n256|256 x 256    |
|      +-------+-------------+
|      |x96n512|512 x 512    |
|      +-------+-------------+
|      |x96z512|512z x 512   |
|      +-------+-------------+
|      |x96zlrg|512z x 1024  |
+------+-------+-------------+
|f/48  |x48n256|256 x 256    |
|      +-------+-------------+
|      |x48n512|512 x 512    |
|      +-------+-------------+
|      |x48zrec|256z x 1024  |
|      +-------+-------------+
|      |x48nlrg|512 x 1024   |
|      +-------+-------------+
|      |x48zlrg|512z x 1024  |
+------+-------+-------------+


.. _pysynphot-appendixb-fos:

FOS
---

The FOS keywords consist of a list of detectors, apertures, gratings, and
polarimeter waveplates and waveplate position angles.
:ref:`pysynphot-costar` keyword is also accepted. For example:

>>> bp = S.ObsBandpass('fos,costar,blue,g160l')

The waveplate keywords indicate whether Waveplate A or  B is being used and
the angle of the waveplate. The waveplate keyword syntax is ``POLpa-wp``,
where ``pa`` is the position angle in degrees, and ``wp`` is the A or B
waveplate:

>>> bp = S.ObsBandpass('fos,blue,g130h,pol135-a')

The ``upper`` and ``lower`` aperture keywords are only recognized when used
in conjunction with one of the paired apertures:

>>> bp = S.ObsBandpass('fos,blue,g130h,upper,1.0-pair')

The ``order0`` keyword is only available in conjunction with the ``g160l``
grating and the ``blue`` detector:

>>> bp = S.ObsBandpass('fos,blue,g160l,order0')

+-----------+--------------------------------------------------+
|Description|Keywords                                          |
+===========+==================================================+
|Detector   |blue red                                          |
+-----------+--------------------------------------------------+
|Aperture   |0.3 0.5 1.0 4.3 0.1-pair 0.25-pair 0.5-pair       |
|           |1.0-pair upper lower 0.25x2.0 0.7x2.0-bar 2.0-bar |
|           |blank failsafe                                    |
+-----------+--------------------------------------------------+
|Grating    |g130h g190h g270h g400h g570h g780h g160l g650l   |
|           |mirror prism order0                               |
+-----------+--------------------------------------------------+
|Waveplate  |pol0-a pol0-b pol22.5-a pol22.5-b pol45-a pol45-b |
|           |pol67.5-a pol67.5-b pol90-a pol90-b pol112.5-a    |
|           |pol112.5-b pol135-a pol135-b pol157.5-a pol157.5-b|
|           |pol180-a pol180-b pol202.5-a pol202.5-b pol235-a  |
|           |pol235-b pol257.5-a pol257.5-b pol270-a pol270-b  |
|           |pol292.5-a pol292.5-b pol315-a pol315-b pol337.5-a|
|           |pol337.5-b                                        |
+-----------+--------------------------------------------------+


.. _pysynphot-appendixb-ghrs:

GHRS
----

The GHRS keywords consist of a list of detectors, apertures, gratings
or mirrors, and Echelle mode orders. :ref:`pysynphot-costar` keyword
is also accepted. For example:

>>> bp = S.ObsBandpass('hrs,costar,lsa,g160m')

The Echelle mode orders are used with the keywords ``echa`` and ``echb``.
Orders 18 to 33 are valid with Echelle mode B, while orders 33 to 53 with
mode A. For example:

>>> bp = S.ObsBandpass('hrs,costar,lsa,echa,33')

+-----------+--------------------------------------------------+
|Description|Keywords                                          |
+===========+==================================================+
|Aperture   |lsa ssa                                           |
+-----------+--------------------------------------------------+
|Grating    |echa echb g140l g140m g160m g200m g270m           |
+-----------+--------------------------------------------------+
|Mirror     |a1 a2 n1 n2                                       |
+-----------+--------------------------------------------------+
|Echelle    |18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34|
|Order      |35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51|
|           |52 53 all                                         |
+-----------+--------------------------------------------------+


.. _pysynphot-appendixb-hsp:

HSP
---

The HSP keywords consist of a list of detectors, filters,
apertures, and beams. The beams refer to the two beams that
come out of the beam splitter. Not all apertures can be used
with all detectors; Refer to the HSP Instrument Handbook for
further information. The polarization detector also has angle
and type keywords. For example:

>>> bp = S.ObsBandpass('hsp,uv1,f220w,c')

+------------------+-------------------------------------------------+
|Description       |Keywords                                         |
+==================+=================================================+
|Detector          |pmt pol uv1 uv2 vis                              |
+------------------+-------------------------------------------------+
|Relay mirror      |norelay relay                                    |
+------------------+-------------------------------------------------+
|Aperture          |a b c d e f h j s t                              |
+------------------+-------------------------------------------------+
|Beam              |blue red                                         |
+------------+-----+-------------------------------------------------+
|Filter      |POL  |f160lp f216m f237m f277m f327m                   |
|            +-----+-------------------------------------------------+
|            |UV1  |f122m f135w f140lp f145m f152m f184w f218m f220w |
|            |     |f240w f248m f278n prism                          |
|            +-----+-------------------------------------------------+
|            |UV2  |f122m f140lp f145m f152m f160lp f179m f184w f218m|
|            |     |f248m f262m f278n f284m prism                    |
|            +-----+-------------------------------------------------+
|            |VIS  |f160lp f184w f240w f262m f355m f400lp f419n f450w|
|            |     |f551w f620w prism                                |
+------------+-----+-------------------------------------------------+
|Polarization|Angle|0 45 90 135                                      |
|            +-----+-------------------------------------------------+
|            |Type |ext ord par per                                  |
+------------+-----+-------------------------------------------------+


.. _pysynphot-appendixb-wfpc1:

WF/PC-1
-------

The WF/PC-1 keywords consist of a list of filters, detectors,
and miscellaneous keywords.
The ``cal`` keyword accounts for the flat-field correction.
The ``cont#`` keyword accounts for changes in sensitivity between
:ref:`decontamination <pysynphot-parameterized-contamination>` events.

WF/PC-1 has 12 independently positionable filter wheels,
each of which has 5 positions, including a "clear" position.
Detectors 1-4 correspond to the Wide Field Camera; They are only valid
when used in conjunction with the ``wf``, ``wfc``, or ``wfpc`` keywords.
Meanwhile, Detectors 5-8 correspond to the Planetary Camera;
They are only valid when used with the ``pc`` keyword.
If a detector number is not specified, the default detector for ``wf`` is 2,
and ``pc`` is 6.

For example:

>>> bp = S.ObsBandpass('wfpc,4,f194w,dn')

+---------------+-------------------------------+
|Decription     |Keywords                       |
+===============+===============================+
|Instrument     |wfpc wfc wf (all equivalent) pc|
+---------------+-------------------------------+
|Detector       |1 2 3 4 5 6 7 8                |
+--------+------+-------------------------------+
|Filter  |  1   |f673n f8nd g450 g800           |
|Wheel   +------+-------------------------------+
|        |  2   |f122m f336w f439w g200 g200m2  |
|        +------+-------------------------------+
|        |  3   |pol0 pol60 pol120 f1083n       |
|        +------+-------------------------------+
|        |  4   |f157w f194w f230w f284w        |
|        +------+-------------------------------+
|        |  5   |f569w f658n f675w f791w        |
|        +------+-------------------------------+
|        |  6   |f631n f656n f664n f702w        |
|        +------+-------------------------------+
|        |  7   |f375n f437n f502n f588n        |
|        +------+-------------------------------+
|        |  8   |f368m f413m f492m f622w        |
|        +------+-------------------------------+
|        |  9   |f547m f555w f648m f718m        |
|        +------+-------------------------------+
|        | 10   |f785lp f814w f875m f1042m      |
|        +------+-------------------------------+
|        | 11   |f128lp f469n f487n f517n       |
|        +------+-------------------------------+
|        | 12   |f606w f725lp f850lp f889n      |
+--------+------+-------------------------------+
|ADC gain       |dn                             |
+---------------+-------------------------------+
|Baum spot      |baum                           |
+---------------+-------------------------------+
||cont_par|     |cont#                          |
+---------------+-------------------------------+
|Flat-field     |cal                            |
+---------------+-------------------------------+


.. _pysynphot-appendixb-wfpc2:

WFPC2
-----

The WFPC2 keywords consist of a list of detectors, filters, ADC gain, and
miscellaneous keywords. The ``cal`` keyword accounts for the flat-field
response. Meanwhile, the ``cont#`` keyword accounts for changes in throughput
between :ref:`decontamination <pysynphot-parameterized-contamination>` events;
Due to the removal of WFPC2 during SM4, this time-dependent effect is only
valid for dates prior to SM4.

WFPC2 has 12 filter wheels, each of which has 5 positions, including the "clear"
position. Wheel 11 contains :ref:`quad filters <pysynphot-wfpc2-quad>`, while
Wheel 12 contains :ref:`linear ramp filters <pysynphot-wfpc2-ramp>`.
Detector 1 is the Planetary Camera. Meanwhile, Detectors 2-4 correspond to the
Wide Field Camera. If a detector is not specified, the default is Detector 4.

For example:

>>> bp = S.ObsBandpass('wfpc2,2,f450w,a2d7,cont#50180')

+---------------+------------------------------------------------------+
|Description    |Keywords                                              |
+===============+======================================================+
|Detector       |1 2 3 4                                               |
+----------+----+------------------------------------------------------+
|Filter    |  1 |f122m f157w f160bw f953n                              |
|Wheel     +----+------------------------------------------------------+
|          |  2 |f130lp f165lp f785lp f850lp                           |
|          +----+------------------------------------------------------+
|          |  3 |f336w f410m f467m f547m                               |
|          +----+------------------------------------------------------+
|          |  4 |f439w f569w f675w f791w                               |
|          +----+------------------------------------------------------+
|          |  5 |f343n f375n f390n f437n                               |
|          +----+------------------------------------------------------+
|          |  6 |f469n f487n f502n f588n                               |
|          +----+------------------------------------------------------+
|          |  7 |f631n f656n f658n f673n                               |
|          +----+------------------------------------------------------+
|          |  8 |f170w f185w f218w f255w                               |
|          +----+------------------------------------------------------+
|          |  9 |f300w f380w f555w f622w                               |
|          +----+------------------------------------------------------+
|          | 10 |f450w f606w f702w f814w                               |
|          +----+------------------------------------------------------+
|          | 11 |f1042m |wfpc2_quad|                                   |
|          +----+------------------------------------------------------+
|          | 12 ||wfpc2_lrf|                                           |
+----------+----+------------------------------------------------------+
|ADC gain       |a2d7 a2d15                                            |
+---------------+------------------------------------------------------+
||cont_par|     |cont#                                                 |
+---------------+------------------------------------------------------+
|Flat-field     |cal                                                   |
+---------------+------------------------------------------------------+


.. _pysynphot-wfpc2-quad:

Quad Filter
^^^^^^^^^^^

Filter Wheel 11 contains 3 specialized quadrant (quad) filters.
Each quadrant corresponds to a facet of the pyramid, and therefore to a
distinct camera relay:

* FQUVN contains 4 narrow-band, redshifted [O II] filters
* FQCH4N contains 4 methane (CH4) band filters
* POLQ contains 4 polarizing elements

For FQUVN and FQCH4N filters, the :ref:`graph table <pysynphot-graph>` is
constructed such that distinct throughput values are automatically selected
for a given quadrant based on the selected detector. For POLQ filter, it can
also be specified by the direction its polarization; i.e., ``polq_perp`` for
perpendicular polarization, and ``polq_par`` for parallel.

The quad filters were designed to map onto a 4-faceted WFC configuration.
However, in the final design of the instrument, with WF Quadrant 1 replaced
by the PC, it is necessary to rotate the quad filters as follow
(see the WFPC2 Instrument Handbook for more details):

* ``fquvn33``, ``fqch4n33``, and ``polqn33`` represent the respective filters
  rotated by :math:`-33^{\circ}` in order to bring Filter Quadrant 1 into the
  WF2 and WF3 relays
* ``fqch4p15`` and ``fqch4n15`` represent FQCH4N partially rotated by
  :math:`\pm15^{\circ}` in order to bring 2 of its quadrants into the PC relay
* ``polqp15`` and ``polqn18`` represent POLQ partially rotated by
  :math:`+15^{\circ}` and :math:`-18^{\circ}`, respectively, in order to allow
  observations with different polarization angles

The nominal positions are represented as ``fquvn``, ``fqch4n``, and ``polq``
keywords. For example:

>>> bp = S.ObsBandpass('wfpc2,2,fqch4n')


.. _pysynphot-wfpc2-ramp:

Ramp Filter
^^^^^^^^^^^

.. warning::

    This is currently unsupported by **pysynphot** (see
    `Ticket 218 <https://aeon.stsci.edu/ssb/trac/astrolib/ticket/218>`_).
    However, flux calibration for these ramp filters can still be done using
    ``PHOT*`` keywords from image headers.

Filter Wheel 12 contains 4 linearly variable narrow-band ramp filters,
which together cover a total wavelength range of 3700 to 9800 Angstroms.
The FWHM of the throughput at a given wavelength is typically about 1% of
the central wavelength. To use a WFPC2 ramp filter in simulations, use the
keyword syntax ``lrf#cenwave``, where ``cenwave`` is the desired central
wavelength in Angstroms.

The example below is given in IRAF STSDAS SYNPHOT command::

  synphot> bandpar wfpc2,3,lrf#4861


.. _pysynphot-appendixb-special-keywords:

Special Keywords
================

This section contains special keywords that apply to multiple instruments.


.. _pysynphot-ota:

OTA
---

The HST OTA transmissivity is included by default in the calculation of
all HST-related observation modes. It can be included or excluded explicitly by
adding the keywords ``ota`` or ``noota``, respectively; For example:

>>> bp = S.ObsBandpass('stis,ccd,f25srf2,noota')


.. _pysynphot-costar:

COSTAR
------

An observation mode that involves a first-generation instrument
(:ref:`pysynphot-appendixb-foc`, :ref:`pysynphot-appendixb-fos`, or
:ref:`pysynphot-appendixb-ghrs`) also automatically accounts for the effects of
COSTAR on its wavelength-dependent sensitivity. This includes the product of the
reflectivity curves for each pair of the COSTAR mirrors for each of these
instruments, as well as the effects on instrument throughput and
sensitivity due to the improved point-spread function that is achieved
with COSTAR.

Like the :ref:`pysynphot-ota`, the COSTAR effects on passbands and
count rates are included by default for these instruments when using versions
of the HST graph table created on or after February 24, 1995. In earlier
versions of the graph table, ``nocostar`` is the default. To explicitly include
or exclude COSTAR, use the keywords ``costar`` and ``nocostar``, respectively,
anywhere within your observation mode string; For example:

>>> bp = S.ObsBandpass('fos,red,4.3,g270h,costar')

All current HST instruments (except :ref:`pysynphot-appendixb-fgs`) have
built-in corrective optics to compensate for the spherical aberration of the
primary mirror. It is not necessary to explicitly exclude COSTAR for the current
generation instruments, as it is excluded by default. Inclusion of COSTAR for
these instruments are not allowed.


.. _pysynphot-parameterized-mjd:

MJD
---

In the case of :ref:`pysynphot-appendixb-acs`, :ref:`pysynphot-appendixb-cos`,
:ref:`pysynphot-appendixb-stis`, and :ref:`pysynphot-appendixb-wfc3`,
the ``mjd`` keyword is used to handle time-dependent sensitivity of certain
detectors. To use this capability in simulations, include ``mjd#ddddd`` in the
``obsmode`` string, where ``ddddd`` is the desired Modified Julian Date (MJD)
value, which could be an integer or a floating point.

**pysynphot** interpolates between the dates for which data exist in the table
to arrive at an estimate of the throughput on the requested date
(see :ref:`pysynphot-parameterized`). For example:

>>> bp = S.ObsBandpass('acs,wfc1,f555w,mjd#49486')

If not specified, the default is to use
the latest set of throughput values in the ``THROUGHPUT`` column without any
interpolation or extrapolation.
This default column is expected to be updated by the relevant instrument team
whenever significant changes to the current trend are identified, such that the
throughput should not differ by more than 2% from the one obtained by using the
current date.


.. _pysynphot-parameterized-aper:

Encircled Energy
----------------

For :ref:`pysynphot-appendixb-acs` and :ref:`pysynphot-appendixb-wfc3`,
the ``aper`` keyword is used to specify a circular aperture, given by its
radius in arcseconds, to calculate the source counts within.
If no aperture is given, calculations are done for an infinite aperture, which
is also 5.5 arcsec or larger for ACS, and 2 arcsec or larger for WFC3.

This enables **pysynphot** to be more flexible and accurate, particularly for
cases where red targets are observed at long wavelengths.
At wavelengths greater than 7500 Angstroms (for ACS/HRC) and about
9000 Angstroms (for ACS/WFC), the observations are affected by a
red halo due to light scattered off the CCD substrate. An increasing
fraction of the light as a function of wavelength is scattered
from the center of the PSF into the wings. This problem affects
particularly the very broad *z*-band F850LP filter, for which the
encircled energy (EE) depends on the underlying spectral energy
distribution the most.

Supported apertures are instrument-dependent, as listed below.
Arbitrary aperture sizes are permitted, but not recommended.
This is because **pysynphot** only provides a linear interpolation between
supported apertures (see :ref:`pysynphot-parameterized`), which is a poor
approximation, especially at small apertures.

For ACS, the following apertures are supported:

* every 0.1 arcsec between 0 and 0.6 arcsec
* 0.8 arcsec
* 1.0 arcsec
* 1.5 arcsec
* 2.0 arcsec
* 4.0 arcsec

For WFC3, the following apertures are supported:

* every 0.05 arcsec between 0.1 and 0.3 arcsec
* every 0.1 arcsec between 0.3 and 0.6 arcsec
* 0.8 arcsec
* 1.0 arcsec
* 1.5 arcsec
* 2.0 arcsec

To use this capability in simulations, include ``aper#value`` in the ``obsmode``
string, where ``value`` is the radius in arcseconds. When "aper#0" is specified,
the user will obtain the number of counts in the brightest pixel (i.e., the
peak counts of the source centered at that pixel). For example:

>>> bp = S.ObsBandpass('acs,wfc1,f850lp,aper#0.2')


.. _pysynphot-parameterized-temperature:

Temperature
-----------

For :ref:`pysynphot-appendixb-nicmos` and :ref:`pysynphot-appendixb-wfc3`
IR detectors, :ref:`thermal background <pysynphot-command-therm>`
can be calculated by **pysynphot**. If no temperature is specified, the default
value for each component is used (see :ref:`pysynphot_thermal_em` and
:ref:`pysynphot-parameterized`).

For WFC3, the calculation can only be done at the default temperature
(not yet parameterized). For observation modes using a grism, the ``bkg``
keyword is used to perform throughput and emission calculations pertaining to
the associated background signal. This is because in grism observations,
a given detector pixel will receive source signal from only a small wavelength
interval of the dispersed source spectrum, but it will receive background
signal from the entire bandpass of the grism. Therefore, a special throughput
table is used to correctly compute the detected signal from a background
spectrum, which gives the transmission of the grism over its entire bandpass.
The ``bkg`` keyword cannot be used with non-grism observations. For example:

>>> bp = S.ObsBandpass('wfc3,ir,g102,bkg')

For NICMOS, all keywords except the detector are parameterized for
temperature. This includes OTA components that are opaque but thermally
emitting. Most of the its optical elements (``reimag``, ``pupil``, ``image``,
``para1``, ``para2``, ``bend``, ``dewar``, and ``cmask``) are contained in the
dewar, and are therefore at the same temperature. However, **pysynphot** does
not enforce this, so the user must specify any non-default temperature for each
component individually. For example, to specify a primary mirror temperature of
290 K and then calculate the thermal background:

>>> bp = S.ObsBandpass('nicmos,3,f222m,primary#290.0')
>>> bp.thermback()
82.206182481038724


.. _pysynphot-parameterized-contamination:

Contamination
-------------

The ``cont#`` keyword for :ref:`pysynphot-appendixb-wfpc1` and
:ref:`pysynphot-appendixb-wfpc2` references the Modified Julian Date,
which is used to account for the gradual decline in throughput between
decontamination events, as well as for the sudden increase in throughput
immediately after a decontamination.

For WF/PC-1, data exists for dates between May 8, 1991 (MJD 48384) and
December 8, 1993 (MJD 49329), non-inclusive, in the intervals of 20-30 days.
For WFPC2, data currently exists from December 26, 1993 (MJD 49347) until SM4,
in intervals of approximately 30 days.

**pysynphot** interpolates between the dates for which data exist in the table
to arrive at an estimate of the throughput on the requested date
(see :ref:`pysynphot-parameterized`). For example:

>>> bp = S.ObsBandpass('wfpc2,3,f555w,cont#49800')


.. _pysynphot-appendixb-nonhst:

Non-HST Filter Systems
======================

.. |nonhst_cousins| replace:: :ref:`cousins <pysynphot-nonhst-cousins>`
.. |nonhst_cousins2| replace:: :ref:`Cousins <pysynphot-nonhst-cousins>`
.. |nonhst_galex| replace:: :ref:`galex <pysynphot-nonhst-galex>`
.. |nonhst_johnson| replace:: :ref:`johnson <pysynphot-nonhst-johnson>`
.. |nonhst_johnson2| replace:: :ref:`Johnson <pysynphot-nonhst-johnson>`
.. |nonhst_landolt| replace:: :ref:`landolt <pysynphot-nonhst-landolt>`
.. |nonhst_landolt2| replace:: :ref:`Landolt <pysynphot-nonhst-landolt>`
.. |nonhst_sdss| replace:: :ref:`sdss <pysynphot-nonhst-sdss>`
.. |nonhst_stromgren| replace:: :ref:`stromgren <pysynphot-nonhst-stromgren>`
.. |nonhst_stromgren2| replace:: :ref:`Stromgren <pysynphot-nonhst-stromgren>`

In addition to the HST instruments, filters, and gratings, the
:ref:`graph table <pysynphot-graph>` also contains entries for various
standard passbands from photometric systems that are not specific to HST.
Actively supported systems (i.e., their data files are updated on CRDS as
needed) are as tabulated below.
Non-HST filters are specified using the name of the filter system,
followed by the desired band name. For example:

>>> bp = S.ObsBandpass('cousins,i')
>>> bp = S.ObsBandpass('stromgren,u')

If the name of the filter system is omitted for any of the common *UBVRIJHK*
filters, the defaults are Johnson *UBV*, Cousins *RI*, and Bessell *JHK*.
For example, the following are equivalent:

>>> bp = S.ObsBandpass('v')
>>> bp = S.ObsBandpass('johnson,v')

+------------------+-------------+
|System Name       |Band Name    |
+==================+=============+
||nonhst_cousins|  |r i          |
+------------------+-------------+
||nonhst_galex|    |nuv fuv      |
+------------------+-------------+
||nonhst_johnson|  |u v b r i j k|
+------------------+-------------+
||nonhst_landolt|  |u v b r i    |
+------------------+-------------+
||nonhst_sdss|     |u g r i z    |
+------------------+-------------+
||nonhst_stromgren||u v b y      |
+------------------+-------------+


Comparing pysynphot Results with Observed Non-HST Photometry
------------------------------------------------------------

There are two issues that are sometimes overlooked when comparing
synthetic photometry from **pysynphot** with observed photometry using a
non-HST system.

Firstly, one should be careful whether the throughput data have been
defined for a photon-counting or an energy-integrating detector.
**pysynphot** always assumes that a throughput are of the former.
In particular, some authors in the past have defined throughput curves
for photomultipliers as if these detectors were energy integrators,
which they are not. Such curves have to be converted into photon-counting
form before they can be correctly used by **pysynphot**
(:ref:`Maiz Apellaniz 2006 <synphot-ref-maiz2006>`).
Using the wrong definition can lead to errors of a few percent for
broad-band filters.

Secondly, many systems (e.g., Johnson *UBV*) use Vega
as a reference spectrum, but have been calibrated using secondary standards,
leading to the existence of finite zero points. In some systems
(e.g. Stromgren), those zero points are not even
close to 0.0 for some filters. The table below defines the zero point
corrections for ground-based filter systems from measurements of zero points
collected from the respective literature; These values should be added to the
``vegamag`` magnitude in **pysynphot** before they are compared with the
observed data:

+-------------------+-------------+----------+-------------+
|System             |Color/Index  |Zero point|References   |
|                   |             |(mag)     |             |
+===================+=============+==========+=============+
||nonhst_johnson2|  |:math:`V`    |0.026     ||bohlin2004| |
|and                +-------------+----------+-------------+
||nonhst_landolt2|  |:math:`B-V`  |0.010     ||maiz2006|   |
|                   +-------------+----------+-------------+
|                   |:math:`U-B`  |0.020     ||maiz2006|   |
+-------------------+-------------+----------+-------------+
||nonhst_cousins2|  |:math:`V-R`  |-0.012    ||holberg2006||
|and                +-------------+----------+-------------+
||nonhst_landolt2|  |:math:`V-I`  |-0.002    ||holberg2006||
+-------------------+-------------+----------+-------------+
||nonhst_stromgren2||:math:`y`    |0.038     ||holberg2006||
|                   +-------------+----------+-------------+
|                   |:math:`b-y`  |0.007     ||maiz2006|   |
|                   +-------------+----------+-------------+
|                   |:math:`m_{1}`|0.154     ||maiz2006|   |
|                   +-------------+----------+-------------+
|                   |:math:`c_{1}`|1.092     ||maiz2006|   |
+-------------------+-------------+----------+-------------+

.. |bohlin2004| replace:: :ref:`Bohlin & Gilliland (2004) <synphot-ref-bohlin2004>`
.. |holberg2006| replace:: :ref:`Holberg & Bergeron (2006) <synphot-ref-holberg2006>`
.. |maiz2006| replace:: :ref:`Maiz Apellaniz (2006) <synphot-ref-maiz2006>`

The existence of these issues has led CRDS to divide the non-HST photometric
systems into supported (as mentioned above) and
:ref:`not supported <pysynphot-nonhst-deprecated>`.

Systems for which there are analyses in the literature that deal with
the issues mentioned above are as follow. CRDS Team is reasonably confident
that the possible systematic errors in the **pysynphot** results for these
systems are small:

* |nonhst_cousins2| *RI*
* |nonhst_johnson2| *UBV* (but not *RIJK*)
* |nonhst_landolt2| *UBVRI*
* :ref:`pysynphot-nonhst-sdss` *ugriz*
* |nonhst_stromgren2| *uvby*


.. _pysynphot-nonhst-2mass:

2MASS
-----

The 2MASS *JHK*:math:`_s` throughputs are taken from :ref:`Cohen et al. (2003) <synphot-ref-cohen2003>`.
These are normalized relative spectral response curves and include the throughputs of all of the 
appropriate optics from the 2MASS optical system, as well as the atmosphere above the two 2MASS
telescopes. 

Zero point reference fluxes for 2MASS reproduced from the 
`IPAC 2MASS website <https://old.ipac.caltech.edu/2mass/releases/allsky/doc/sec6_4a.html>`_ 
are included here for reference (pay special attention to the units):

+-----+--------------------+-----------------+---------------+-----------------------+
|Band |λ (µm)              |Bandwidth        |Fnu ref        |Flambda ref            |
|     |                    |(µm)             |(Jy)           |(W/cm^2/µm)            |
+=====+====================+=================+===============+=======================+
|J    |   1.235 ± 0.006    | 0.162 ± 0.001   | 1594 ± 27.8   | 3.129E-13 ± 5.464E-15 |
+-----+--------------------+-----------------+---------------+-----------------------+
|H    |   1.662 ± 0.009    | 0.251 ± 0.002   | 1024 ± 20.0   | 1.133E-13 ± 2.212E-15 |
+-----+--------------------+-----------------+---------------+-----------------------+
|Ks   |   2.159 ± 0.011    | 0.262 ± 0.002   | 666.7 ± 12.6  | 4.283E-14 ± 8.053E-16 |
+-----+--------------------+-----------------+---------------+-----------------------+

To use the 2MASS throughputs:

>>> bp = S.ObsBandpass('2mass,j')
>>> bp = S.ObsBandpass('2mass,h')
>>> bp = S.ObsBandpass('2mass,ks')

(Note: 2MASS throughput curves were added to the TMG file in January 2020. Users must use
a TMG/TMC file and associated throughput tables delivered after this date to use the 
2MASS OBSMODEs.)


.. _pysynphot-nonhst-cousins:

Cousins
-------

The Cousins *RI* throughputs are taken from
:ref:`Bessell (1983) <synphot-ref-bessell1983>`. They have been transformed
into photon-counting form. For example:

>>> bp = S.ObsBandpass('cousins,i')


.. _pysynphot-nonhst-galex:

GALEX
-----

The GALEX FUV and NUV throughputs were provided by Tom Barlow on
behalf of the `GALEX <http://www.galex.caltech.edu/>`_ project, as described in
:ref:`Morrissey et al. (2007) <synphot-ref-morrissey2007>`.
They were measured on the ground in units of effective area,
and were divided by the full area of the GALEX primary mirror
(:math:`1963.495 \; \mathrm{cm}^{2}`) to convert them to the dimensionless
transmission values required by **pysynphot**. Therefore, these curves represent
the true total throughput, including obscuration by the secondary mirror,
reflectivity of the mirrors, sensitivity of the detector, and so forth.
For example:

>>> bp = S.ObsBandpass('galex,fuv')


.. _pysynphot-nonhst-johnson:

Johnson
-------

The throughput data for the Johnson *UBV* bands were obtained from
:ref:`Maiz Apellaniz (2006) <synphot-ref-maiz2006>`, while the *RIJK* bands
from :ref:`Johnson (1965) <synphot-ref-johnson1965>`. For example:

>>> bp = S.ObsBandpass('johnson,v')


.. _pysynphot-nonhst-landolt:

Landolt
-------

The :ref:`Landolt (1983) <synphot-ref-landolt1983>` *UBVRI* system is made up of
the :ref:`pysynphot-nonhst-johnson` *UBV* and the
:ref:`pysynphot-nonhst-cousins` *RI* passbands. For example:

>>> bp = S.ObsBandpass('landolt,v')


.. _pysynphot-nonhst-sdss:

SDSS
----

The `Sloan Digital Sky Survey (SDSS) <http://www.sdss.org/>`_ *ugriz* filter
throughputs were provided by Sebastian Jester on behalf of the SDSS team,
as described in :ref:`Gunn et al. (2001) <synphot-ref-gunn2001>`.
The filter curves are shown in the
`SDSS filter response plot <http://www.sdss.org/dr1/instruments/imager/index.html#filters>`_. For example:

>>> bp = S.ObsBandpass('sdss,g')

The throughput data give the system photon response to point sources of the
2.5-m SDSS survey telescope, including extinction through an airmass of 1.3 at
`Apache Point Observatory <https://www.apo.nmsu.edu/>`_ (to which all SDSS
photometry is referenced).
Originally, the *ugriz* system was intended to be identical to the
:math:`u^{\prime} g^{\prime} r^{\prime} i^{\prime} z^{\prime}`
system described in :ref:`Fukugita et al. (1996) <synphot-ref-fukugita1996>`
and defined by the standard star system in
:ref:`Smith et al. (2002) <synphot-ref-smith2002>`. However, in the course
of processing the SDSS data, an unpleasant discovery was made that
the filters in the 2.5-m telescope have significantly different
effective wavelengths from the filters in the
`USNO <https://www.usno.navy.mil/USNO/>`_ telescope, which was used to observe
the :math:`u^{\prime} g^{\prime} r^{\prime} i^{\prime} z^{\prime}`
standards; The difference originates from the USNO filters being exposed to
ambient air, while the survey-telescope filters live in the vacuum of the
survey camera. Therefore, it became necessary to distinguish between the primed
and unprimed SDSS filter sets.

The response curves in *r* and *i* are slightly different for
large extended sources (larger than about 80 pixels in size)
because the extended IR scattering wings in these bands,
which do not affect the photometry of point sources, begin to be
included. The modified curves are shown in an
`updated SDSS system response plot <http://www.sdss.org/dr3/instruments/imager/#filters>`_.

The SDSS photometry is intended to be on the AB system
(:ref:`Oke & Gunn 1983 <synphot-ref-oke1983>`), by which a 0-magnitude object
should have the same counts as a source of
:math:`F_{\nu} = 3631 \; \mathrm{Jy}` (except that it used the so-called
"asinh" magnitudes defined by
:ref:`Lupton et al. 1999 <synphot-ref-lupton1999>` instead of conventional
Pogson magnitudes). However, this is known not to be exactly true, such that
the photometric zero points are slightly off the AB standard. The SDSS team
continues to work to pin down these shifts. Their estimate, based on comparison
to the STIS standards of :ref:`Bohlin et al. (2001) <synphot-ref-bohlin2001>`
and confirmed by SDSS photometry and spectroscopy of fainter hot white dwarfs,
is that the *u* band zero point is in error by 0.04 mag,
:math:`u_{\mathrm{AB}} = u_{\mathrm{SDSS}} - 0.04 \; \mathrm{mag}`,
and that *g*, *r*, and *i* are close to AB; These statements are certainly not
precise to better than 0.01 mag. The *z* band zero point is not as certain
(as of January 2005), but there is mild evidence that it may be shifted by about
0.02 mag in the sense that
:math:`z_{\mathrm{AB}} = z_{\mathrm{SDSS}} + 0.02 \; \mathrm{mag}`.

See :ref:`Holberg & Bergeron (2006) <synphot-ref-holberg2006>` for a
calibration of SDSS magnitudes using Vega as a reference spectrum.
Further information about SDSS photometric calibration and the "asinh"
magnitude system can be found at
`SDSS Photometric Flux Calibration webpage <http://www.sdss.org/dr3/algorithms/fluxcal.html>`_.


.. _pysynphot-nonhst-stromgren:

Stromgren
---------

The Stromgren *uvby* throughputs are taken from
:ref:`Maiz Apellaniz (2006) <synphot-ref-maiz2006>`. For example:

>>> bp = S.ObsBandpass('stromgren,y')


.. _pysynphot-nonhst-wfirst:

WFIRST
------

Phase B estimates of the WFIRST integrated system throughputs have been taken from
the `WFIRST Reference Information <https://wfirst.gsfc.nasa.gov/science/WFIRST_Reference_Information.html>`_ page at GSFC. For example:

>>> bp = S.ObsBandpass('wfirst,wfi,f062')

Only the Wide Field Instrument (WFI) is currently supported with the following modes:

+------------+-----------------------------------------+
|Description |Keywords                                 |
+============+=========================================+
|Filter      |f062, f087, f106, f129, f146, f158, f184 |
+------------+-----------------------------------------+
|Grating     |grism, prism                             |
+------------+-----------------------------------------+

At this time, the estimated throughputs do not differentiate between the different sensor chip assemblies (SCAs).
SCA-dependent throughputs will be delivered at a later time.

(Note: WFIRST throughput curves were added to the TMG file in January 2020. Users must use
a TMG/TMC file and associated throughput tables delivered after this date to use the 
WFIRST OBSMODEs.)



.. _pysynphot-nonhst-deprecated:

Deprecated Systems
------------------

.. |nonhst_ans| replace:: :ref:`ans <pysynphot-nonhst-ans>`
.. |nonhst_baum| replace:: :ref:`baum <pysynphot-nonhst-baum>`
.. |nonhst_bessell| replace:: :ref:`bessell <pysynphot-nonhst-bessell>`
.. |nonhst_eso| replace:: :ref:`eso <pysynphot-nonhst-eso>`
.. |nonhst_kpno| replace:: :ref:`kpno <pysynphot-nonhst-kpno>`
.. |nonhst_steward| replace:: :ref:`steward <pysynphot-nonhst-steward>`
.. |nonhst_walraven| replace:: :ref:`walraven <pysynphot-nonhst-walraven>`

As of March 2006, some non-HST bandpass systems were deprecated, as tabulated
below. They remain accessible by **pysynphot**, but mostly for backward
compatibility. There will be no updates from CRDS, so use these at your own
risk.

+-----------------+-----------------------------------------------+
|System Name      |Band Name                                      |
+=================+===============================================+
||nonhst_ans|     |1550 1550n 1800 2200 2500 3300                 |
+-----------------+-----------------------------------------------+
||nonhst_baum|    |f336w f439w f547m f555w f569w f606w f622w f675w|
|                 |f702w f725lp f785lp f791w f814w f850lp f1042m  |
+-----------------+-----------------------------------------------+
||nonhst_bessell| |j h k                                          |
+-----------------+-----------------------------------------------+
||nonhst_eso|     |88 97 100-102 104-106 109-119 121 122 125      |
|                 |127-130 132 136 140 141 145 149 152 154-157    |
|                 |159-161 163-166 168-170 172-179 181-183 185 186|
|                 |189 192-194 196-199 201-207 209-234 236-242 244|
|                 |247 248 253 254 260 264 265 537 538            |
+-----------------+-----------------------------------------------+
||nonhst_kpno|    |j h k                                          |
+-----------------+-----------------------------------------------+
||nonhst_steward| |j h k                                          |
+-----------------+-----------------------------------------------+
||nonhst_walraven||v b l u w                                      |
+-----------------+-----------------------------------------------+


.. _pysynphot-nonhst-ans:

ANS
^^^

The Astronomical Netherlands Satellite (ANS) system is a set of UV filters used
by the satellite, as described in
:ref:`van Duinen et al. (1975) <synphot-ref-vanduinen1975>`. For example:

>>> bp = S.ObsBandpass('ans,1550')


.. _pysynphot-nonhst-baum:

Baum
^^^^

The Baum filter set is a set of 15 broadband and intermediate-band
filters that are copies the ones onboard :ref:`pysynphot-appendixb-wfpc1` that
were used as part of a ground-based calibration campaign for the instrument.
In order to match the response of the in-flight passbands as closely as
possible, the throughputs for the Baum filters have been multiplied
by the spectral response curve of the ground-based CCD (measured
in the laboratory) and twice by the spectral reflectance of aluminum
(:ref:`Harris et al. 1991 <synphot-ref-harris1991>`). For example:

>>> bp = S.ObsBandpass('baum,f336w')


.. _pysynphot-nonhst-bessell:

Bessell
^^^^^^^

The Bessell *JHK* filter curves are taken from
:ref:`Bessell & Brett (1988) <synphot-ref-bessell1988>`, Table IV.
These curves include the mean atmospheric transmission equivalent to 1.2
air masses of a standard `KPNO <http://www.noao.edu/kpno/>`_  atmosphere.
For example:

>>> bp = S.ObsBandpass('bessell,k')


.. _pysynphot-nonhst-eso:

ESO
^^^

The 530 ESO band throughput tables were received from Jan Koornneef in 1990.
For example:

>>> bp = S.ObsBandpass('eso,198')


.. _pysynphot-nonhst-kpno:

KPNO
^^^^

The `Kitt Peak National Observatory (KPNO) <http://www.noao.edu/kpno/>`_ *JHK*
filter curves are taken from the tracings of the Simultaneous Quad Infrared
Image Device (SQIID) filter set, which were provided by Richard Joyce from the
observatory. For example:

>>> bp = S.ObsBandpass('kpno,k')


.. _pysynphot-nonhst-steward:

Steward
^^^^^^^

The `Steward Observatory <https://www.as.arizona.edu/observing>`_ *JHK* filter
curves are from data provided by Marcia Rieke from the observatory. For example:

>>> bp = S.ObsBandpass('steward,k')


.. _pysynphot-nonhst-walraven:

Walraven
^^^^^^^^

The throughput data for the Walraven *VBLUW* bands are from
:ref:`Lub & Pel (1977) <synphot-ref-lub1977>`, Table 6. For example:

>>> bp = S.ObsBandpass('walraven,v')