Skip to content

Commit bb7cfa0

Browse files
committed
Aris's preprocessing code
1 parent 5c14f93 commit bb7cfa0

2 files changed

Lines changed: 30 additions & 4 deletions

File tree

autoarray/dataset/interferometer/dataset.py

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
1+
from astropy.io import fits
12
import logging
23
import numpy as np
4+
from pathlib import Path
35
from typing import Optional
46

57
from autoconf import cached_property
@@ -27,6 +29,7 @@ def __init__(
2729
uv_wavelengths: np.ndarray,
2830
real_space_mask,
2931
transformer_class=TransformerNUFFT,
32+
preprocessing_directory=None,
3033
):
3134
"""
3235
An interferometer dataset, containing the visibilities data, noise-map, real-space msk, Fourier transformer and
@@ -88,6 +91,8 @@ def __init__(
8891
uv_wavelengths=uv_wavelengths, real_space_mask=real_space_mask
8992
)
9093

94+
self.preprocessing_directory = Path(preprocessing_directory) if preprocessing_directory is not None else None
95+
9196
@cached_property
9297
def grids(self):
9398
return GridsDataset(
@@ -134,6 +139,27 @@ def from_fits(
134139
transformer_class=transformer_class,
135140
)
136141

142+
def w_tilde_preprocessing(self):
143+
144+
if self.preprocessing_directory.is_dir():
145+
146+
filename = "{}/curvature_preload.fits".format(self.preprocessing_directory)
147+
148+
if not self.preprocessing_directory.isfile(filename):
149+
print(
150+
"The file {} does not exist".format(filename)
151+
)
152+
logger.info("INTERFEROMETER - Computing W-Tilde... May take a moment.")
153+
154+
curvature_preload = inversion_interferometer_util.w_tilde_curvature_preload_interferometer_from(
155+
noise_map_real=self.noise_map.real,
156+
uv_wavelengths=self.uv_wavelengths,
157+
shape_masked_pixels_2d=self.transformer.grid.mask.shape_native_masked_pixels,
158+
grid_radians_2d=self.transformer.grid.mask.unmasked_grid_sub_1.in_radians.native,
159+
)
160+
161+
fits.writeto(filename, data=curvature_preload)
162+
137163
@cached_property
138164
def w_tilde(self):
139165
"""

test_autoarray/inversion/inversion/interferometer/test_inversion_interferometer_util.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@ def test__curvature_matrix_via_w_tilde_preload_from():
144144
)
145145

146146
w_tilde_preload = (
147-
aa.util.inversion.w_tilde_curvature_preload_interferometer_from(
147+
aa.util.inversion_interferometer.w_tilde_curvature_preload_interferometer_from(
148148
noise_map_real=np.array(noise_map),
149149
uv_wavelengths=np.array(uv_wavelengths),
150150
shape_masked_pixels_2d=(3, 3),
@@ -163,7 +163,7 @@ def test__curvature_matrix_via_w_tilde_preload_from():
163163
[[0, 0], [0, 1], [0, 2], [1, 0], [1, 1], [1, 2], [2, 0], [2, 1], [2, 2]]
164164
)
165165

166-
curvature_matrix_via_preload = aa.util.inversion.curvature_matrix_via_w_tilde_curvature_preload_interferometer_from(
166+
curvature_matrix_via_preload = aa.util.inversion_interferometer.curvature_matrix_via_w_tilde_curvature_preload_interferometer_from(
167167
curvature_preload=w_tilde_preload,
168168
pix_indexes_for_sub_slim_index=pix_indexes_for_sub_slim_index,
169169
pix_size_for_sub_slim_index=pix_size_for_sub_slim_index,
@@ -192,7 +192,7 @@ def test__curvature_matrix_via_w_tilde_two_methods_agree():
192192
)
193193

194194
w_tilde_preload = (
195-
aa.util.inversion.w_tilde_curvature_preload_interferometer_from(
195+
aa.util.inversion_interferometer.w_tilde_curvature_preload_interferometer_from(
196196
noise_map_real=np.array(noise_map),
197197
uv_wavelengths=np.array(uv_wavelengths),
198198
shape_masked_pixels_2d=(3, 3),
@@ -204,7 +204,7 @@ def test__curvature_matrix_via_w_tilde_two_methods_agree():
204204
[[0, 0], [0, 1], [0, 2], [1, 0], [1, 1], [1, 2], [2, 0], [2, 1], [2, 2]]
205205
)
206206

207-
w_tilde_via_preload = aa.util.inversion.w_tilde_via_preload_from(
207+
w_tilde_via_preload = aa.util.inversion_interferometer.w_tilde_via_preload_from(
208208
w_tilde_preload=w_tilde_preload,
209209
native_index_for_slim_index=native_index_for_slim_index,
210210
)

0 commit comments

Comments
 (0)