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')
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)
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
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})
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], )
def test_init(self, primary, tau_selection, constraints): CRM(primary, tau_selection, constraints)
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)