README.html Source file:   README.txt Directory:   /Users/rjl/git/rjleveque/clawpack-4.6.3/book/chap3/acousimple Converted:   Mon Jan 21 2013 at 20:15:43   using clawcode2html This documentation file will not reflect any later changes in the source file.

$\phantom{******** If you see this on the webpage then the browser could not locate *********}$
$\phantom{******** the jsMath file load.js *********}$

$\newcommand{\vector}[1]{\left[\begin{array}{c} #1 \end{array}\right]}$ $\newenvironment{matrix}{\left[\begin{array}{cccccccccc}} {\end{array}\right]}$ $\newcommand{\A}{{\cal A}}$ $\newcommand{\W}{{\cal W}}$




## Clawpack Sample Code

Example [book/chap3/acousimple] to accompany Figure 3.1 of the book
Finite Volume Methods for Hyperbolic Problems by R. J. LeVeque.

Converted to Clawpack 4.4 form by RJL in 2009.

#### Description:

1d acoustics in a constant medium. $q_t + A q_x = 0$ where $q(x,t) = \vector{ p(x,t)\\ u(x,t)}$ and the coefficient matrix is $A = \begin{matrix} 0 & K\\ 1/\rho & 0 \end{matrix}.$

#### Plots of results

After running this code and creating plots via "make .plots", you should be able to view the plots in _plots/_PlotIndex.html .

#### Fortran files

Makefile [.html]
Determines which version of fortran files are used when compiling the code with make.

Also provides options for running the code and plotting results. See the documentation at $CLAW/doc/? setprob.f95 [.html] A routine by this name is called by the library routine clawpack/1d/lib/main.f95 [.html] and is generally used to set any values needed for the specific problem being solved. In this example, values specifying the material and the intitial conditions are read from the file setprob.data [.html]. rp1.f [.html] This is the Riemann solver, which takes the$q$values stored in the arrays ql and qr and returns the waves in the array wave and speeds in the array s that result in solving the Riemann problem at each cell interface, and the fluctuations amdq and apdq. See$CLAW/doc/rp1.html for more information about 1d Riemann solvers.

qinit.f [.html]
This subroutine sets the initial data $q(x,0)$ at time $t=0$.

#### Python files

setrun.py [.html]
This file contains a function that specifies the run-time parameters to be used. "python setrun.py" creates data files *.data needed by the Fortran codes.

Some parameters that you might want to modify are described in the documentation .

setplot.py [.html]
This file contains a function that specifies what plots will be done and sets various plotting parameters.

#### Data files

Note: The files *.data are generated when setrun.py [.html] is executed.

claw.data [.html]
This file contains a number of parameter values that are used by CLAWPACK. The values in this file are read by the library routine clawpack/1d/lib/main.f [.html].

setprob.data [.html]
This file contains the advection velocity $u$ and various other parameters used in setting the initial conditions. Values in this file are read in by the subroutine setprob.f95 [.html].

#### Library routines

In addition to the Fortran routines in this library, several library routines from \$CLAW/clawpack/1d/lib are used. See the Makefile [.html] to determine which ones are used.