Source code for pypeit.core.convert_DEIMOSsavfiles

from scipy.io import readsav
import numpy as np
import pathlib

from pypeit import dataPaths
from pypeit import io


[docs] def sav_to_fits(savfile): """ Simple method to convert the DEIMOS .sav files, which contain the optical model maps, to .fits files. The new file has the same name with a .fits extension. ToDO: This is specific for keck_deimos `static_calib` data, since the path is explicitly mentioned. If needed, this method could be generalized. TODO: move it to `pypeit.io`. Args: savfile (str): full path to the .sav file """ savfile_name = pathlib.Path(savfile).stem sav = readsav(savfile, python_dict=True) list_keys = list(sav.keys()) for k in list_keys: if type(sav[k]) is not np.ndarray: sav[k] = np.asarray([sav[k]]) io.write_to_fits( sav, dataPaths.static_calibs.get_file_path(f'keck_deimos/{savfile_name}.fits'), overwrite=True ) return