From 70591022c07f0e8fb4dd67789b7c8d78af8ebc18 Mon Sep 17 00:00:00 2001 From: Johannes Ranke Date: Thu, 2 May 2019 13:17:05 +0200 Subject: Better initials for error model parameters - Also make it possible to specify initial values for error model parameters. - Run tests - Rebuild docs --- docs/articles/web_only/NAFTA_examples.html | 120 ++++++++++++++--------------- 1 file changed, 58 insertions(+), 62 deletions(-) (limited to 'docs/articles/web_only/NAFTA_examples.html') diff --git a/docs/articles/web_only/NAFTA_examples.html b/docs/articles/web_only/NAFTA_examples.html index 0bcfca27..0ae02f3c 100644 --- a/docs/articles/web_only/NAFTA_examples.html +++ b/docs/articles/web_only/NAFTA_examples.html @@ -88,7 +88,7 @@

Evaluation of example datasets from Attachment 1 to the US EPA SOP for the NAFTA guidance

Johannes Ranke

-

2019-04-10

+

2019-05-02

@@ -153,7 +153,7 @@ ## DFOP 55.5 3.70e+11 2.03e+11 ## ## Representative half-life: -## [1] 321.5119 +## [1] 321.51

@@ -189,7 +189,7 @@ ## Estimate Pr(>t) Lower Upper ## parent_0 9.84e+01 1.24e-27 97.8078 98.9187 ## k1 1.55e-02 4.10e-04 0.0143 0.0167 -## k2 1.09e-11 5.00e-01 0.0000 Inf +## k2 8.28e-12 5.00e-01 0.0000 Inf ## g 6.89e-01 2.92e-03 0.6626 0.7142 ## sigma 6.48e-01 2.38e-05 0.4147 0.8813 ## @@ -198,10 +198,10 @@ ## DT50 DT90 DT50_rep ## SFO 86.6 2.88e+02 8.66e+01 ## IORE 85.5 7.17e+02 2.16e+02 -## DFOP 83.6 1.04e+11 6.34e+10 +## DFOP 83.6 1.37e+11 8.37e+10 ## ## Representative half-life: -## [1] 215.8655 +## [1] 215.87

@@ -237,7 +237,7 @@ ## Estimate Pr(>t) Lower Upper ## parent_0 9.66e+01 1.57e-25 95.3476 97.8979 ## k1 2.55e-02 7.33e-06 0.0233 0.0278 -## k2 3.88e-11 5.00e-01 0.0000 Inf +## k2 3.87e-11 5.00e-01 0.0000 Inf ## g 8.61e-01 7.55e-06 0.8314 0.8867 ## sigma 1.46e+00 6.93e-06 0.9661 1.9483 ## @@ -246,10 +246,10 @@ ## DT50 DT90 DT50_rep ## SFO 38.6 1.28e+02 3.86e+01 ## IORE 34.0 1.77e+02 5.32e+01 -## DFOP 34.1 8.42e+09 1.79e+10 +## DFOP 34.1 8.43e+09 1.79e+10 ## ## Representative half-life: -## [1] 53.16582 +## [1] 53.17

@@ -285,7 +285,7 @@ ## Estimate Pr(>t) Lower Upper ## parent_0 9.89e+01 9.44e-49 95.4640 102.2573 ## k1 1.81e-02 1.75e-01 0.0116 0.0281 -## k2 2.57e-10 5.00e-01 0.0000 Inf +## k2 2.46e-10 5.00e-01 0.0000 Inf ## g 6.06e-01 2.19e-01 0.4826 0.7178 ## sigma 7.40e+00 2.97e-15 6.0201 8.7754 ## @@ -294,10 +294,10 @@ ## DT50 DT90 DT50_rep ## SFO 94.3 3.13e+02 9.43e+01 ## IORE 96.7 1.51e+03 4.55e+02 -## DFOP 96.4 5.32e+09 2.69e+09 +## DFOP 96.4 5.58e+09 2.82e+09 ## ## Representative half-life: -## [1] 454.5528 +## [1] 454.55

@@ -357,7 +357,7 @@ ## DFOP 55.6 517 253.0 ## ## Representative half-life: -## [1] 201.0316 +## [1] 201.03
@@ -409,23 +409,19 @@ ## DFOP 10.5 2.17e+12 1.21e+12 ## ## Representative half-life: -## [1] 101.4264 +## [1] 101.43

