Changeset 4124


Ignore:
Timestamp:
Dec 28, 2006, 2:42:12 PM (17 years ago)
Author:
ole
Message:

Finalising paper

Location:
anuga_work/publications/linuxconf_2006
Files:
5 deleted
2 edited

Legend:

Unmodified
Added
Removed
  • anuga_work/publications/linuxconf_2006/database1.bib

    r4123 r4124  
    5757  month =        {August},
    5858  date =         {9},
    59   number =       {32},
     59  volume =       {32},
    6060  pages =        {18-19}
    6161}
     
    7070  volume =       {144},
    7171  number =       {3/4},
    72   pages =        {839--855},
     72  pages =        {839--855}
    7373}
    7474
    7575
    7676@ARTICLE{Nielsen2006,
    77   author = {Ole Nielsen, Jane Sexton, Duncan Gray and Nick Bartzis},
    78   year = 2006,
     77  author = {O. Nielsen and J. Sexton and D. Gray and N. Bartzis},
    7978  title = {Modelling answers tsunami questions},
    8079  journal = {AusGeo News},
    8180  month = {September},
    8281  year = {2006},
    83   number = 83,
    84   note = {\url{http://www.ga.gov.au/ausgeonews/ausgeonews200609/modelling.jsp}
    85   }
     82  volume = 83,
     83  note = {\url{http://www.ga.gov.au/ausgeonews/ausgeonews200609/modelling.jsp}}
     84}
    8685
    8786
  • anuga_work/publications/linuxconf_2006/paper_ole_nielsen.tex

    r4123 r4124  
    3131\textsc{Australia}. \protect\url{mailto:Ole.Nielsen@ga.gov.au}}\footnotemark[1]
    3232\and
    33 S.~G.~Roberts\thanks{Dept. of Maths, Australian National University,
     33S.~G.~Roberts\thanks{Department of Mathematics, Australian National University,
    3434Canberra, \textsc{Australia}. \protect\url{mailto:stephen.roberts@anu.edu.au}}}
    3535
    36 \date{30 December 2006}
     36\date{28 December 2006}
    3737
    3838\newcommand{\AnuGA}{\textsc{Anuga}}
     
    5555
    5656
    57 %\graphicspath{{../Figures/}}
    5857
    5958\begin{document}
     
    7372for solving the conservative form of the Shallow Water Wave equation.
    7473In this paper we describe the model, the architecture and some applications.
    75 ANUGA has recently been released as Open Source. This strategy will enable
     74ANUGA has recently been released as Open Source to enable
    7675free access to the software and allow the scientific community to
    7776use, validate and contribute to the software in the future.
     
    8483%means that it is suitable for simulating water flow onto a beach or
    8584%dry land and around structures such as buildings.
    86 %
    87 %To set up a particular scenario the user generates a mesh with regions
    88 %and boundary segments identified by symbolic tags used to bind values
    89 %to arbitrary functions supplied during the simulation.  In addition,
    90 %all quantities may be assigned or updated by supplying either constant
    91 %values, arbitrary functions or general expressions combining existing
    92 %quantities.  Arbitrary forcing terms such such as wind stress or
    93 %atmospheric pressure gradients may also be supplied.  While this
    94 %interface provides great flexibility due to Python's object model,
    95 %dynamic typing and constructs such as generators, the computationally
    96 %intensive components are written for efficiency in the C language
    97 %working directly with the Numerical Python structures.
     85
     86
    9887\end{abstract}
    9988
    10089% By default we include a table of contents in each paper.
    101 \tableofcontents
     90%\tableofcontents
    10291
    10392% Use \verb|\section|, \verb|\subsection|, \verb|\subsubsection| and
    10493% possibly \verb|\paragraph| to structure your document.  Make sure
    10594% you \verb|\label| them for cross-referencing with \verb|\ref|\,.
     95
     96%\clearpage
    10697\section{Introduction}
    10798\label{sec:intro}
     
    137128technique is validated on a standard tsunami benchmark data set.
    138129Section~\ref{sec:software} describes the software implementation and
    139 the API while section~\ref{sec:validation} presents testing and
     130the API while section~\ref{sec:validation} presents some
    140131validation results.
    141132
     
    154145 h & {uh} & {vh} \\
    155146\end{array} }} \right]^T$ is the vector of conserved quantities; water depth
    156 $h$, $x$ momentum $uh$ and $y$ momentum $vh$. Other quantities
     147$h$, $x$-momentum $uh$ and $y$-momentum $vh$. Other quantities
    157148entering the system are bed elevation $z$ and stage (absolute water
    158149level) $w$, where the relation $w = z + h$ holds true at all times.
     
    292283
    293284\section{Software Implementation}
     285\label{sec:software}
    294286
    295287\AnuGA{} is mostly written in the object-oriented programming
     
    314306classes which allows for a 'pluggable' way of driving the model.
    315307The conserved quantities updated automatically by the numerical scheme
    316 are \code{stage} (water level) $w$, \code{xmomentum} $uh$ and \code{ymomentum}
    317 $vh$. The quanitites \code{elevation} $z$ and \code{friction} $\eta$ are
     308are stage (water level) $w$, $x$-momentum $uh$ and $y$-momentum
     309$vh$. The quanitites elevation $z$ and friction $\eta$ are
    318310quantities that are not updated automaticall but can be changed explicitly
    319 if the user wishes to. 
     311during run-time if the user wishes to do so. 
    320312
    321313To set up a scenario the user specifies the study area along with any internal
    322314regions where increased mesh resolution is required. External edges may
    323315be labelled using symbolic tags which are subsequently used to bind
    324 boundary condition objects to tagged segments of the boundary. 
    325 
    326 Figure \ref{fig:anuga mesh} shows an example of a mesh generated by \AnuGA{}.
    327 
     316boundary condition objects to tagged segments of the mesh boundary. 
     317The mesh is then generated using \AnuGA{}'s built-in mesh generator and
     318converted into the \code{Domain} object which provides all methods used to
     319setup and run the flow simulation. Figure \ref{fig:anuga mesh} shows an example of a mesh generated by \AnuGA{}.
    328320\begin{figure}
    329321\begin{center}
    330 \includegraphics[width=5.0cm,keepaspectratio=true]{tsunami-fig-1}
     322\includegraphics[width=4in,keepaspectratio=true]{tsunami-fig-1}
    331323\caption{Triangular mesh used in our finite volume method. Conserved
    332324quantities $h$, $uh$ and $vh$ are associated with each triangular cell.}
     
    335327\end{figure}
    336328
    337 The mesh is then generated using \AnuGA{}'s built-in mesh generator and
    338 converted into the \code{Domain} object which provides all methods used to
    339 setup and run the flow simulation.
    340 
    341 Next step is to setup initial conditions for each Quantity object. For
     329
     330
     331Next step is to setup initial conditions for each \code{Quantity} object. For
    342332the elevation $z$ this is typically obtained from bathymetric and
    343333topographic data sets. Setting initial values for quantities is done
     
    363353vertices or centroids and a penalised least squares technique is
    364354employed to populate the quantity in a smooth and stable way.
    365 \item A filename containing points and attributes.
    366 \item A Numerical Python array (or a list of numbers) ordered
    367 according to the internal data structure.
    368 \end{itemize}
    369 
    370 
    371 The parameter location determines whether the values should be
    372 assigned to triangle edge midpoints or vertices and region allows the
    373 operation to be restricted to a region specified by a symbolic tag or
    374 a set of indices.
    375 
    376355Since the least squares technique can be time consuming for large
    377356problems, \code{set_quantity} employs a caching technique which automatically
     
    379358cache.  This will typically speed up the build by several orders of
    380359magnitude after each computation has been performed once.
     360\item A filename containing points and attributes.
     361\item A Numerical Python array (or a list of numbers) ordered
     362according to the internal data structure.
     363\end{itemize}
     364The parameter location determines whether the values should be
     365assigned to triangle edge midpoints or vertices and region allows the
     366operation to be restricted to a region specified by a symbolic tag or
     367a set of indices.
    381368
    382369Boundary conditions are bound to symbolic tags through the method
    383370\code{domain.set_boundary} which takes as input a lookup table (implemented
    384 as a Python dictionary) of the form \code{\{tag: boundary_object\}}. 
     371as a Python dictionary) of the form \code{\{tag:~boundary_object\}}. 
    385372The boundary objects are all assumed to be callable functions of vectors x
    386373and y.  Several predefined standard boundary objects are available and
     
    401388In order to access the state of the simulation at regular time
    402389intervals, \AnuGA{} uses the method evolve:
    403 
    404390\begin{verbatim}
    405391For t in domain.evolve(yieldstep, duration):
    406     <do whatever>
     392    <model interrogation and modification>
    407393\end{verbatim}     
    408 
    409394The parameter \code{duration} specifies the time period over which
    410395evolve operates, and control is passed to the body of the for-loop at
     
    415400e.g.\ store model outputs, interrogate quantities or change the model
    416401itself at runtime. The evolve method has been implemented using a
    417 Python generator hence the reference to 'yield' in the parameter.
     402Python generator hence the reference to 'yield' in the parameter name.
    418403
    419404Figure \ref{fig:beach runup} shows a simulation of water flowing onto a
    420405hypothetical beach with obstacles. 
    421406A number of complex patterns are captured in this example including a shock where water reflected off the wall far (at the right hand side) meets the main flow. Other physical features are the standing waves and interference patterns.
    422 
    423 
     407See the \AnuGA{} User Manual at \url{http://sourceforge.net/projects/anuga} for more details and examples.
    424408\begin{figure}
    425409\begin{center}
    426 \includegraphics[width=5.0cm,keepaspectratio=true]{tsunami-fig-2}
     410\includegraphics[width=4in,keepaspectratio=true]{tsunami-fig-2}
    427411\caption{A hypothetical runup scenario.}
    428412\label{fig:beach runup}
    429413\end{center}
    430414\end{figure}
     415
    431416
    432417
     
    497482capturing hydraulic shocks due to the ability of the finite-volume
    498483method to accommodate discontinuities in the solution.
    499 
    500484\AnuGA{} can take as input bathymetric and topographic datasets and
    501485simulate the behaviour of riverine flooding, storm surge,
     
    504488ability to model complex scenarios. Further validation will be
    505489pursued as additional datasets become available.
    506 
    507490\AnuGA{} is already being used to model the behaviour of
    508491hydrodynamic natural hazards. This modelling capability is part of
     
    510493understand the potential impact from natural hazards in order to
    511494reduce their impact on Australian communities (see \cite{Nielsen2006}).
    512 
    513495The \AnuGA{} source code is available
    514496at \url{http://sourceforge.net/projects/anuga}.
Note: See TracChangeset for help on using the changeset viewer.