Пример #1
0
 def test_to_excel_fails(self, trained_model, primary, tmpdir):
     crm = trained_model(primary)
     with pytest.raises(TypeError):
         crm.to_excel()
     crm2 = CRM(primary)
     with pytest.raises(ValueError):
         crm2.to_excel(tmpdir + '/test.xlsx')
Пример #2
0
 def test_init_fails(self, primary, tau_selection, constraints):
     with pytest.raises(TypeError):
         CRM(primary='yes',
             tau_selection=tau_selection,
             constraints=constraints)
     with pytest.raises(ValueError):
         CRM(primary=primary,
             tau_selection=tau_selection,
             constraints='negative')
     with pytest.raises(ValueError):
         CRM(primary=primary,
             tau_selection='per-Bob',
             constraints=constraints)
Пример #3
0
 def _trained_model(*args, **kwargs):
     crm = CRM(*args, **kwargs)
     crm.injection, crm.production, crm.time = reservoir_simulation_data
     crm.gains = np.genfromtxt(data_dir + 'gains.csv', delimiter=',')
     if crm.tau_selection == 'per-pair':
         crm.tau = np.genfromtxt(data_dir + 'taus_per-pair.csv',
                                 delimiter=',')
     else:
         crm.tau = np.genfromtxt(data_dir + 'taus.csv', delimiter=',')
     crm.gains_producer = np.genfromtxt(data_dir + 'gain_producer.csv',
                                        delimiter=',')
     crm.tau_producer = np.genfromtxt(data_dir + 'tau_producer.csv',
                                      delimiter=',')
     return crm
Пример #4
0
 def test_fit_initial_guess(self, reservoir_simulation_data, primary,
                            tau_selection, constraints):
     injection, production, time = reservoir_simulation_data
     crm = CRM(primary, tau_selection, constraints)
     crm.set_rates(production, injection, time)
     x0 = crm._get_initial_guess(tau_selection)
     for random in (True, False):
         crm.fit(production,
                 injection,
                 time,
                 random=random,
                 initial_guess=x0,
                 options={'maxiter': 100})
Пример #5
0
    def test_fit_fails(self, reservoir_simulation_data, primary, tau_selection,
                       constraints):
        crm = CRM(primary, tau_selection, constraints)
        injection, production, time = reservoir_simulation_data

        with pytest.raises(TypeError):
            crm.fit(production)
        with pytest.raises(TypeError):
            crm.fit(production, injection)
        with pytest.raises(ValueError):
            crm.fit(production[:-1], injection, time)
        with pytest.raises(ValueError):
            crm.fit(production, injection[:-1], time)
        with pytest.raises(ValueError):
            crm.fit(
                production,
                injection,
                time[:-1],
            )
Пример #6
0
 def test_init(self, primary, tau_selection, constraints):
     CRM(primary, tau_selection, constraints)
Пример #7
0
 def test_fit_parallel(self, reservoir_simulation_data, primary,
                       tau_selection, constraints):
     injection, production, time = reservoir_simulation_data
     crm = CRM(primary, tau_selection, constraints)
     crm.fit(production, injection, time, num_cores=4)