Skip to content

Commit

Permalink
AD: Adding Exception in tpool_adapt to return Error when there is an …
Browse files Browse the repository at this point in the history
…error in the adaptation of the grid
  • Loading branch information
Allan Denis committed Jan 17, 2025
1 parent a5f0818 commit 6f0a216
Showing 1 changed file with 22 additions and 18 deletions.
40 changes: 22 additions & 18 deletions ForMoSA/adapt/adapt_grid.py
Original file line number Diff line number Diff line change
Expand Up @@ -80,24 +80,28 @@ def tpool_adapt(idx, global_params, wav_mod_nativ, res_mod_obs, wav_obs_spectro,
'''

# global variables
global grid_input_shape, grid_input_data, grid_spectro_shape, grid_spectro_data, grid_photo_shape, grid_photo_data

grid_input = array_to_numpy(grid_input_data, grid_input_shape, float)
grid_spectro = array_to_numpy(grid_spectro_data, grid_spectro_shape, float)
grid_photo = array_to_numpy(grid_photo_data, grid_photo_shape, float)

model_to_adapt = grid_input[(..., ) + idx]
nan_mod = np.isnan(model_to_adapt)

if np.any(nan_mod):
msg = 'Extraction of model failed : '
for i, (key, title) in enumerate(zip(keys, titles)):
msg += f'{title}={values[key][idx[i]]}, '
print(msg)
else:
mod_spectro, mod_photo = adapt_model(global_params, wav_mod_nativ, model_to_adapt, res_mod_obs, wav_obs_spectro, res_obs_spectro, obs_photo_ins, obs_name=obs_name, indobs=indobs)
grid_spectro[(..., ) + idx] = mod_spectro
grid_photo[(..., ) + idx] = mod_photo
try:
global grid_input_shape, grid_input_data, grid_spectro_shape, grid_spectro_data, grid_photo_shape, grid_photo_data
grid_input = array_to_numpy(grid_input_data, grid_input_shape, float)
grid_spectro = array_to_numpy(grid_spectro_data, grid_spectro_shape, float)
grid_photo = array_to_numpy(grid_photo_data, grid_photo_shape, float)

model_to_adapt = grid_input[(..., ) + idx]
nan_mod = np.isnan(model_to_adapt)
msg = ''

if np.any(nan_mod):
msg = 'Extraction of model failed : '
for i, (key, title) in enumerate(zip(keys, titles)):
msg += f'{title}={values[key][idx[i]]}, '
print(msg)
else:
mod_spectro, mod_photo = adapt_model(global_params, wav_mod_nativ, model_to_adapt, res_mod_obs, wav_obs_spectro, res_obs_spectro, obs_photo_ins, obs_name=obs_name, indobs=indobs)
grid_spectro[(..., ) + idx] = mod_spectro
grid_photo[(..., ) + idx] = mod_photo

except Exception as e:
print(f'Error in task: {e}')


def adapt_grid(global_params, res_mod_obs, wav_obs_spectro, res_obs_spectro, wav_obs_photo, obs_photo_ins, obs_name='', indobs=0):
Expand Down

0 comments on commit 6f0a216

Please sign in to comment.