コード例 #1
0
    },  #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',
コード例 #2
0
ファイル: 03_2D_3.4.py プロジェクト: annavarzina/carbonation
                         '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