Changeset 4124
- Timestamp:
- Dec 28, 2006, 2:42:12 PM (18 years ago)
- Location:
- anuga_work/publications/linuxconf_2006
- Files:
-
- 5 deleted
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
anuga_work/publications/linuxconf_2006/database1.bib
r4123 r4124 57 57 month = {August}, 58 58 date = {9}, 59 number= {32},59 volume = {32}, 60 60 pages = {18-19} 61 61 } … … 70 70 volume = {144}, 71 71 number = {3/4}, 72 pages = {839--855} ,72 pages = {839--855} 73 73 } 74 74 75 75 76 76 @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}, 79 78 title = {Modelling answers tsunami questions}, 80 79 journal = {AusGeo News}, 81 80 month = {September}, 82 81 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 } 86 85 87 86 -
anuga_work/publications/linuxconf_2006/paper_ole_nielsen.tex
r4123 r4124 31 31 \textsc{Australia}. \protect\url{mailto:Ole.Nielsen@ga.gov.au}}\footnotemark[1] 32 32 \and 33 S.~G.~Roberts\thanks{Dep t. of Maths, Australian National University,33 S.~G.~Roberts\thanks{Department of Mathematics, Australian National University, 34 34 Canberra, \textsc{Australia}. \protect\url{mailto:stephen.roberts@anu.edu.au}}} 35 35 36 \date{ 30December 2006}36 \date{28 December 2006} 37 37 38 38 \newcommand{\AnuGA}{\textsc{Anuga}} … … 55 55 56 56 57 %\graphicspath{{../Figures/}}58 57 59 58 \begin{document} … … 73 72 for solving the conservative form of the Shallow Water Wave equation. 74 73 In this paper we describe the model, the architecture and some applications. 75 ANUGA has recently been released as Open Source . This strategy willenable74 ANUGA has recently been released as Open Source to enable 76 75 free access to the software and allow the scientific community to 77 76 use, validate and contribute to the software in the future. … … 84 83 %means that it is suitable for simulating water flow onto a beach or 85 84 %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 98 87 \end{abstract} 99 88 100 89 % By default we include a table of contents in each paper. 101 \tableofcontents90 %\tableofcontents 102 91 103 92 % Use \verb|\section|, \verb|\subsection|, \verb|\subsubsection| and 104 93 % possibly \verb|\paragraph| to structure your document. Make sure 105 94 % you \verb|\label| them for cross-referencing with \verb|\ref|\,. 95 96 %\clearpage 106 97 \section{Introduction} 107 98 \label{sec:intro} … … 137 128 technique is validated on a standard tsunami benchmark data set. 138 129 Section~\ref{sec:software} describes the software implementation and 139 the API while section~\ref{sec:validation} presents testing and130 the API while section~\ref{sec:validation} presents some 140 131 validation results. 141 132 … … 154 145 h & {uh} & {vh} \\ 155 146 \end{array} }} \right]^T$ is the vector of conserved quantities; water depth 156 $h$, $x$ momentum $uh$ and $y$momentum $vh$. Other quantities147 $h$, $x$-momentum $uh$ and $y$-momentum $vh$. Other quantities 157 148 entering the system are bed elevation $z$ and stage (absolute water 158 149 level) $w$, where the relation $w = z + h$ holds true at all times. … … 292 283 293 284 \section{Software Implementation} 285 \label{sec:software} 294 286 295 287 \AnuGA{} is mostly written in the object-oriented programming … … 314 306 classes which allows for a 'pluggable' way of driving the model. 315 307 The 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$ are308 are stage (water level) $w$, $x$-momentum $uh$ and $y$-momentum 309 $vh$. The quanitites elevation $z$ and friction $\eta$ are 318 310 quantities that are not updated automaticall but can be changed explicitly 319 if the user wishes to.311 during run-time if the user wishes to do so. 320 312 321 313 To set up a scenario the user specifies the study area along with any internal 322 314 regions where increased mesh resolution is required. External edges may 323 315 be 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 316 boundary condition objects to tagged segments of the mesh boundary. 317 The mesh is then generated using \AnuGA{}'s built-in mesh generator and 318 converted into the \code{Domain} object which provides all methods used to 319 setup and run the flow simulation. Figure \ref{fig:anuga mesh} shows an example of a mesh generated by \AnuGA{}. 328 320 \begin{figure} 329 321 \begin{center} 330 \includegraphics[width= 5.0cm,keepaspectratio=true]{tsunami-fig-1}322 \includegraphics[width=4in,keepaspectratio=true]{tsunami-fig-1} 331 323 \caption{Triangular mesh used in our finite volume method. Conserved 332 324 quantities $h$, $uh$ and $vh$ are associated with each triangular cell.} … … 335 327 \end{figure} 336 328 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 331 Next step is to setup initial conditions for each \code{Quantity} object. For 342 332 the elevation $z$ this is typically obtained from bathymetric and 343 333 topographic data sets. Setting initial values for quantities is done … … 363 353 vertices or centroids and a penalised least squares technique is 364 354 employed 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) ordered367 according to the internal data structure.368 \end{itemize}369 370 371 The parameter location determines whether the values should be372 assigned to triangle edge midpoints or vertices and region allows the373 operation to be restricted to a region specified by a symbolic tag or374 a set of indices.375 376 355 Since the least squares technique can be time consuming for large 377 356 problems, \code{set_quantity} employs a caching technique which automatically … … 379 358 cache. This will typically speed up the build by several orders of 380 359 magnitude 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 362 according to the internal data structure. 363 \end{itemize} 364 The parameter location determines whether the values should be 365 assigned to triangle edge midpoints or vertices and region allows the 366 operation to be restricted to a region specified by a symbolic tag or 367 a set of indices. 381 368 382 369 Boundary conditions are bound to symbolic tags through the method 383 370 \code{domain.set_boundary} which takes as input a lookup table (implemented 384 as a Python dictionary) of the form \code{\{tag: 371 as a Python dictionary) of the form \code{\{tag:~boundary_object\}}. 385 372 The boundary objects are all assumed to be callable functions of vectors x 386 373 and y. Several predefined standard boundary objects are available and … … 401 388 In order to access the state of the simulation at regular time 402 389 intervals, \AnuGA{} uses the method evolve: 403 404 390 \begin{verbatim} 405 391 For t in domain.evolve(yieldstep, duration): 406 < do whatever>392 <model interrogation and modification> 407 393 \end{verbatim} 408 409 394 The parameter \code{duration} specifies the time period over which 410 395 evolve operates, and control is passed to the body of the for-loop at … … 415 400 e.g.\ store model outputs, interrogate quantities or change the model 416 401 itself at runtime. The evolve method has been implemented using a 417 Python generator hence the reference to 'yield' in the parameter .402 Python generator hence the reference to 'yield' in the parameter name. 418 403 419 404 Figure \ref{fig:beach runup} shows a simulation of water flowing onto a 420 405 hypothetical beach with obstacles. 421 406 A 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 407 See the \AnuGA{} User Manual at \url{http://sourceforge.net/projects/anuga} for more details and examples. 424 408 \begin{figure} 425 409 \begin{center} 426 \includegraphics[width= 5.0cm,keepaspectratio=true]{tsunami-fig-2}410 \includegraphics[width=4in,keepaspectratio=true]{tsunami-fig-2} 427 411 \caption{A hypothetical runup scenario.} 428 412 \label{fig:beach runup} 429 413 \end{center} 430 414 \end{figure} 415 431 416 432 417 … … 497 482 capturing hydraulic shocks due to the ability of the finite-volume 498 483 method to accommodate discontinuities in the solution. 499 500 484 \AnuGA{} can take as input bathymetric and topographic datasets and 501 485 simulate the behaviour of riverine flooding, storm surge, … … 504 488 ability to model complex scenarios. Further validation will be 505 489 pursued as additional datasets become available. 506 507 490 \AnuGA{} is already being used to model the behaviour of 508 491 hydrodynamic natural hazards. This modelling capability is part of … … 510 493 understand the potential impact from natural hazards in order to 511 494 reduce their impact on Australian communities (see \cite{Nielsen2006}). 512 513 495 The \AnuGA{} source code is available 514 496 at \url{http://sourceforge.net/projects/anuga}.
Note: See TracChangeset
for help on using the changeset viewer.