In the recent years, verified methods have been applied in
engineering to propagate uncertainty, for example, measurement
uncertainty, through a given system and to compute its parameter
sensitivities. The measurement uncertainty becomes especially
problematic in biomechanics where the presence of living subjects
prohibits frequent use of some more precise methods that have adverse
health effects. One of the drawbacks of verified solutions to this
problem from the point of view of mechanics is that they use
derivatives which are in general not available inside numerical
modeling and simulation software.
The problem of obtaining derivatives can be solved, for example, by
using algorithmic differentiation implemented through overloading.
However, this presupposes that the code we use does not contain
conditional expressions that depend on their argument, that is,
directives of the form {\tt IF x<0 THEN f(x)=f1(x)}. Generally, this
too rigid restriction obstructs the applicability of verified
methods. Recently, algorithmic differentiation tools have been
developed that can handle conditional expressions for floating-point-
based codes (e.g. {\sc CppAD} \url{http://www.coin-or.org/CppAD/}).
The task now is to adjust them to interval-based data types.
However, this task is not as straightforward as it might seem. An
interval comparison operator might have a number of semantically
different definitions. The one most suitable in our situation can
take not only true or false as its value. There is also a third case
to consider where we cannot tell how one interval compares to
another, the so-called `maybe case'. In this talk, we will
discuss possible solutions to the problem of differentiating
piecewise functions in interval-based implementations.
Moreover, we will give an idea of how computer algebra methods can be
applied in a general biomechanical context. |