@@ -80,6 +80,7 @@ maker = redmapper.GalaxyCatalogMaker(filename_base, info_dict)
80
80
81
81
for input_file in input_files:
82
82
# insert code to translate to file format
83
+
83
84
maker.append_galaxies(galaxies)
84
85
85
86
maker.finalize_catalog()
@@ -118,36 +119,28 @@ spec_dtype = [('ra', 'f8'), # right ascension (degrees)
118
119
### Survey Geometry Mask (Strongly Recommended)
119
120
120
121
Although redMaPPer does not require a survey geometry mask in order to run, it
121
- is strongly recommended when running on real data. For certain types of sim
122
+ is strongly recommended when running on real data. For certain types of simulated
122
123
data that cover a large contiguous area with limited boundaries and no
123
124
star-holes or bad fields, you can definitely get away without a survey geometry
124
125
mask!
125
126
126
127
The only type of mask currently supported in the ` redmapper ` package is a
127
- healpix geometry mask, although if a different type of mask has reasonably
128
- efficient ways of doing a position lookup, then this can be easily added to the
129
- code.
130
-
131
- The ` redmapper ` survey mask is not described as a standard ` healpy ` healpix
132
- file because it has a couple of other advantages for memory efficiency. You
133
- also have the ability to specify ` FRACGOOD ` , the fractional good coverage of
134
- each pixel, if this is known, to approximate a higher resolution mask. If it
135
- is not known, simply set this to 1.0 for each pixel.
136
-
137
- The header of the file and the datatype should be:
138
-
139
- ``` python
140
-
141
- import fitsio
142
-
143
- hdr = fitsio.FITSHDR()
144
- hdr[' NSIDE' ] = healpix_nside
145
- hdr[' NEST' ] = 0 # 0 for RING, or 1 for NEST
146
- hdr[' AREA' ] = total_coverage_area
147
-
148
- mask_dtype = [(' HPIX' , ' i8' ), # healpix number (nest or ring as in header)
149
- (' FRACGOOD' , ' f4' )] # fraction of pixel with good coverage
150
- ```
128
+ healpix geometry mask as described by the
129
+ [ ` healsparse ` ] ( https://github.com/lsstdesc/healsparse ) format. Other types of
130
+ mask could have supported added provided they have reasonably efficient ways of doing a
131
+ position lookup.
132
+
133
+ The ` healsparse ` format is much more memory efficient and faster to read than a
134
+ standard ` healpy ` healpix file or the older ` redmapper ` format. The format of
135
+ the mask is a standard ` healsparse ` map with a float value for ` fracgood ` (the
136
+ fractional "good" coverage) in each pixel. Using ` fracgood ` allows you to
137
+ approximate a higher resolution mask via sub-sampling. If you do not have
138
+ ` fracgood ` , then you should set each pixel that is in the mask to 1.0, and each
139
+ pixel that is outside the mask to ` healpy.UNSEEN ` (the default value).
140
+
141
+ If you have an old-style ` redmapper ` mask, this can be converted to the
142
+ ` healsparse ` format with the executable
143
+ ` redmapper_convert_mask_to_healsparse.py ` .
151
144
152
145
### Survey Depth Maps (Recommended)
153
146
@@ -160,29 +153,35 @@ depth map is not specified, the code will do its best to approximate it with a
160
153
fit to the galaxies (see Appendix B of [ Rozo et
161
154
al. (2015)] ( http://adsabs.harvard.edu/abs/2015MNRAS.453...38R ) ).
162
155
163
- The depth map has the format described below, with values consistent with the
164
- model in Section 3 of [ Rykoff et
156
+ The depth map should be in
157
+ [ ` healsparse ` ] ( https://github.com/lsstdesc/healsparse ) format. Other types of
158
+ mask could have supported added provided they have reasonably efficient ways of doing a
159
+ position lookup (as with the survey geometry masks).
160
+
161
+ The depth map ` healsparse ` file has the format described below, with values
162
+ consistent with the model in Section 3 of [ Rykoff et
165
163
al. (2015)] ( http://adsabs.harvard.edu/abs/2015arXiv150900870R ) .
166
164
167
165
``` python
168
166
import fitsio
169
167
170
168
hdr = fitsio.FITSHDR()
171
- hdr[' NSIDE' ] = healpix_nside
172
- hdr[' NEST' ] = 0 # 0 for RING, or 1 for NEST
173
169
hdr[' ZP' ] = reference_zeropoint
174
170
hdr[' NSIG' ] = signal_to_noise_at_limmag
175
171
hdr[' NBAND' ] = 1 # not used
176
172
hdr[' W' ] = 0.0 # not used
177
173
hdr[' EFF' ] = 1.0 # not used
178
174
179
- depth_dtype = [(' HPIX' , ' i8' ), # healpix number (nest or ring as in header)
180
- (' EXPTIME' , ' f4' ), # effective exposure time
181
- (' LIMMAG' , ' f4' ), # limited magnitude at nsig (in header)
182
- (' M50' , ' f4' ), # Should be same as LIMMAG (for now)
183
- (' FRACGOOD' , ' f4' )] # fraction of good coverage (see mask above)
175
+ depth_dtype = [(' exptime' , ' f4' ), # effective exposure time
176
+ (' limmag' , ' f4' ), # limited magnitude at nsig (in header)
177
+ (' m50' , ' f4' ), # Should be same as LIMMAG (for now)
178
+ (' fracgood' , ' f4' )] # fraction of good coverage (see mask above)
184
179
```
185
180
181
+ If you have an old-style ` redmapper ` depth file, this can be converted to the
182
+ ` healsparse ` format with the executable
183
+ ` redmapper_convert_depthfile_to_healsparse.py ` .
184
+
186
185
### m\* as a Function of Redshift
187
186
188
187
As described in Section 3.2 of [ Rykoff et
0 commit comments