From 0faf6e1981c45e95f05063047a5dbbcaa3bfcd7c Mon Sep 17 00:00:00 2001
From: Marco Ratto <marco.ratto@jrc.ec.europa.eu>
Date: Thu, 16 Apr 2015 16:13:00 +0200
Subject: [PATCH] Allow inverse transform and set minimum threshold for lam
---
matlab/gsa/log_trans_.m | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/matlab/gsa/log_trans_.m b/matlab/gsa/log_trans_.m
index d8c726c5ff..2f48c71567 100644
--- a/matlab/gsa/log_trans_.m
+++ b/matlab/gsa/log_trans_.m
@@ -1,4 +1,4 @@
-function [yy, xdir, isig, lam]=log_trans_(y0,xdir0)
+function [yy, xdir, isig, lam]=log_trans_(y0,xdir0,isig,lam)
% Copyright (C) 2012 Dynare Team
%
@@ -17,6 +17,12 @@ function [yy, xdir, isig, lam]=log_trans_(y0,xdir0)
% You should have received a copy of the GNU General Public License
% along with Dynare. If not, see <http://www.gnu.org/licenses/>.
+if nargin==4,
+ % inverse transformation
+ yy = (exp(y0)-lam)*isig;
+ return
+end
+
if nargin==1,
xdir0='';
end
@@ -67,5 +73,6 @@ else
lam = -min(y0)+abs(median(y0)); %abs(100*(1+min(y0)));
end
end
+ lam = max(lam,0);
yy = log(y0+lam);
end
--
GitLab