- using R Under development (unstable) (2025-03-12 r87950 ucrt)
- using platform: x86_64-w64-mingw32
- R was compiled by
gcc.exe (GCC) 14.2.0
GNU Fortran (GCC) 14.2.0
- running under: Windows Server 2022 x64 (build 20348)
- using session charset: UTF-8
- checking for file 'phenofit/DESCRIPTION' ... OK
- checking extension type ... Package
- this is package 'phenofit' version '0.3.9'
- package encoding: UTF-8
- checking package namespace information ... OK
- checking package dependencies ... OK
- checking if this is a source package ... OK
- checking if there is a namespace ... OK
- checking for hidden files and directories ... OK
- checking for portable file names ... OK
- checking whether package 'phenofit' can be installed ... OK
See the install log for details.
- used C compiler: 'gcc.exe (GCC) 14.2.0'
- used C++ compiler: 'g++.exe (GCC) 14.2.0'
- checking installed package size ... OK
- checking package directory ... OK
- checking 'build' directory ... OK
- checking DESCRIPTION meta-information ... OK
- checking top-level files ... OK
- checking for left-over files ... OK
- checking index information ... OK
- checking package subdirectories ... OK
- checking code files for non-ASCII characters ... OK
- checking R files for syntax errors ... OK
- checking whether the package can be loaded ... [2s] OK
- checking whether the package can be loaded with stated dependencies ... [2s] OK
- checking whether the package can be unloaded cleanly ... [2s] OK
- checking whether the namespace can be loaded with stated dependencies ... [2s] OK
- checking whether the namespace can be unloaded cleanly ... [2s] OK
- checking loading without being on the library search path ... [2s] OK
- checking whether startup messages can be suppressed ... [2s] OK
- checking use of S3 registration ... OK
- checking dependencies in R code ... OK
- checking S3 generic/method consistency ... OK
- checking replacement functions ... OK
- checking foreign function calls ... OK
- checking R code for possible problems ... [13s] OK
- checking Rd files ... [2s] OK
- checking Rd metadata ... OK
- checking Rd cross-references ... OK
- checking for missing documentation entries ... OK
- checking for code/documentation mismatches ... OK
- checking Rd \usage sections ... OK
- checking Rd contents ... OK
- checking for unstated dependencies in examples ... OK
- checking contents of 'data' directory ... OK
- checking data for non-ASCII characters ... [0s] OK
- checking LazyData ... OK
- checking data for ASCII and uncompressed saves ... OK
- checking line endings in C/C++/Fortran sources/headers ... OK
- checking line endings in Makefiles ... OK
- checking compilation flags in Makevars ... OK
- checking for GNU extensions in Makefiles ... OK
- checking for portable use of $(BLAS_LIBS) and $(LAPACK_LIBS) ... OK
- checking use of PKG_*FLAGS in Makefiles ... OK
- checking pragmas in C/C++ headers and code ... OK
- checking compiled code ... OK
- checking installed files from 'inst/doc' ... OK
- checking files in 'vignettes' ... OK
- checking examples ... [32s] OK
- checking for unstated dependencies in 'tests' ... OK
- checking tests ... [76s] ERROR
Running 'testthat.R' [75s]
Running the tests in 'tests/testthat.R' failed.
Complete output:
> library(testthat)
> library(phenofit)
>
> test_check("phenofit")
List of 5
$ AG : tibble [6 × 8] (S3: tbl_df/tbl/data.frame)
$ Beck : tibble [6 × 7] (S3: tbl_df/tbl/data.frame)
$ Elmore: tibble [6 × 8] (S3: tbl_df/tbl/data.frame)
$ Gu : tibble [6 × 10] (S3: tbl_df/tbl/data.frame)
$ Zhang : tibble [6 × 8] (S3: tbl_df/tbl/data.frame)
NULL
# A tibble: 6 × 8
flag t0 mn mx rsp a3 rau a5
<chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 1999_1 -135. 0.201 0.636 0.00932 2.85 0.00852 2
2 2000_1 189. 0.238 0.635 0.0126 2.47 0.00801 3.21
3 2001_1 569. 0.252 0.626 0.0108 2.96 0.00950 2.96
4 2002_1 892. 0.253 0.614 0.0159 2 0.00724 3.08
5 2003_1 1268. 0.236 0.577 0.0121 2.88 0.00723 2.88
6 2004_1 1677. 0.202 0.576 0.00832 2.84 0.00990 3.48
meth R2 NSE R RMSE pvalue n_sim
<char> <num> <num> <num> <num> <num> <num>
1: AG 0.9986908 0.9985845 0.9993452 9.940385e-03 4.489925e-65 46
2: Beck 1.0000000 1.0000000 1.0000000 1.389780e-09 0.000000e+00 46
3: Elmore 1.0000000 1.0000000 1.0000000 4.157986e-10 0.000000e+00 46
4: Gu 1.0000000 1.0000000 1.0000000 4.770360e-11 0.000000e+00 46
5: Zhang 1.0000000 1.0000000 1.0000000 5.529075e-06 8.043368e-208 46
$AG
formula: mn + (mx - mn) * exp(-((t0 - t) * rsp)^a3)
formula: mn + (mx - mn) * exp(-((t - t0) * rau)^a5)
pars:
t0 mn mx rsp a3 rau a5
nlminb 149.8926 0.1020656 0.7095242 0.009389263 6 0.009367765 6
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 1.65502e-16); attempting approx solution
warning: solve(): system is singular (rcond: 2.19427e-17); attempting approx solution
warning: solve(): system is singular (rcond: 1.65502e-16); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 1.33432e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 2.38811e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 2.03034e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 1.33432e-17); attempting approx solution
warning: solve(): system is singular (rcond: 3.31005e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 3.08395e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 2.36432e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 6.97437e-18); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 1.85037e-16); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 2.80681e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 5.43896e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 2.38811e-17); attempting approx solution
warning: solve(): system is singular (rcond: 3.05447e-17); attempting approx solution
warning: solve(): system is singular (rcond: 2.11109e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 6.04329e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 1.85037e-16); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 2.80681e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 5.43896e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 3.31005e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 2.38811e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 3.31005e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 2.38811e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 1.94249e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 3.84957e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 3.31005e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 8.58712e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 2.38811e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 2.09346e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 3.82199e-17); attempting approx solution
warning: solve(): system is singular (rcond: 2.38705e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 2.38811e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 5.88785e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 1.85037e-16); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 7.40149e-17); attempting approx solution
warning: solve(): system is singular (rcond: 6.20634e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 2.38811e-17); attempting approx solution
warning: solve(): system is singular (rcond: 3.05447e-17); attempting approx solution
warning: solve(): system is singular (rcond: 2.11109e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 5.43896e-17); attempting approx solution
warning: solve(): system is singular (rcond: 4.38854e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 1.00786e-16); attempting approx solution
warning: solve(): system is singular (rcond: 1.46031e-17); attempting approx solution
warning: solve(): system is singular (rcond: 5.02097e-17); attempting approx solution
warning: solve(): system is singular (rcond: 1.25524e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 3.31005e-17); attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular; attempting approx solution
warning: solve(): system is singular (rcond: 3.31005e-17); attempting approx solution
[ FAIL 2 | WARN 2 | SKIP 0 | PASS 68 ]
══ Failed tests ════════════════════════════════════════════════════════════════
── Failure ('test-curvefit.R:18:5'): curvefit works ────────────────────────────
all.equal(p1, p2, tolerance = 1e-06) is not TRUE
`actual` is a character vector ('Component "Elmore": Component "mn": Mean relative difference: 6.750449e-06', 'Component "Elmore": Component "mx": Mean relative difference: 3.394943e-06', 'Component "Elmore": Component "sos": Mean relative difference: 4.460435e-06', 'Component "Elmore": Component "rsp": Mean relative difference: 8.226149e-06', 'Component "Elmore": Component "rau": Mean relative difference: 1.097858e-06')
`expected` is a logical vector (TRUE)
── Failure ('test-curvefit.R:23:5'): curvefit works ────────────────────────────
max(abs(diff)) <= 1e-06 is not TRUE
`actual`: FALSE
`expected`: TRUE
[ FAIL 2 | WARN 2 | SKIP 0 | PASS 68 ]
Error: Test failures
Execution halted
- checking for unstated dependencies in vignettes ... OK
- checking package vignettes ... OK
- checking re-building of vignette outputs ... [42s] OK
- checking PDF version of manual ... [24s] OK
- checking HTML version of manual ... [14s] OK
- DONE
Status: 1 ERROR