Exemple #1
0
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)
Exemple #2
0
    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)
Exemple #4
0
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)