setplot.py.html | |
Source file: setplot.py | |
Directory: /Users/rjl/clawpack_src/clawpack_master/geoclaw/examples/1d_classic/bouss_wavetank_usace | |
Converted: Mon Feb 19 2024 at 14:31:27 using clawcode2html | |
This documentation file will not reflect any later changes in the source file. |
import os, sys from clawpack.visclaw import geoplot from clawpack.geoclaw.nonuniform_grid_tools import make_mapc2p from clawpack.clawutil.data import ClawData import numpy xlimits = [-14,8.19] outdir2 = None #outdir2 = os.path.abspath('_output_ms') if outdir2: if not os.path.isdir(outdir2): outdir2 = None def setplot(plotdata): plotdata.clearfigures() outdir1 = plotdata.outdir mapc2p1, mx_edge, xp_edge = make_mapc2p(os.path.join(outdir1,'celledges.data')) from clawpack.amrclaw.data import GaugeData setgauges = GaugeData() setgauges.read(outdir1) gauge_xc = {} for k in range(len(setgauges.gauges)): gauge = setgauges.gauges[k] gaugeno = gauge[0] gauge_xc[gaugeno] = gauge[1] if outdir2: mapc2p2, mx_edge, xp_edge = make_mapc2p(os.path.join(outdir2,'celledges.data')) def fix_layout(current_data): from pylab import tight_layout tight_layout() plotfigure = plotdata.new_plotfigure(name='domain', figno=0) plotfigure.kwargs = {'figsize':(8,7)} plotaxes = plotfigure.new_plotaxes() plotaxes.axescmd = 'subplot(311)' plotaxes.xlimits = xlimits plotaxes.ylimits = [-0.05,0.2] plotaxes.grid = True plotaxes.title = 'Surface displacement' plotitem = plotaxes.new_plotitem(plot_type='1d_plot') plotitem.plot_var = geoplot.surface plotitem.color = 'b' plotitem.MappedGrid = True plotitem.mapc2p = mapc2p1 if outdir2: plotitem = plotaxes.new_plotitem(plot_type='1d_plot') plotitem.outdir = outdir2 plotitem.plot_var = geoplot.surface plotitem.plotstyle = 'r--' plotitem.MappedGrid = True plotitem.mapc2p = mapc2p2 plotitem = plotaxes.new_plotitem(plot_type='1d_plot') #plotitem.show = False plotitem.plot_var = geoplot.topo plotitem.color = 'g' plotitem.MappedGrid = True plotitem.mapc2p = mapc2p1 plotaxes = plotfigure.new_plotaxes() plotaxes.axescmd = 'subplot(312)' plotaxes.xlimits = xlimits plotaxes.ylimits = [-0.6,0.6] plotaxes.grid = True plotaxes.title = 'Velocity' plotitem.MappedGrid = True plotitem.mapc2p = mapc2p1 plotitem = plotaxes.new_plotitem(plot_type='1d_plot') plotitem.plot_var = geoplot.u_velocity plotitem.color = 'b' plotitem.MappedGrid = True plotitem.mapc2p = mapc2p1 if outdir2: plotitem = plotaxes.new_plotitem(plot_type='1d_plot') plotitem.outdir = outdir2 plotitem.plot_var = geoplot.u_velocity plotitem.plotstyle = 'r--' plotitem.MappedGrid = True plotitem.mapc2p = mapc2p2 plotaxes = plotfigure.new_plotaxes() plotaxes.axescmd = 'subplot(313)' plotaxes.xlimits = xlimits plotaxes.ylimits = [-0.25,0.1] plotaxes.grid = True plotaxes.title = 'Full depth' plotaxes.afteraxes = fix_layout plotitem.MappedGrid = True plotitem.mapc2p = mapc2p1 plotitem = plotaxes.new_plotitem(plot_type='1d_fill_between') #plotitem.show = False plotitem.plot_var = geoplot.surface plotitem.plot_var2 = geoplot.topo plotitem.color = [.5,.5,1] plotitem.MappedGrid = True plotitem.mapc2p = mapc2p1 plotitem = plotaxes.new_plotitem(plot_type='1d_plot') #plotitem.show = False plotitem.plot_var = geoplot.topo plotitem.color = 'g' plotitem.MappedGrid = True plotitem.mapc2p = mapc2p1 plotitem = plotaxes.new_plotitem(plot_type='1d_plot') plotitem.plot_var = geoplot.surface plotitem.color = 'b' plotitem.MappedGrid = True plotitem.mapc2p = mapc2p1 #----------------------------------------- # Figures for gauges #----------------------------------------- plotfigure = plotdata.new_plotfigure(name='q', figno=300, \ type='each_gauge') plotfigure.clf_each_gauge = True plotfigure.figsize = (12,3) plotaxes = plotfigure.new_plotaxes() def fixgauge(current_data): from pylab import title gaugeno = current_data.gaugeno xc = gauge_xc[gaugeno] xp = mapc2p1(xc) #print('+++ xc,xp:', xc,xp) title('Surface elevation at Gauge %i, x = %.0f m' \ % (gaugeno, xp)) plotaxes.afteraxes = fixgauge plotaxes.xlimits = [0,25] plotaxes.ylimits = [-0.02, 0.08] plotaxes.grid = True plotaxes.title = 'Surface elevation eta' plotitem = plotaxes.new_plotitem(plot_type='1d_plot') plotitem.plot_var = 2 # eta plotitem.plotstyle = 'b-' #----------------------------------------- # Parameters used only when creating html and/or latex hardcopy # e.g., via pyclaw.plotters.frametools.printframes: plotdata.printfigs = True # print figures plotdata.print_format = 'png' # file format plotdata.print_framenos = 'all' # list of frames to print plotdata.print_gaugenos = 'all' # list of gauges to print plotdata.print_fignos = 'all' # list of figures to print plotdata.html = True # create html files of plots? plotdata.html_homelink = '../README.html' # pointer for top of index plotdata.latex = True # create latex file of plots? plotdata.latex_figsperline = 2 # layout of plots plotdata.latex_framesperline = 1 # layout of plots plotdata.latex_makepdf = False # also run pdflatex? plotdata.parallel = True # make multiple frame png's at once return plotdata