import os from create_geom_for_palabos import * from create_palabos_input_file import * from parse_input_file import * # Steps # 1) parse input file # 2) create geom for palabos # 3) create palabos input file # 4) run 1-phase sim # Please see python_1_phase_workflow in examples directory on how to use this input_file = sys.argv[1] # 1) Process input file inputs = parse_input_file(input_file) if inputs['simulation type'] == '2-phase': raise KeyError( 'Simulation type set to 2-phase...please change to 1-phase.') sim_directory = inputs['input output']['simulation directory'] # 2) Create Palabos geometry print('Creating efficient geometry for Palabos...') create_geom_for_palabos(inputs) # 3) Create simulation input file print('Creating input file...') create_palabos_input_file(inputs) # 4) Run 1-phase simulation
krnw = np.loadtxt(f'{sim_dir + output_dir}data_krnw.txt') plt.figure(figsize=[10, 8]) plot_capillary_pressure_data(Sw, Pc) plt.savefig(sim_dir + 'pc_curve.png', dpi=300) plt.figure(figsize=[10, 8]) plot_rel_perm_data(Sw, krw, krnw) plt.savefig(sim_dir + 'relperm_curve.png', dpi=300) plt.figure(figsize=[6, 10]) plot_pc_and_rel_perm(Sw, Pc, krw, krnw) plt.savefig(sim_dir + 'pc_and_relperm_curve.png', dpi=300) plt.show() return drp_url = 'www.digitalrocksportal.org/projects/65/images/71108/download/' file_name = 'input/rg_theta60_phi10.raw' download_geometry(file_name, drp_url) input_file = 'input.yml' inputs = parse_input_file(input_file) # Parse inputs inputs['input output']['simulation directory'] = os.getcwd( ) # Store current working directory run_2_phase_sim(inputs) # Run 2 phase sim run_rel_perm_sim(inputs) # Run rel perm process_and_plot_results(inputs) # Plot results