# Configuration of IBVP maxIteration = 10 ################################################################################ # Grid construction ################################################################################ # Grid point data theta_gdp = [Ntheta*2**i for i in range(num_of_grids)] phi_gdp = [Nphi*2**i for i in range(num_of_grids)] # Build grids grids = [ grid.UniformCart( (theta_gdp[i], phi_gdp[i]), [(thetastart, thetastop), (phistart, phistop)], comparison = theta_gdp[i] * phi_gdp[i], ) for i in range(num_of_grids) ] ################################################################################ # Print logging information ################################################################################ if __debug__: log.debug("HDF file = %s"%args.f) log.debug("Start time = %f"%tstart) log.debug("Stop time = %f"%tstop) log.debug("CFLs are = %s"%repr(CFLs)) ################################################################################
# Determine the boundary data ghost_points = (raxis_1D_diffop.ghost_points(),) internal_points = (raxis_1D_diffop.internal_points(),) b_data = grid.MPIBoundary( ghost_points, internal_points, mpi_comm=mpi_comm, number_of_dimensions=1 ) # Build grids grids = [ grid.UniformCart( (raxis_gdp[i],), [[xstart, xstop]], comparison=raxis_gdp[i], mpi_comm=mpi_comm, boundary_data=b_data ) for i in range(num_of_grids) ] ################################################################################ # Initialise systems ################################################################################ systems = [] if __debug__: log.debug("Initialising systems.") for i in range(num_of_grids): systems += [OneDAdvectionMpi.OneDAdvectionMpi(\ raxis_1D_diffop, speed,
################################################################################ # Grid construction ################################################################################ # Grid point data raxis_gdp = [N * 2**i for i in range(num_of_grids)] # Calcualte number of ghost points. I assume that number required on the right # and left are the same. ghp = 2 #raxis_1D_diffop.ghost_points() ghost_points = ghp # Build grids grids = [ grid.UniformCart((raxis_gdp[i], ), [(xstart, xstop)], comparison=raxis_gdp[i]) for i in range(num_of_grids) ] ################################################################################ # Print logging information ################################################################################ if log.isEnabledFor(logging.DEBUG): log.debug("HDF file = %s" % args.f) log.debug("Start time = %f" % tstart) log.debug("Stop time = %f" % tstop) log.debug("CFLs are = %s" % repr(CFLs)) log.debug("grids = %s" % repr(grids)) ################################################################################ # Initialise systems ################################################################################
from coffee import ibvp, solvers, grid from coffee.actions import gp_plotter from OneDWave import OneDwave system = OneDwave() solver = solvers.RungeKutta4(system) grid = grid.UniformCart((200,), [(0, 4)]) plotter = gp_plotter.Plotter1D( system, 'set terminal qt', 'set yrange [-1:1]', 'set style data lines', ) problem = ibvp.IBVP(solver, system, grid=grid, action=[plotter]) problem.run(0, 3)
# Determine the boundary data ghost_points = (xaxis_1D_diffop.ghost_points(), yaxis_1D_diffop.ghost_points()) internal_points = ( xaxis_1D_diffop.internal_points(), yaxis_1D_diffop.internal_points(), ) b_data = grid.MPIBoundary(ghost_points, internal_points, mpi_comm=mpi_comm, number_of_dimensions=2) # Build grids grids = [ grid.UniformCart(axes[i], [(xstart, xstop), (ystart, ystop)], comparison=i, mpi_comm=mpi_comm, boundary_data=b_data) for i in range(num_of_grids) ] ################################################################################ # Print logging information ################################################################################ if __debug__: log.debug("HDF file = %s" % args.d) log.debug("Start time = %f" % tstart) log.debug("Stop time = %f" % tstop) log.debug("CFLs are = %s" % repr(CFLs)) log.debug("grids = %s" % repr(grids)) ################################################################################ # Initialise systems