[Vinecopula-commits] r37 - pkg/R

noreply at r-forge.r-project.org noreply at r-forge.r-project.org
Mo Nov 4 12:44:14 CET 2013


Author: ulf
Date: 2013-11-04 12:44:13 +0100 (Mon, 04 Nov 2013)
New Revision: 37

Modified:
   pkg/R/BiCopSelect.r
Log:
Ich berechne jetzt nur noch Stratwerte bei family=5 und 6, wenn sie im familyset sind. Ich hatte Faelle, in denen er bei Frank oder Joe folgende Fehler geworfen hat
Fehler in uniroot(function(x) tau - tauF(x), lower = 0, upper = 500, tol = .Machine$double.eps^0.5) : 
  f() values at end points not of opposite sign
Wenn ich die Familie nicht in der familyset hatte, kam der Fehler auch, weil er immer den Startwert berechnet hat in der BiCopSelect.r.

Modified: pkg/R/BiCopSelect.r
===================================================================
--- pkg/R/BiCopSelect.r	2013-10-30 09:32:41 UTC (rev 36)
+++ pkg/R/BiCopSelect.r	2013-11-04 11:44:13 UTC (rev 37)
@@ -45,15 +45,15 @@
 	    start[[2]] = c(sin(emp_tau*pi/2),10)
 	    start[[3]] = start[[13]] = 2*abs(emp_tau)/(1-abs(emp_tau))
 	    start[[4]] = start[[14]] = 1/(1-abs(emp_tau))
-	    start[[5]] = Frank.itau.JJ(emp_tau)
-	    start[[6]] = start[[16]] = Joe.itau.JJ(abs(emp_tau))
+	    if(5%in% familyset) start[[5]] = Frank.itau.JJ(emp_tau) else start[[5]] = 0
+	    if(any(c(6,16)%in% familyset)) start[[6]] = start[[16]] = Joe.itau.JJ(abs(emp_tau)) else start[[6]] = start[[16]] = 0
 	    start[[7]] = start[[17]] = c(0.5, 1.5)
 	    start[[8]] = start[[18]] = c(1.5, 1.5)
 	    start[[9]] = start[[19]] = c(1.5, 0.5)
 	    start[[10]] = start[[20]] = c(1.5,0.5)
 	    start[[23]] = start[[33]] = -2*abs(emp_tau)/(1-abs(emp_tau))
 	    start[[24]] = start[[34]] = -1/(1-abs(emp_tau))
-	    start[[26]] = start[[36]] = -Joe.itau.JJ(abs(emp_tau))
+	    if(any(c(26,36)%in% familyset)) start[[26]] = start[[36]] = -Joe.itau.JJ(abs(emp_tau)) else start[[26]] = start[[36]] = 0
 	    start[[27]] = start[[37]] = c(-0.5, -1.5)
 	    start[[28]] = start[[38]] = c(-1.5, -1.5)
 	    start[[29]] = start[[39]] = c(-1.5, -0.5)



Mehr Informationen über die Mailingliste Vinecopula-commits