aboutsummaryrefslogtreecommitdiffstats
path: root/statistics
diff options
context:
space:
mode:
authorastrojhgu <astrojhgu@ed2142bd-67ad-457f-ba7c-d818d4011675>2009-04-08 09:17:46 +0000
committerastrojhgu <astrojhgu@ed2142bd-67ad-457f-ba7c-d818d4011675>2009-04-08 09:17:46 +0000
commit61ee2ce37185c2b5b8b6d70064d80a0acabdfba5 (patch)
treeacfdd2fb473ea36865e9990773adcdaa1d0c535d /statistics
parentb83ba2fcaff13474f77d2ade0b573d0b4ca2fc3b (diff)
downloadopt-utilities-61ee2ce37185c2b5b8b6d70064d80a0acabdfba5.tar.bz2
git-svn-id: file:///home/svn/opt_utilities@23 ed2142bd-67ad-457f-ba7c-d818d4011675
Diffstat (limited to 'statistics')
-rw-r--r--statistics/chisq.hpp22
1 files changed, 18 insertions, 4 deletions
diff --git a/statistics/chisq.hpp b/statistics/chisq.hpp
index ed25051..4054c22 100644
--- a/statistics/chisq.hpp
+++ b/statistics/chisq.hpp
@@ -107,7 +107,7 @@ namespace opt_utilities
#ifdef HAVE_X_ERROR
Tx x1=this->datas().get_data(i).get_x()-this->datas().get_data(i).get_x_lower_err();
Tx x2=this->datas().get_data(i).get_x()+this->datas().get_data(i).get_x_upper_err();
- Tx x=this->datas().get_data(i).get_x()+this->datas().get_data(i).get_x();
+ Tx x=this->datas().get_data(i).get_x();
Ty errx1=(eval_model(x1,p)-eval_model(x,p));
Ty errx2=(eval_model(x2,p)-eval_model(x,p));
//Ty errx=0;
@@ -121,13 +121,27 @@ namespace opt_utilities
Ty y_err;
Ty errx=0;
- if(errx2>errx1)
+ if(errx1<errx2)
{
- errx=errx1>0?errx1:-errx1;
+ if(y_obs<y_model)
+ {
+ errx=errx1>0?errx1:-errx1;
+ }
+ else
+ {
+ errx=errx2>0?errx2:-errx2;
+ }
}
else
{
- errx=errx2>0?errx2:-errx2;
+ if(y_obs<y_model)
+ {
+ errx=errx2>0?errx2:-errx2;
+ }
+ else
+ {
+ errx=errx1>0?errx1:-errx1;
+ }
}