Error accumulation / propagation




If you have some uncertainty above the value of H,   you can represent 
it as h+dh

for some presumably small quantity dh.  Then how does the value of dh affect
the value of sin(H) = sin(h+dh)?

A simple way is to compute  taylor(sin(h+dh),dh,0, 1)     which tells 
you   sin(h)+ cos(h)*dh to
a 1stt order linear approximation.  You can carry more terms and/or you 
can do this for more variables, e.g.

taylor(sin(h+dh)*cos(g+dg) ,[dh,dg],0,2);

gives terms up to total degree 2, e.g.  dh*dg  or dg^2.

I don't see how there is a problem if dh, dg  etc are small -- so that 
dh^2 is very small etc.



Another way would be to use interval arithmetic, and represent H = 
interval(h_low, h_high),
and propagate uncertainty that way.   In spite of several interval 
arithmetic proposals,
and implementations in Lisp, nothing has been installed in Maxima by 
default.  It works
only if h_low and h_high are numeric,  and gives worst case 
"containment" values that
guarantee to contain the right answer, but may be unnecessarily wide.

I didn't see that the original poster was asking about using Maxima for 
arithmetic on
distributions, but maybe that's my uninformed reading.