Skip to content

Latest commit

 

History

History
170 lines (116 loc) · 5.62 KB

testing.rst

File metadata and controls

170 lines (116 loc) · 5.62 KB

Testing

In AvaFrame we provide a continuously growing test suite. This includes tests that target model verification and model validation. The former are used to test the numerical implementation of the mathematical model, whereas the latter are aiming at testing if the mathematical model employed is appropriate to describe the physical processes of the desired application, in our case the simulation of dense snow avalanches.

In the following, a brief description of the available tests is given.

Note

This section is currently under development and will be updated regularly.

Note

See this example pdf (25mb) how we apply these tests during development.

Tests for model verification

This section includes testing of bits and pieces of the model code up to tests that check whether the full workflow is numerically robust. However, at the 'smallest scale', where individual functions are tested, we also refer to the Section about pytests: develop:How to test code.

Rotational Symmetry

In this test, a pyramid-shaped topography is used to test whether different grid alignments in respect to the topography and hence flow direction cause problems for the model implementation. For this test, we simply provide two pyramid shaped topographies, where one is rotated around the z-axis to change the orientation of the pyramid's facets with respect to the mesh.

Dambreak problem

This test is based on a Riemann problem, where the initial condition is described by two different states that are separated by a discontinuity. In FaMa2012 exact solutions are derived for this problem, based on the Savage-Hutter model to describe the granular flow. Here, we provide an implementation of one of the seven cases presented in FaMa2012. In Test 2, the initial velocity is zero and a granular mass is suddenly released and flows downslope. For further details have a look at the module :pyana1Tests.damBreak and the Section moduleAna1Tests:Dambreak test.

Similarity Solution

This test makes use of semi-analytic solution of a sliding granular mass on an inclined plane. In HuSiSaNo1993 the semi-analytic solution is derived for this problem, based on the Savage-Hutter shallow flow model to describe the granular flow. Here, we provide an implementation of the similarity solution and compare it to the output of a numerical simulation. For further details have a look at the module :pyana1Tests.simiSol and the Section moduleana1Tests:Similarity solution.

Tests for model validation

In this section, tests that check whether the chosen mathematical model is suitable to represent the problem at hand can be found. Currently, we provide idealized and real-world topographies that can be used for avalanche simulations. Additionally, there are several functions that can be used to analyse the simulation results and compare them to other data such as results from other models or observations. For this, we refer to Sections moduleAna3AIMEC:ana3AIMEC: Aimec and moduleOut3Plot:outQuickPlot.

Idealized test cases

We provide a range of idealized topographies to perform avalanche simulations including different release area scenarios. Some of the topographies also include entrainment and/or resistance areas. These can be found in data/NameOfAvalanche. The functions to produce these can be found in module :pyin3Utils/generateTopo.py.

Bowl - BL

Bowl shaped topopraphy. Used to test e.g. rotational symmetry.

Flat Plane - FP

Inclined Plane - IP

IP (Inclined plane)

Parabolic slope - PF

Parabolic slope with flat foreland

Hockeystick - HS

Hockeystick with linear slope and flat foreland and smooth transition

Helix - HX

Helix-shaped topography

Pyramid - PY

pyramid-shaped topography, optional with flat foreland

Real-world test cases

We provide a range of real-word topographies to perform avalanche simulations including different release area scenarios including entrainment areas. These can be found in data/NameOfAvalanche.

Note

All images give you a bigger version on click.

Alr

image

image

Gar

image

image

Hit

image

image

Kot

image

image

Mal

image

image

Wog

image

image