def make_all_frames(figno): frames = range(85) plotfiles = [] for frameno in frames: plotframe(frameno) frstring = str(int(frameno)).zfill(3) name = "monai-%s-frame%s.png" % (figno, frstring) plotfiles.append(name) mlab.savefig("monai-%s-frame%s.png" % (figno, frstring)) make_movie(plotfiles, moviename='monai-%s.html' % figno)
def make_all_frames(water_opacity): fortqfiles = glob.glob(os.path.join(outdir,'fort.q*')) frames = range(len(fortqfiles)) print "Will make %s frames" % len(fortqfiles) plotfiles = [] for frameno in frames: plotframe(frameno,1,water_opacity) frstring = str(int(frameno)).zfill(3) name = "movie-frame%s.png" % frstring plotfiles.append(name) mlab.savefig("movie-frame%s.png" % frstring) make_movie(plotfiles, moviename='movie.html')
def make_all_frames(figno): frames = range(85) plotfiles = [] for frameno in frames: plotframe(frameno) frstring = str(int(frameno)).zfill(3) name = "monai-%s-frame%s.png" % (figno,frstring) plotfiles.append(name) mlab.savefig("monai-%s-frame%s.png" % (figno,frstring)) make_movie(plotfiles, moviename='monai-%s.html' % figno) #os.system("convert island-%s-frame%s.png island-%s-frame%s.eps" \ # % (figno,frstring,figno,frstring))
import html_movie plotfiles = [] for n in range(21): fname = "AdvectionCTU_frame%s.png" % str(n).rjust(4,'0') plotfiles.append(fname) html_movie.make_movie(plotfiles, "AdvectionCTU_movie.html")
def make_okada_dz_witht(fm, faultparams, times, fname): mx = faultparams['mx'] my = faultparams['my'] X = linspace(faultparams['xlower'], faultparams['xupper'], mx) Y = linspace(faultparams['ylower'], faultparams['yupper'], my) mt = len(times) dZ = zeros((mt, my, mx)) first_time = -ones(fm.arrayshape) okadaparams = {} dZsubfault = [] print "Making Okada dZ for each of %s subfaults" \ % str(fm.arrayshape[0]*fm.arrayshape[1]) for i in range(fm.arrayshape[0]): dZsubi = [] for j in range(fm.arrayshape[1]): sys.stdout.write("%s.." % str(j + i * fm.arrayshape[1])) sys.stdout.flush() okadaparams["Focal_Depth"] = fm.depth[i, j] okadaparams["Fault_Length"] = fm.subfault_length okadaparams["Fault_Width"] = fm.subfault_width okadaparams["Dislocation"] = fm.slip[i, j] okadaparams["Strike_Direction"] = fm.strike[i, j] okadaparams["Dip_Angle"] = fm.dip[i, j] okadaparams["Slip_Angle"] = fm.rake[i, j] okadaparams["Fault_Latitude"] = fm.latitude[i, j] okadaparams["Fault_Longitude"] = fm.longitude[i, j] okadaparams["LatLong_Location"] = "centroid" dZij = okadamap(okadaparams, X, Y) dZsubi.append(dZij) dZsubfault.append(dZsubi) sys.stdout.write("\nDone\n") dZsubfault = array(dZsubfault) dZ = zeros((mx, my)) tprev = times.min() - 1. fid = open(fname, 'w') pngfiles = [] if 0. not in times: times = hstack(([0.], times)) print "Making time-dependent dZ for each of %s times" \ % str(len(times)) for frameno, t in enumerate(times): ruptured = [] # add to dZ any slip during time interval tprev to t: for i in range(fm.arrayshape[0]): for j in range(fm.arrayshape[1]): if (fm.rupture_initial_time[i,j] > tprev) and \ (fm.rupture_initial_time[i,j] <= t): dZ = dZ + dZsubfault[i, j] print "Adding subfault (%s,%s) at time %s... rupture_initial_time = %s" \ % (i,j,t,fm.rupture_initial_time[i,j]) ruptured.append((i, j)) # write out dZ at this time: for jj in range(len(Y)): j = -1 - jj for i in range(len(X)): fid.write('%012.6e %012.6e %012.6e %012.6e \n' \ % (t,X[i],Y[j],dZ[j,i])) print "Made dZ at time %s" % t plot_dZ = True if plot_dZ: figure(5) clf() plot(fm.fault_bdry[:, 0], fm.fault_bdry[:, 1], 'k') cmap = colormaps.blue_white_red pcolor(X, Y, dZ, cmap=cmap) for (i, j) in ruptured: # plot centroids of the fault segments that ruptured # during this time increment: plot([fm.longitude[i, j]], [fm.latitude[i, j]], 'go') clim(-10, 10) colorbar() contour(X, Y, dZ, linspace(-13, 13, 14), colors='k') title("dZ at time t = %10.2f" % t) draw() fname = "dZframe%s.png" % str(frameno).zfill(4) savefig(fname) pngfiles.append(fname) tprev = t fid.close() print "Created dtopo file ", fname if plot_dZ: html_movie.make_movie(pngfiles, "index.html") return X, Y, dZ
def make_okada_dz_witht(fm, faultparams, times, fname): mx = faultparams['mx'] my = faultparams['my'] X=linspace(faultparams['xlower'],faultparams['xupper'],mx) Y=linspace(faultparams['ylower'],faultparams['yupper'],my) mt = len(times) dZ = zeros((mt,my,mx)) first_time = -ones(fm.arrayshape) okadaparams = {} dZsubfault = [] print "Making Okada dZ for each of %s subfaults" \ % str(fm.arrayshape[0]*fm.arrayshape[1]) for i in range(fm.arrayshape[0]): dZsubi = [] for j in range(fm.arrayshape[1]): sys.stdout.write("%s.." % str(j+i*fm.arrayshape[1])) sys.stdout.flush() okadaparams["Focal_Depth"] = fm.depth[i,j] okadaparams["Fault_Length"] = fm.subfault_length okadaparams["Fault_Width"] = fm.subfault_width okadaparams["Dislocation"] = fm.slip[i,j] okadaparams["Strike_Direction"] = fm.strike[i,j] okadaparams["Dip_Angle"] = fm.dip[i,j] okadaparams["Slip_Angle"] = fm.rake[i,j] okadaparams["Fault_Latitude"] = fm.latitude[i,j] okadaparams["Fault_Longitude"] = fm.longitude[i,j] okadaparams["LatLong_Location"] = "centroid" dZij = okadamap(okadaparams, X, Y) dZsubi.append(dZij) dZsubfault.append(dZsubi) sys.stdout.write("\nDone\n") dZsubfault = array(dZsubfault) dZ = zeros((mx,my)) tprev = times.min() - 1. fid = open(fname, 'w') pngfiles = [] if 0. not in times: times = hstack(([0.], times)) print "Making time-dependent dZ for each of %s times" \ % str(len(times)) for frameno,t in enumerate(times): ruptured = [] # add to dZ any slip during time interval tprev to t: for i in range(fm.arrayshape[0]): for j in range(fm.arrayshape[1]): if (fm.rupture_initial_time[i,j] > tprev) and \ (fm.rupture_initial_time[i,j] <= t): dZ = dZ + dZsubfault[i,j] print "Adding subfault (%s,%s) at time %s... rupture_initial_time = %s" \ % (i,j,t,fm.rupture_initial_time[i,j]) ruptured.append((i,j)) # write out dZ at this time: for jj in range(len(Y)): j=-1-jj for i in range(len(X)) : fid.write('%012.6e %012.6e %012.6e %012.6e \n' \ % (t,X[i],Y[j],dZ[j,i])) print "Made dZ at time %s" % t plot_dZ = True if plot_dZ: figure(5) clf() plot(fm.fault_bdry[:,0], fm.fault_bdry[:,1], 'k') cmap = colormaps.blue_white_red pcolor(X,Y,dZ,cmap=cmap) for (i,j) in ruptured: # plot centroids of the fault segments that ruptured # during this time increment: plot([fm.longitude[i,j]],[fm.latitude[i,j]],'go') clim(-10,10) colorbar() contour(X,Y,dZ,linspace(-13,13,14),colors='k') title("dZ at time t = %10.2f" % t) draw() fname = "dZframe%s.png" % str(frameno).zfill(4) savefig(fname) pngfiles.append(fname) tprev = t fid.close() print "Created dtopo file ", fname if plot_dZ: html_movie.make_movie(pngfiles, "index.html") return X,Y,dZ