In this example, the residuals of the SFO indicate a lack of fit of this model, so even if it was an abiotic experiment, the data do not suggest a simple exponential decline.

Example on page 9, lower panel

p9b <- nafta(NAFTA_SOP_Attachment[["p9b"]])
-
## Warning in sqrt(diag(covar)): NaNs wurden erzeugt
## Warning in sqrt(diag(covar_notrans)): NaNs wurden erzeugt
-
## Warning in sqrt(1/diag(V)): NaNs wurden erzeugt
-
## Warning in cov2cor(ans$cov.unscaled): diag(.) had 0 or NA entries; non-
-## finite result is doubtful
## The SFO model is rejected as S_SFO is equal or higher than the critical value S_c
## The half-life obtained from the IORE model may be used
-
plot(p9b)
+
plot(p9b)

-
print(p9b)
+
print(p9b)
## Sums of squares:
 ##      SFO     IORE     DFOP 
 ## 35.64867 23.22334 35.64867 
@@ -450,9 +446,9 @@
 ## $DFOP
 ##          Estimate   Pr(>t)   Lower   Upper
 ## parent_0  94.7123 1.61e-16 93.1355 96.2891
-## k1         0.0389      NaN  0.0316  0.0478
-## k2         0.0389 1.13e-08  0.0203  0.0743
-## g          0.7599      NaN      NA      NA
+## k1         0.0389      NaN  0.0306  0.0495
+## k2         0.0389 1.10e-06  0.0186  0.0812
+## g          0.7598      NaN  0.0000  1.0000
 ## sigma      1.5957 2.50e-04  0.9135  2.2779
 ## 
 ## 
@@ -463,18 +459,18 @@
 ## DFOP 17.8 59.2     17.8
 ## 
 ## Representative half-life:
-## [1] 14.80013
+## [1] 14.8

Here, mkin gives a longer slow DT50 for the DFOP model (17.8 days) than PestDF (13.5 days). Presumably, this is related to the fact that PestDF gives a negative value for the proportion of the fast degradation which should be between 0 and 1, inclusive. This parameter is called f in PestDF and g in mkin. In mkin, it is restricted to the interval from 0 to 1.

Example on page 10

-
p10 <- nafta(NAFTA_SOP_Attachment[["p10"]])
+
p10 <- nafta(NAFTA_SOP_Attachment[["p10"]])
## The SFO model is rejected as S_SFO is equal or higher than the critical value S_c
## The half-life obtained from the IORE model may be used
-
plot(p10)
+
plot(p10)

-
print(p10)
+
print(p10)
## Sums of squares:
 ##      SFO     IORE     DFOP 
 ## 899.4089 336.4348 899.4089 
@@ -512,7 +508,7 @@
 ## DFOP 14.0 46.5    14.00
 ## 
 ## Representative half-life:
-## [1] 8.862193
+## [1] 8.86

Here, a value below N is given for the IORE model, because the data suggests a faster decline towards the end of the experiment, which appears physically rather unlikely in the case of a photolysis study. It seems PestDF does not constrain N to values above zero, thus the slight difference in IORE model parameters between PestDF and mkin.

@@ -522,12 +518,12 @@

Example on page 11

-
p11 <- nafta(NAFTA_SOP_Attachment[["p11"]])
+
p11 <- nafta(NAFTA_SOP_Attachment[["p11"]])
## The SFO model is rejected as S_SFO is equal or higher than the critical value S_c
## The half-life obtained from the IORE model may be used
-
plot(p11)
+
plot(p11)

-
print(p11)
+
print(p11)
## Sums of squares:
 ##      SFO     IORE     DFOP 
 ## 579.6805 204.7932 144.7783 
@@ -576,7 +572,7 @@
 

Example on page 12, upper panel

-
p12a <- nafta(NAFTA_SOP_Attachment[["p12a"]])
+
p12a <- nafta(NAFTA_SOP_Attachment[["p12a"]])
## Warning in summary.mkinfit(x): Could not estimate covariance matrix;
 ## singular system.
