}, #TODO 'velocity': False, 'bc': phrqc_input['c_bc'], 'dx': dx, 'Dref': D } tfact_default = 1. / 6. / 1 #*init_porosCH domain_params = fn.set_domain_params(D, mvol, pqty, porosity, app_tort, slabels, input_file=root_dir + '\\phreeqc_input\\' + nn + '.phrq') bc_params = fn.set_bc_params(bc_slabels={'left': 100001}) solver_params = fn.set_solver_params(tfact=tfact_default, smart_thres=1e-8, cphi_fact=1 / 3.) #fn.save_settings(settings, bc_params, solver_params, path, nn) #csh=yantra.PhrqcReactiveTransport('MultilevelDiffusion',domain,domain_params,bc_params,solver_params) csh = rt.CarbonationRT('MultilevelDiffusion', domain, domain_params, bc_params, solver_params, settings) #%% results dict plist = [(1, n) for n in np.arange(3, 6)] #points list pavglist = [ 'avg_poros', 'pH', 'avg_D_eff',
'int_energy': 0.1, # internal energy 'pore_size': 0.01*dx, # threshold radius or distance/2 'crystal_size': 0.5*dx, # crystal or pore length 'pore_density': 2000, #pore density per um3 - only for cylinder type }, 'subgrid': {'fraction':0.004}, # fraction of interface cell number or None = porosity 'app_tort':{'degree': 1./3.}, #TODO 'velocity': False, 'bc': phrqc_input['c_bc'], 'dx': dx, 'Dref':D } tfact_default = 1./6./1#*init_porosCH domain_params = fn.set_domain_params(D, mvol, pqty, porosity, app_tort, slabels, input_file = root_dir +'\\phreeqc_input\\' + nn + '.phrq') bc_params = fn.set_bc_params(bc_slabels = {'top':100001}) solver_params = fn.set_solver_params(tfact = tfact_default, smart_thres = 1e-8, cphi_fact = 1/3.) #fn.save_settings(settings, bc_params, solver_params, path, nn) #csh=yantra.PhrqcReactiveTransport('MultilevelDiffusion',domain,domain_params,bc_params,solver_params) csh=rt.CarbonationRT('MultilevelDiffusion',domain,domain_params,bc_params,solver_params, settings) #%% results dict plist = [(1,n) for n in np.arange(3, 6)] #points list pavglist = ['avg_poros', 'pH', 'avg_D_eff', 'sum_vol', 'precipitation', #argument list 'dissolution', 'portlandite_cells', 'calcite_cells'] results = fn.init_results(pavg=True, pavg_list=pavglist, points=plist, ptype=m) Ts = 100 #s Ts = Ts/scale + 0.001 N = Ts/csh.dt