synthoseis
synthoseis copied to clipboard
MemoryError: Unable to allocate 8.45 GiB for an array with shape (300, 300, 12600) and data type float64
I'm trying to create velocity model of small size; I keep getting Memory error, even after reducing the model size significantly. Any suggestion about how to resolve this would be greatly appreciated. Here is the error message:
MemoryError Traceback (most recent call last) Cell In[13], line 69 67 # Initialize and build the complex velocity model 68 velocity_model = ComplexVelocityModel(config) ---> 69 model_data = velocity_model.build_model() 71 # Plot the velocity model 72 velocity_model.plot_velocity_model()
Cell In[13], line 18, in ComplexVelocityModel.build_model(self) 15 os.makedirs(self.cfg['model_folder'], exist_ok=True) 16 os.makedirs(self.cfg['temp_folder'], exist_ok=True) ---> 18 self.model = mn.build_model(user_json=self.cfg['config_file'], run_id=self.cfg['run_id']) 20 return self.model
File ~\Desktop\seis\high_resolution_ML\synthoseis-master\main.py:31, in build_model(user_json, run_id, test_mode, rpm_factors) 29 # Build un-faulted geological models 30 geo_models = Geomodel(p, depth_maps, onlap_list, facies) ---> 31 geo_models.build_unfaulted_geomodels() 33 # Build Faults 34 f = Faults(p, depth_maps, onlap_list, geo_models, fan_list, fan_thicknesses)
File ~\Desktop\seis\high_resolution_ML\synthoseis-master\datagenerator\Geomodels.py:111, in Geomodel.build_unfaulted_geomodels(self) 86 def build_unfaulted_geomodels(self): 87 """ 88 Build unfaulted geomodels. 89 -------------------------- (...) 109 None 110 """ --> 111 self.geologic_age[:] = self.create_geologic_age_3d_from_infilled_horizons( 112 self.depth_maps 113 ) 114 self.onlap_segments[:] = self.insert_onlap_surfaces()
File ~\Desktop\seis\high_resolution_ML\synthoseis-master\datagenerator\Geomodels.py:196, in Geomodel.create_geologic_age_3d_from_infilled_horizons(self, depth_maps, verbose) 194 # create geologic age cube 195 age_range = np.linspace(0.0, float(cube_shape[2] - 1), cube_shape[2]) --> 196 age = np.zeros(cube_shape, "float") 197 for i in range(cube_shape[0]): 198 for j in range(cube_shape[1]):
MemoryError: Unable to allocate 8.45 GiB for an array with shape (300, 300, 12600) and data type float64