def main(): start = time.time() # set default values tol = 1.e-8 cell_size = 10.0 solve_method = 'NEM4' iterations = 100 # create mesh mesh = Mesh([cell_size,cell_size], [cell_size]) # create fuel fuel = Material(2, 'fuel') fuel.setSigmaA([0.005, 0.10]) fuel.setD([1.5, 0.40]) fuel.setNuSigmaF([0.005, 0.15]) fuel.setChi([1.0, 0.0]) fuel.setSigmaS(np.array([[0.0, 0.02],[0.0, 0.0]])) # create fuel moderator = Material(2, 'moderator') moderator.setSigmaA([0.0, 0.01]) moderator.setD([1.5, 0.20]) moderator.setSigmaS(np.array([[0.0, 0.025],[0.0, 0.0]])) if solve_method == 'NEM4': order = 4 else: order = 2 # add materials to cells mesh.cells[0].setMaterial(fuel, order) mesh.cells[1].setMaterial(moderator, order) # mesh = mesh.refineMesh(.1) mesh.makeSurfaces() # plot the mesh pttr.plotMesh(mesh) # create solver solver = Solver(mesh, solve_method) # solve the matrix problem to get flux profile and keff solver.solve(tol, iterations) # plot the flux pttr.plotFlux(solver) pttr.plotCellFlux(solver) pttr.plotCurrent(solver) stop = time.time() print 'Ran time ' + str(stop-start)[0:5] + ' seconds' print '----------------------------------------------------------------------'
elif o in ("-i", "--iterations"): iterations = int(a) else: assert False, "unhandled option" # create mesh mesh = Mesh([cell_size, cell_size], [cell_size]) # create fuel fuel = Material(2, "fuel") fuel.setSigmaA([0.005, 0.10]) fuel.setD([1.5, 0.40]) fuel.setNuSigmaF([0.005, 0.15]) fuel.setChi([1.0, 0.0]) fuel.setSigmaS(np.array([[0.0, 0.02], [0.0, 0.0]])) # create fuel moderator = Material(2, "moderator") moderator.setSigmaA([0.0, 0.01]) moderator.setD([1.5, 0.20]) moderator.setSigmaS(np.array([[0.0, 0.025], [0.0, 0.0]])) if solve_method == "NEM4": order = 4 else: order = 2 mesh.cells[0].setMaterial(fuel, order) mesh.cells[1].setMaterial(moderator, order) mesh.makeSurfaces()
iterations = int(a) else: assert False, "unhandled option" # create mesh mesh = Mesh([cell_size,cell_size,cell_size,cell_size,cell_size,cell_size,cell_size,cell_size,cell_size,cell_size,cell_size], [cell_size,cell_size,cell_size,cell_size,cell_size,cell_size,cell_size,cell_size,cell_size,cell_size,cell_size]) # create fuel 1 blade in fuel1bin = Material(2, 'fuel 1 blade in') fuel1bin.setSigmaA([0.0083775, 0.1003211]) fuel1bin.setD([1.255, 0.211]) fuel1bin.setNuSigmaF([0.004602, 0.1091]) fuel1bin.setChi([1.0, 0.0]) fuel1bin.setSigmaS(np.array([[0.0, 0.02533],[0.0, 0.0]])) # create fuel 1 blade out fuel1bo = Material(2, 'fuel 1 blade out') fuel1bo.setSigmaA([0.0073078, 0.07048902]) fuel1bo.setD([1.268, 0.1902]) fuel1bo.setNuSigmaF([0.004609, 0.08675]) fuel1bo.setChi([1.0, 0.0]) fuel1bo.setSigmaS(np.array([[0.0, 0.02767],[0.0, 0.0]])) # create fuel 2 blade in fuel2bin = Material(2, 'fuel 2 blade in') fuel2bin.setSigmaA([0.0081279, 0.08346091]) fuel2bin.setD([1.259, 0.2091]) fuel2bin.setNuSigmaF([0.004663, 0.1021]) fuel2bin.setChi([1.0, 0.0])