## Warning in sqrt(diag(covar)): NaNs wurden erzeugt
@@ -586,9 +582,9 @@ ## finite result is doubtful
## The SFO model is rejected as S_SFO is equal or higher than the critical value S_c
## The half-life obtained from the IORE model may be used
-
plot(p12a)
+
plot(p12a)

-
print(p12a)
+
print(p12a)
## Sums of squares:
 ##      SFO     IORE     DFOP 
 ## 695.4440 220.0685 695.4440 
@@ -626,12 +622,12 @@
 ## DFOP 5.58 18.5     5.58
 ## 
 ## Representative half-life:
-## [1] 3.987308
+## [1] 3.99

Example on page 12, lower panel

-
p12b <- nafta(NAFTA_SOP_Attachment[["p12b"]])
+
p12b <- nafta(NAFTA_SOP_Attachment[["p12b"]])
## Warning in sqrt(diag(covar)): NaNs wurden erzeugt
## Warning in qt(alpha/2, rdf): NaNs wurden erzeugt
## Warning in qt(1 - alpha/2, rdf): NaNs wurden erzeugt
@@ -642,9 +638,9 @@ ## finite result is doubtful
## The SFO model is rejected as S_SFO is equal or higher than the critical value S_c
## The half-life obtained from the IORE model may be used
-
plot(p12b)
+
plot(p12b)

-
print(p12b)
+
print(p12b)
## Sums of squares:
 ##      SFO     IORE     DFOP 
 ## 58.90242 19.06353 58.90242 
@@ -682,17 +678,17 @@
 ## DFOP 11.8 39.1    11.80
 ## 
 ## Representative half-life:
-## [1] 9.461912
+## [1] 9.46

Example on page 13

-
p13 <- nafta(NAFTA_SOP_Attachment[["p13"]])
+
p13 <- nafta(NAFTA_SOP_Attachment[["p13"]])
## The SFO model is rejected as S_SFO is equal or higher than the critical value S_c
## The half-life obtained from the IORE model may be used
-
plot(p13)
+
plot(p13)

-
print(p13)
+
print(p13)
## Sums of squares:
 ##      SFO     IORE     DFOP 
 ## 174.5971 142.3951 174.5971 
@@ -717,7 +713,7 @@
 ## $DFOP
 ##          Estimate   Pr(>t)    Lower    Upper
 ## parent_0 92.73500 9.25e-15 8.95e+01 9.59e+01
-## k1        0.00258 4.28e-01 1.38e-08 4.82e+02
+## k1        0.00258 4.28e-01 1.25e-08 5.31e+02
 ## k2        0.00258 3.69e-08 2.20e-03 3.03e-03
 ## g         0.00442 5.00e-01 0.00e+00 1.00e+00
 ## sigma     3.41172 1.35e-04 2.02e+00 4.80e+00
@@ -730,22 +726,22 @@
 ## DFOP  269  892      269
 ## 
 ## Representative half-life:
-## [1] 168.5123
+## [1] 168.51

DT50 not observed in the study and DFOP problems in PestDF

-
p14 <- nafta(NAFTA_SOP_Attachment[["p14"]])
+
p14 <- nafta(NAFTA_SOP_Attachment[["p14"]])
## Warning in sqrt(diag(covar)): NaNs wurden erzeugt
## Warning in sqrt(1/diag(V)): NaNs wurden erzeugt
## Warning in cov2cor(ans$cov.unscaled): diag(.) had 0 or NA entries; non-
 ## finite result is doubtful
## The SFO model is rejected as S_SFO is equal or higher than the critical value S_c
## The half-life obtained from the IORE model may be used
-
plot(p14)
+
plot(p14)

-
print(p14)
+
print(p14)
## Sums of squares:
 ##      SFO     IORE     DFOP 
 ## 48.43249 28.67746 27.26248 
@@ -771,7 +767,7 @@
 ##          Estimate   Pr(>t)    Lower    Upper
 ## parent_0 1.00e+02 2.96e-28 99.40280 101.2768
 ## k1       9.53e-03 1.20e-01  0.00638   0.0143
-## k2       6.17e-12 5.00e-01  0.00000      Inf
+## k2       5.42e-12 5.00e-01  0.00000      Inf
 ## g        3.98e-01 2.19e-01  0.30481   0.4998
 ## sigma    1.17e+00 7.68e-06  0.77406   1.5610
 ## 
