def save_subdata_sgdml_i(self, i): from sgdml.utils.io import dataset_md5 ind = self.subdata_indices[i] name = os.path.join(self.subdata_path, f"subdata_{i}.npz") data = dict(self.dataset) for i in ['R', 'E', 'F']: data[i] = data[i][ind] data['name'] = name data['md5'] = dataset_md5(data) np.savez_compressed(name, **data)
def create_temp_dataset(self, cl_ind): from sgdml.utils.io import dataset_md5 name = os.path.join(self.storage_dir, f"temp_dataset.npz") data = dict(self.dataset) for i in ['R', 'E', 'F']: data[i] = data[i][cl_ind] data['name'] = name data['md5'] = dataset_md5(data) np.savez_compressed(name, **data) return name
idxs = model['idxs_' + s] R = dataset['R'][idxs, :, :] E = dataset['E'][idxs] F = dataset['F'][idxs, :, :] base_vars = { 'type': 'd', 'name': dataset['name'].astype(str), 'theory': dataset['theory'].astype(str), 'z': dataset['z'], 'R': R, 'E': E, 'F': F, } base_vars['md5'] = io.dataset_md5(base_vars) subset_file_name = '%s_%s.npz' % ( os.path.splitext(os.path.basename(dataset_path))[0], s, ) file_exists = os.path.isfile(subset_file_name) if file_exists and args.overwrite: print(ui.info_str('[INFO]') + ' Overwriting existing model file.') if not file_exists or args.overwrite: np.savez_compressed(subset_file_name, **base_vars) ui.progr_toggle(is_done=True, disp_str='Extracted %s dataset saved to \'%s\'' % (s, subset_file_name)) else: print( ui.warn_str('[WARN]') + ' %s dataset \'%s\' already exists.' % (s.capitalize(), subset_file_name)
dataset['E'] = dataset['E'][1:25000] R = dataset['R'] n_dataset = R.shape[0] print(R.shape) F_mean = np.zeros(R.shape) model_dir, model_file_names = args.model_dir n_models = len(model_file_names) for i, model_file_name in enumerate(model_file_names): model_path = os.path.join(model_dir, model_file_name) print(model_path) model = np.load(model_path) gdml = GDMLPredict(model) _, F = gdml.predict(R.reshape(n_dataset, -1)) F_mean += F.reshape(n_dataset, -1, 3) F_mean /= n_dataset dataset = dict(dataset) dataset['F'] = F_mean dataset['theory'] = '{} {}'.format('mean_field_F ', dataset['theory']) dataset['md5'] = io.dataset_md5(dataset) np.savez_compressed('MEAN_' + dataset_path, **dataset)