CLAWPACK               maketopo.py.html        
 Source file:   maketopo.py
 Directory:   /var/www/html/clawpack/links/noaa-tsunami-benchmarks/conical-island/conical
 Converted:   Mon Jan 24 2011 at 14:47:16   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 topotools import topo1writer, topo2writer
from numpy import *

def maketopo():
    """
    Output topography file for the entire domain
    """
    nxpoints=300
    nypoints=300
    xupper=15.e0
    yupper=15.e0
    xll = -15.e0
    yll = -15.e0
    #outfile= "island.topotype1"
    #topo1writer(outfile,topo,xll,xupper,yll,yupper,nxpoints,nypoints)
    outfile= "island.topotype2"
    topo2writer(outfile,topo,xll,xupper,yll,yupper,nxpoints,nypoints)

def makeqinit():
    """
    Create qinit data file
    """
    nxpoints=100
    nypoints=100
    xupper=10.e0
    yupper=10.e0
    xll = -10.e0
    yll = -10.e0
    outfile= "wave.xyz"
    topo1writer(outfile,qinit,xll,xupper,yll,yupper,nxpoints,nypoints)

def topo(x,y):
    """
    Conical island
    """
    # Depth of water: 0.32 or 0.42 meters for benchmarks.
    depth = 0.32
    r = sqrt(x**2 + y**2) 
    z = where(r < 1.1, 0.625, 0.625 - 0.25*(r-1.1))
    z = where(r < 3.6, z, 0.)
    z = z - depth
    return z


def qinit(x,y):
    """
    Wave approaching from left.
    (Used as initial test problem)
    """
    hjump = 0.3
    z = where((x > -9.) & (x < -7.), hjump, 0.)
    return z

if __name__=='__main__':
    maketopo()
    #makeqinit()