@@ -187,9 +187,15 @@ def __init__(
187187 mask
188188 The 2D mask associated with the array, defining the pixels each array value in its ``slim`` representation
189189 is paired with.
190+ header
191+ Optional metadata header (e.g. from a FITS file) associated with the array.
190192 store_native
191193 If True, the ndarray is stored in its native format [total_y_pixels, total_x_pixels]. This avoids
192194 mapping large data arrays to and from the slim / native formats, which can be a computational bottleneck.
195+ skip_mask
196+ If True, masking is skipped and values are stored as-is without zeroing masked entries.
197+ xp
198+ The array module to use (default ``numpy``; pass ``jax.numpy`` for JAX support).
193199
194200 Examples
195201 --------
@@ -334,22 +340,39 @@ def native_skip_mask(self) -> "Array2D":
334340
335341 @property
336342 def in_counts (self ) -> "Array2D" :
343+ """
344+ The array converted from electrons-per-second (eps) to total counts, using the exposure time stored
345+ in the associated ``Header``.
346+ """
337347 return self .header .array_eps_to_counts (array_eps = self )
338348
339349 @property
340350 def in_counts_per_second (self ) -> "Array2D" :
351+ """
352+ The array converted from electrons-per-second (eps) to counts-per-second, via an intermediate
353+ conversion to total counts using the ``Header`` exposure time.
354+ """
341355 return self .header .array_counts_to_counts_per_second (
342356 array_counts = self .in_counts
343357 )
344358
345359 @property
346360 def original_orientation (self ) -> Union [np .ndarray , "Array2D" ]:
361+ """
362+ The array rotated back to its original CCD read-out orientation, using the read-out-electronics (ROE)
363+ corner stored in the associated ``Header``.
364+ """
347365 return layout_util .rotate_array_via_roe_corner_from (
348366 array = self , roe_corner = self .header .original_roe_corner
349367 )
350368
351369 @property
352370 def readout_offsets (self ) -> Tuple [int , int ]:
371+ """
372+ The (y,x) pixel offsets of the read-out electronics corner, taken from the associated ``Header``.
373+
374+ Returns ``(0, 0)`` if no header is present or no readout offsets are stored in the header.
375+ """
353376 if self .header is not None :
354377 if self .header .readout_offsets is not None :
355378 return self .header .readout_offsets
@@ -438,10 +461,10 @@ def brightest_sub_pixel_coordinate_in_region_from(
438461
439462 For example, if the input region is `region=(-0.15, 0.25, 0.35, 0.55)` the code finds all pixels inside of
440463 this region in scaled units, finds the brightest pixel of those pixels, and then on a 3x3 grid surrounding
441- this pixel determines the locaiton of the brightest sub pixel using a weighted centre calculation.
464+ this pixel determines the location of the brightest sub pixel using a weighted centre calculation.
442465
443- The centre of the brightest pixel is returned, the function `brightest_sub_pixel_coordinate_in_region_from`
444- performs a sub pixel calculation to return the brightest sub pixel coordinate.
466+ Unlike ``brightest_coordinate_in_region_from``, which returns the centre of the brightest pixel, this
467+ function performs a weighted-centroid sub- pixel calculation to return a more precise coordinate.
445468
446469 Parameters
447470 ----------
@@ -621,9 +644,9 @@ def no_mask(
621644 # Make Array2D from input list, native format
622645 # (This array has shape_native=(2,2)).
623646
624- array_2d = aa.Array2D.manual (
625- array =np.array([[1.0, 2.0], [3.0, 4.0]]),
626- pixel_scales=1.0.
647+ array_2d = aa.Array2D.no_mask (
648+ values =np.array([[1.0, 2.0], [3.0, 4.0]]),
649+ pixel_scales=1.0,
627650 )
628651 """
629652
0 commit comments