'dz': cellSize, # m 'c': c.T, # m/s 'rho': rho.T, # density 'Q': Q, # can be inf 'nx': nx, # count 'nz': nz, # count 'freeSurf': freeSurf, # t r b l 'nPML': nPML, 'geom': geom, 'cache': cache, 'cacheDir': cacheDir, 'freqs': freqs, 'nky': nky, } sp = SeisFDFDProblem(systemConfig) jobs = sp.forwardAccumulate() def trackprogress(sp, jobs, interval=1.0): systemJobs = jobs['systemJobs'] jobkeys = systemJobs.keys() jobkeys.sort() fig = plt.figure() ax1 = fig.add_axes([0.1, 0.10, 0.15, 0.85], xlabel='Subproblem', ylabel='Source') ax1.get_xaxis().set_major_locator(ticker.MaxNLocator(integer=True))