def main(): start_time = time.clock() paramL['curr_theta'] = paramL['theta_list'][rank] valnew = TasmanianSG.TasmanianSparseGrid() valnew = interpol.sparse_grid(paramL) valold = TasmanianSG.TasmanianSparseGrid() valold = valnew valnew.write("valnew_1." + str(paramL['numstart']) + ".s{}".format(rank) + ".txt") #write file to disk for restart comm.barrier() for i in range(paramL['numstart'] + 1, paramL['numits'] + 1): print('Size: ', size, ' rank ', rank) paramL['curr_theta'] = paramL['theta_list'][rank] valnew = TasmanianSG.TasmanianSparseGrid() output = get_iteration_list(i - 1) valnew = interpol_iter.sparse_grid_iter(paramL, list(output)) valold = TasmanianSG.TasmanianSparseGrid() valold = valnew valnew.write("valnew_1." + str(i) + ".s{}".format(rank) + ".txt") comm.barrier() end_time = time.clock() - start_time print('END') if rank == 0: avg_err = post.ls_error(paramL) print(end_time)
def main(): #valList = [] start_time = time.clock() output = dict() output[0] = [] for shock in range(5): paramL['curr_theta'] = paramL['theta_list'][shock] valnew = TasmanianSG.TasmanianSparseGrid() valnew = interpol.sparse_grid(paramL) valold = TasmanianSG.TasmanianSparseGrid() valold = valnew output[0].append(valold) valnew.write("valnew_1." + str(paramL['numstart']) + ".s{}".format(shock) + ".txt") #write file to disk for restart for i in range(paramL['numstart'] + 1, paramL['numits'] + 1): output[i] = list() for shock in range(5): paramL['curr_theta'] = paramL['theta_list'][shock] valnew = TasmanianSG.TasmanianSparseGrid() valnew = interpol_iter.sparse_grid_iter(paramL, list(output[i - 1])) valold = TasmanianSG.TasmanianSparseGrid() valold = valnew output[i].append(valold) valnew.write("valnew_1." + str(i) + ".s{}".format(shock) + ".txt") avg_err = post.ls_error(paramL) end_time = time.clock() - start_time print('END') print(end_time) return output
def run_all(n_agents): valnew=TasmanianSG.TasmanianSparseGrid() if (numstart==0): valnew=interpol.sparse_grid(n_agents, iDepth) valnew.write("valnew_1." + str(numstart) + ".txt") #write file to disk for restart # value function during iteration else: valnew.read("valnew_1." + str(numstart) + ".txt") #write file to disk for restart valold=TasmanianSG.TasmanianSparseGrid() valold=valnew for i in range(numstart, numits): valnew=TasmanianSG.TasmanianSparseGrid() valnew=interpol_iter.sparse_grid_iter(n_agents, iDepth, valold) valold=TasmanianSG.TasmanianSparseGrid() valold=valnew valnew.write("valnew_1." + str(i+1) + ".txt") #====================================================================== print "===============================================================" print " " print " Computation of a growth model of dimension ", n_agents ," finished after ", numits, " steps" print " " print "===============================================================" #====================================================================== # compute errors avg_err, max_err =post.ls_error(n_agents, numstart, numits, No_samples) #====================================================================== print "===============================================================" print " " print " Errors are computed -- see errors.txt" print " " print "===============================================================" #====================================================================== return avg_err, max_err
if (numstart == 0): valnew = interpol.sparse_grid(n_agents, iDepth) valnew.write("valnew_1." + str(numstart) + ".txt") #write file to disk for restart # value function during iteration else: valnew.read("valnew_1." + str(numstart) + ".txt") #write file to disk for restart valold = TasmanianSG.TasmanianSparseGrid() valold = valnew for i in range(numstart, numits): valnew = TasmanianSG.TasmanianSparseGrid() valnew = interpol_iter.sparse_grid_iter(n_agents, iDepth, valold) valold = TasmanianSG.TasmanianSparseGrid() valold = valnew valnew.write("valnew_1." + str(i + 1) + ".txt") #====================================================================== print "===============================================================" print " " print " Computation of a growth model of dimension ", n_agents, " finished after ", numits, " steps" print " " print "===============================================================" #====================================================================== # compute errors avg_err = post.ls_error(n_agents, numstart, numits, No_samples)
def run_all(n_agents): valnew=TasmanianSG.TasmanianSparseGrid() if (numstart==0): gridlist = [] for tT in range(ntheta): valnew=TasmanianSG.TasmanianSparseGrid() valnew=interpol.sparse_grid(n_agents, iDepth, theta[tT]) gridlist.append(valnew) valnew.write("valnew_1." + str(numstart) + "theta_" + str(tT) + ".txt") #write file to disk for restart # value function during iteration else: gridlist = [] for tT in range(ntheta): valnew.read("valnew_1." + str(numstart) + "theta_" + str(tT) + ".txt") #write file to disk for restart gridlist.append(valnew) #valold=TasmanianSG.TasmanianSparseGrid() #valold=valnew # avals_list = [] for i in range(numstart, numits): print " ================================================= " print " Iteration", i print " ================================================= " for tT in range(ntheta): thet = theta[tT] valnew = TasmanianSG.TasmanianSparseGrid() valnew = interpol_iter.sparse_grid_iter(n_agents, iDepth, gridlist, thet) valnew.write("valnew_1." + str(i+1) + "theta_" + str(tT) + ".txt") gridlist[tT].copyGrid(valnew) # valnew0=TasmanianSG.TasmanianSparseGrid() # valnew1=TasmanianSG.TasmanianSparseGrid() # valnew2=TasmanianSG.TasmanianSparseGrid() # valnew3=TasmanianSG.TasmanianSparseGrid() # valnew4=TasmanianSG.TasmanianSparseGrid() # # valnew0=interpol_iter.sparse_grid_iter(n_agents, iDepth, valold, theta[0]) # valnew1=interpol_iter.sparse_grid_iter(n_agents, iDepth, valold, theta[1]) # valnew2=interpol_iter.sparse_grid_iter(n_agents, iDepth, valold, theta[2]) # valnew3=interpol_iter.sparse_grid_iter(n_agents, iDepth, valold, theta[3]) # valnew4=interpol_iter.sparse_grid_iter(n_agents, iDepth, valold, theta[4]) # evaluate all grids at the same points # chosen arbitrarily to be the points of the third grid where theta=1 # eval_points = valnew2.getPoints() # # aVals0 = valnew0.evaluateBatch(eval_points)[:,0] # aVals1 = valnew1.evaluateBatch(eval_points)[:,0] # aVals2 = valnew2.evaluateBatch(eval_points)[:,0] # aVals3 = valnew3.evaluateBatch(eval_points)[:,0] # aVals4 = valnew4.evaluateBatch(eval_points)[:,0] # print aVals0, aVals4 # aVals_new = 0.2 *(aVals0 + aVals1 + aVals2 + aVals3 + aVals4) # aVals_new = np.reshape(aVals_new, (eval_points.shape[0], 1)) #f=open("aVals_new.txt", 'a') #np.savetxt(f, aVals_new, fmt='% 2.16f') #f.close() # print "===================================================================" # print " print avals shape here :" # print aVals_new.shape # # valold=TasmanianSG.TasmanianSparseGrid() # valold.copyGrid(valnew2) # valold.loadNeededPoints(aVals_new) #valold=valnew # valold.write("valnew_1." + str(i+1) + "theta_" + str(tT) + ".txt") #====================================================================== print "===============================================================" print " " print " Computation of a growth model of dimension ", n_agents ," finished after ", numits, " steps" print " " print "===============================================================" #====================================================================== # compute errors post.ls_error(n_agents, numstart, numits, No_samples) #====================================================================== print "===============================================================" print " " print " Errors are computed -- see errors_theta_NUM.txt" print " " print " Groupwork of Max, Clint and Ben at OSM Lab 2017" print "==============================================================="
valnew.write("valnew_1." + str(numstart) + ".txt") #write file to disk for restart # value function during iteration else: valnew.read("valnew_1." + str(numstart) + ".txt") #write file to disk for restart valold = TasmanianSG.TasmanianSparseGrid() valold = valnew for i in range(numstart, numits): print('i = {}'.format(i)) valnew = TasmanianSG.TasmanianSparseGrid() if i % 5 != 0: valnew = interpol_iter.sparse_grid_iter(valold, valold) else: valnew = interpol_iter.sparse_grid_iter(valold, valold, adaptive=True) valold = TasmanianSG.TasmanianSparseGrid() valnew.plotPoints2D() valold = valnew valnew.write("valnew_1." + str(i + 1) + ".txt") # Does not check until threshold and instead iterates and updates valnew until numits (iteration to end) #====================================================================== print("===============================================================") print(" ") print(" Computation of a growth model of dimension ", n_agents, " finished after ", numits, " steps") print(" ") print("===============================================================")
if (numstart == 0): valnew = interpol.sparse_grid(n_agents, iDepth, refinement_level, fTol) valnew.write("valnew_1." + str(numstart) + ".txt") #write file to disk for restart # value function during iteration else: valnew.read("valnew_1." + str(numstart) + ".txt") #write file to disk for restart valold = TasmanianSG.TasmanianSparseGrid() valold = valnew for i in range(numstart, numits): valnew = TasmanianSG.TasmanianSparseGrid() valnew = interpol_iter.sparse_grid_iter(n_agents, iDepth, valold, refinement_level, fTol) valold = TasmanianSG.TasmanianSparseGrid() valold = valnew valnew.write("valnew_1." + str(i + 1) + ".txt") #====================================================================== print "===============================================================" print " " print " Computation of a growth model of dimension ", n_agents, " finished after ", numits, " steps" print " " print "===============================================================" #====================================================================== # compute errors avg_err = post.ls_error(n_agents, numstart, numits, No_samples)
# value function during iteration else: valnew.read("valnew_1." + str(paramL['numstart']) + ".txt") #write file to disk for restart valListold = [] for state in range(5): valold=TasmanianSG.TasmanianSparseGrid() valold=valList[state] valListold.append(valold) for i in range(paramL['numstart'], paramL['numits']): for state in range(5): paramL['curr_theta'] = paramL['theta_list'][state] valnew=TasmanianSG.TasmanianSparseGrid() valnew=interpol_iter.sparse_grid_iter(paramL, valListold[state]) valList[state] = valnew for state in range(5): valold=TasmanianSG.TasmanianSparseGrid() valold=valList[state] valListold[state] = valold #====================================================================== print( "===============================================================") print( " " ) print( " Computation of a growth model of dimension ", paramL['n_agents'] ," finished after ", paramL['numits'], " steps") print( " " ) print( "===============================================================") #====================================================================== # compute errors
for itheta in range(ntheta): valnew[itheta]=interpol.sparse_grid(n_agents, iDepth, 1) valnew[itheta].write("valnew_" + str(theta_range[itheta]) + '_'+str(numstart)+".txt") #write file to disk for restart # value function during iteration else: for itheta in range(ntheta): valnew[itheta].read("valnew_" + str(theta_range[itheta]) + '_'+str(numstart)+".txt") #write file to disk for restart valold=[TasmanianSG.TasmanianSparseGrid()]*5 valold=valnew for i in range(numstart, numits): valnew=[TasmanianSG.TasmanianSparseGrid()]*5 for itheta in range(ntheta): valnew[itheta]=interpol_iter.sparse_grid_iter(n_agents, iDepth, valold, theta_range[itheta]) valold[itheta]=valnew[itheta] for itheta in range(ntheta): valnew[itheta].write("valnew_" + str(theta_range[itheta]) + '_'+str(i+1)+".txt") #====================================================================== print "===============================================================" print " " print " Computation of a growth model of dimension ", n_agents ," finished after ", numits, " steps" print " " print "===============================================================" #====================================================================== # compute errors avg_err=post.ls_error(n_agents, numstart, numits, No_samples)
if (numstart == 0): valnew = interpol.sparse_grid(n_agents, iDepth) valnew.write("valnew_1." + str(numstart) + ".txt") #write file to disk for restart # value function during iteration else: valnew.read("valnew_1." + str(numstart) + ".txt") #write file to disk for restart valold = TasmanianSG.TasmanianSparseGrid() valold = valnew for i in range(numstart, numits): valnew = TasmanianSG.TasmanianSparseGrid() valnew, values, gridpts = interpol_iter.sparse_grid_iter( n_agents, iDepth, valold) valold = TasmanianSG.TasmanianSparseGrid() valold = valnew valnew.write("valnew_1." + str(i + 1) + ".txt") print(i) #====================================================================== print("===============================================================") print(" ") print(" Computation of a growth model of dimension ", n_agents, " finished after ", numits, " steps") print(" ") print("===============================================================") #====================================================================== # compute errors avg_err = post.ls_error(n_agents, numstart, numits, No_samples)