You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@commons.apache.org by Adrien ANDRÉ <ad...@legos.obs-mip.fr> on 2013/01/16 16:14:13 UTC

[math] Propagation of uncertainty

Hi all,

does someone know how i could integrate propagation of uncertainty
(https://en.wikipedia.org/wiki/Error_propagation) using something better
organized than Michael Thomas Flanagan's ErrorProp Class
(http://www.ee.ucl.ac.uk/~mflanaga/java/ErrorProp.html)?

Regards,

Adrien

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
For additional commands, e-mail: user-help@commons.apache.org


Re: [math] Propagation of uncertainty

Posted by Luc Maisonobe <lu...@spaceroots.org>.
Le 16/01/2013 16:14, Adrien ANDRÉ a écrit :
> Hi all,

Hi Adrien,

> 
> does someone know how i could integrate propagation of uncertainty
> (https://en.wikipedia.org/wiki/Error_propagation) using something better
> organized than Michael Thomas Flanagan's ErrorProp Class
> (http://www.ee.ucl.ac.uk/~mflanaga/java/ErrorProp.html)?

For now, there is no direct support for this in [math]. However, you may
find a basic building block for this by replacing double variables with
the new DerivativeStructure class. When you have a function f(x1, x2,
... xn), using DerivativeStructure allows you to get:

  df/dx1 * delta_1, df/dx2 * delta_2, ... df/dxn * delta_n

For the vanilla use of DerivativeStructure, the delta_k values are here
because we use them to propagate derivatives using chained function
calls: we initialize delta_i with 1 for the innermost function so it
represent the independent variables, and then propagate them from
function calls to function calls, so when we compute f(g(h(x)))) we
really have df/dx at the end, not df/dg.

In your case, you can initialize the delta_i with your initial
uncertainties instead of 1, so you will really be propagating variances.

best regards,
Luc

> 
> Regards,
> 
> Adrien
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
> For additional commands, e-mail: user-help@commons.apache.org
> 
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
For additional commands, e-mail: user-help@commons.apache.org