Mercurial > hg > ishara
diff general/numerical/scalar/safe_exp2.m @ 17:cb249ba61e9e
Moved from parent directory.
author | samer |
---|---|
date | Thu, 17 Jan 2013 13:21:46 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/general/numerical/scalar/safe_exp2.m Thu Jan 17 13:21:46 2013 +0000 @@ -0,0 +1,11 @@ +function [y,k]=safe_exp2(x,l) +% safe_exp2 - high dynamic range exponential +% +% safe_exp2 :: X:[[N,M]], L:real -> [[N,M]], [[1,M]]. +% +% returns y and k such that exp(X) = y * exp(k) and +% maximum value in y is exp(L). +% Maximum sensible value of L is log(realmax)=709.78. + +k=max(x,[],1)-l; +y=exp(x-repmat(k,size(x,1),1));