iterative Quasi-Monte Carlo (iQMC) code for neutron transport. The theory behind iQMC is outlined in [1]. iQMC uses Quasi-Monte Carlo methods to solve successive iterations of the Source Iteration and other advanced linear solvers for neutron transport.
To load the iQMC package:
push!(LOAD_PATH,<path_to_repo>)
using(iQMC)To recreate the convergence of residuals for the three linear solvers: source iteration, GMRES, and BiCGSTAB. Run the function:
iQMC.MG_Solver_Compare(Nx=80, N=2^14)To recreate the relative error results, run the function:
iQMC.MG_Error_table(tol=1.e-5; Nxvals=[80, 160, 320], Nvals= [2^10, 2^11, 2^12, 2^13, 2^14, 2^15, 2^17, 2^18, 2^19, 2^20],
maketab=false, savedata=true, fname=nothing, rptprog=true, generator="Sobol")Note, change generator="Sobol" to generator="Random" to generate MC results.
To recreate convergence of residuals for Reed's Problem use:
iQMC.Reeds_Solver_Compare(Nx=180, N=2^14, generator="Sobol")For relative error results, run:
iQMC.Reeds_Error_Table(tol=1.e-5; Nxvals=[80], Nvals = [2^10, 2^11, 2^12, 2^13, 2^14, 2^15, 2^16, 2^17],
maketab=false, savedata=false, fname=nothing, rptprog=true, fluxplot=false, generator="Sobol",LB=-8.0,RB=8.0)[1] Pasmann, S., Variansyah, I., and McClarren, R. G. Convergent transport source iteration calculations with quasi-monte carlo. vol. 124, American Nuclear Society, pp. 192–195.
