|
maketopo.py.html |
|
|
Source file: maketopo.py
|
|
Directory: /Users/rjl/clawpack_src/clawpack_master/geoclaw/examples/tsunami/island-particles
|
|
Converted: Fri Aug 23 2024 at 11:41:39
using clawcode2html
|
|
This documentation file will
not reflect any later changes in the source file.
|
"""
Module to create topo and qinit data files for this example.
"""
from __future__ import absolute_import
from clawpack.geoclaw.topotools import Topography
from numpy import *
def maketopo():
"""
Output topography file for the entire domain
"""
nxpoints = 201
nypoints = 241
xlower = 0.e0
xupper = 100.e0
ylower = 0.e0
yupper = 50.e0
outfile= "island.tt3"
topography = Topography(topo_func=topo)
topography.x = linspace(xlower,xupper,nxpoints)
topography.y = linspace(ylower,yupper,nypoints)
topography.write(outfile, topo_type=3, Z_format="%22.15e")
def makeqinit():
"""
Create qinit data file
"""
nxpoints = 101
nypoints = 101
xlower = -50.e0
xupper = 50.e0
yupper = 50.e0
ylower = -50.e0
outfile= "qinit.xyz"
topography = Topography(topo_func=qinit)
topography.x = linspace(xlower,xupper,nxpoints)
topography.y = linspace(ylower,yupper,nypoints)
topography.write(outfile, topo_type=1)
def topo(x,y):
"""
Island
"""
ze = -((x-40.)**2 + (y-35.)**2)/20.
#z_island = where(ze>-10., 100.*exp(ze), 0.)
z_island = where(ze>-10., 150.*exp(ze), 0.)
z = -50 + z_island
return z
def qinit(x,y):
"""
Dam break
"""
from numpy import where
eta = where(x<10, 40., 0.)
return eta
if __name__=='__main__':
maketopo()
makeqinit()