On 24/10/2008 12:42 PM, A.Noufaily wrote:
Dear all,

I would be grateful if anyone can help me with the following:

My aim is to compute explicitely the sum S=A+B where A=sum(exp(c_i/d)),
i=1,...,n;
B, c_i, and d are real numbers with -Inf<B,c_i<+Inf; and d>0.
The problem is that when c_i/d >710 (for some i) R is setting
exp(c_i/d) to be equal to +Inf and hence the whole summation S.
So in simple cases where for example c_i=8 (for some i), and d=0.01 the
whole summation is turning out to be infinite.
Is there a way to get round that in R?
Can anyone suggest any computational trick to calculate S when c_i/d>710
(for some i)?

Work on a log scale.  Use the identity that

A+B = A*(1 + B/A)
    = exp(log(A) + log(1 + B/A))

(where you chose A to be the biggest term in the sum).

Duncan Murdoch


Any suggestions would be much appreciated.

Regards,

Amy





---------------------------------
The Open University is incorporated by Royal Charter (RC 000391), an exempt charity 
in England & Wales and a charity registered in Scotland (SC 038302).

        [[alternative HTML version deleted]]

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to