@@ -780,16 +776,16 @@
 ##          DT50     DT90 DT50_rep
 ## SFO  2.48e+02 8.25e+02 2.48e+02
 ## IORE 4.34e+02 2.22e+04 6.70e+03
-## DFOP 3.00e+10 2.91e+11 1.12e+11
+## DFOP 3.41e+10 3.31e+11 1.28e+11
 ## 
 ## Representative half-life:
-## [1] 6697.437
+## [1] 6697.44

The slower rate constant reported by PestDF is negative, which is not physically realistic, and not possible in mkin. The other fits give the same results in mkin and PestDF.

N is less than 1 and DFOP fraction parameter is below zero

-
p15a <- nafta(NAFTA_SOP_Attachment[["p15a"]])
+
p15a <- nafta(NAFTA_SOP_Attachment[["p15a"]])
## Warning in sqrt(diag(covar)): NaNs wurden erzeugt
## Warning in sqrt(diag(covar_notrans)): NaNs wurden erzeugt
## Warning in sqrt(1/diag(V)): NaNs wurden erzeugt
@@ -797,9 +793,9 @@ ## finite result is doubtful
## The SFO model is rejected as S_SFO is equal or higher than the critical value S_c
## The half-life obtained from the IORE model may be used
-
plot(p15a)
+
plot(p15a)

-
print(p15a)
+
print(p15a)
## Sums of squares:
 ##      SFO     IORE     DFOP 
 ## 245.5248 135.0132 245.5248 
@@ -837,13 +833,13 @@
 ## DFOP 72.8  242     72.8
 ## 
 ## Representative half-life:
-## [1] 41.32749
-
p15b <- nafta(NAFTA_SOP_Attachment[["p15b"]])
+## [1] 41.33 +
p15b <- nafta(NAFTA_SOP_Attachment[["p15b"]])
## The SFO model is rejected as S_SFO is equal or higher than the critical value S_c
## The half-life obtained from the IORE model may be used
-
plot(p15b)
+
plot(p15b)

-
print(p15b)
+
print(p15b)
## Sums of squares:
 ##       SFO      IORE      DFOP 
 ## 106.91629  68.55574 106.91629 
@@ -881,20 +877,20 @@
 ## DFOP  143  474    143.0
 ## 
 ## Representative half-life:
-## [1] 71.18014
+## [1] 71.18

In mkin, only the IORE fit is affected (deemed unrealistic), as the fraction parameter of the DFOP model is restricted to the interval between 0 and 1 in mkin. The SFO fits give the same results for both mkin and PestDF.

The DFOP fraction parameter is greater than 1

-
p16 <- nafta(NAFTA_SOP_Attachment[["p16"]])
+
p16 <- nafta(NAFTA_SOP_Attachment[["p16"]])
## The SFO model is rejected as S_SFO is equal or higher than the critical value S_c
## The representative half-life of the IORE model is longer than the one corresponding
## to the terminal degradation rate found with the DFOP model.
## The representative half-life obtained from the DFOP model may be used
-
plot(p16)
+
plot(p16)

-
print(p16)
+
print(p16)
## Sums of squares:
 ##      SFO     IORE     DFOP 
 ## 3831.804 2062.008 1550.980 
@@ -919,7 +915,7 @@
 ## $DFOP
 ##          Estimate   Pr(>t)   Lower  Upper
 ## parent_0  88.5333 7.40e-18 79.9836 97.083
-## k1        18.6317 5.00e-01  0.0000    Inf
+## k1        18.6315 5.00e-01  0.0000    Inf
 ## k2         0.0776 1.41e-05  0.0518  0.116
 ## g          0.4733 1.41e-09  0.3674  0.582
 ## sigma      7.1902 2.11e-08  5.2785  9.102
@@ -932,7 +928,7 @@
 ## DFOP 0.67 21.4     8.93
 ## 
 ## Representative half-life:
-## [1] 8.932679
+## [1] 8.93

In PestDF, the DFOP fit seems to have stuck in a local minimum, as mkin finds a solution with a much lower \(\chi^2\) error level. As the half-life from the slower rate constant of the DFOP model is larger than the IORE derived half-life, the NAFTA recommendation obtained with mkin is to use the DFOP representative half-life of 8.9 days.

-- cgit v1.2.1