...from the Microcomputer Power website.

CANOCO 3.15  |  <Previous  |  Next>

Note from Cajo J.F. ter Braak on Oksanen and Minchin concerns

I am very keen on possible errors in CANOCO. I have looked into the problems reported by Oksanen & Minchin myself and Mark Hill, the author of the questioned part of the program, approached me on the issue. In response, I prepared an update, CANOCO 3.15, to meet the concerns raised, as indicated below.

I am grateful to Jari Oksanen in helping to sort out and evaluate the problems, and to Mark Hill for sharing his insight.

The problems fall into two parts:

  1. convergence criteria

  2. a supposed bug in the subroutine SMOOTH that stems from DECORANA (Hill, 1979).

After inspection of the problems we add a point 3 which addresses the subroutine SEGMNT.

1. Remarks on convergence criteria:

The more strict the convergence criteria the more decimal places of eigenvalues and scores are likely to be correct in the output and solution file, and the longer the program needs to calculated these. In my opinion the present convergence criteria used in CANOCO give sufficient precision for normal day usage. Such usage includes that very small detail in ordination diagrams is not likely to be a stable feature from the statistical point of view (cf Podani, 1997 and the stability analysis using the bootstrap by Knox & Peet, 1989). However, with computers getting more powerful, it is timely to make the convergence criteria more strict. This had already been done in CANOCO 3.14 (which is a minor update which has not been widely distributed). (Note added: See also the Lesson of Strict Convergence on the next page).

2. Remarks on the reported bug in SMOOTH.

This problem has an impact on DCA with detrending by segments. The problem is in fact in the non-linear rescaling of ordination axes, after these have been extracted. If the convergence criteria are met, and the subsequent eigenvalues are not the same, the sample scores that enter the non-linear rescaling algorithm are identical (up to the usual invariance). The ordering of samples in the data file is lost at this stage of the program. This argument shows that strict convergence criteria help to improve the stability of DCA with detrending by segments also. This effect can also be seen in Tables 3 and 4 in Oksanen & Minchin (1997). The reported bug is on line 17 of the subroutine SMOOTH, which reads

IF (AZ3.LT.0.0) ISTOP = 0

Oksanen & Minchin (1997) propose to change this line to

IF (AZ3.LE.0.0) ISTOP = 0

Is this a real bug? Oksanen & Minchin (1997) describe the reason why it is a bug by stating on page 449 " For the third and subsequent segments, the test, as programmed, is never true." I checked the program in this respect by printing out the segments that make the test true, and found that the statement does does not hold in the DOS-version of CANOCO that is being distributed. It is unclear at present why Oksanen & Minchin believe otherwise. The change proposed by Oksanen & Minchin does not make the subroutine order invariant, as Mark Hill pointed out to me. For this, one also needs to change line 7, which concerns the second segment, which reads

IF (AZ3.EQ.0.0) ISTOP = 0

Line 7 should also be changed to

IF (AZ3.LE.0.0) ISTOP = 0

in order to make the subroutine order invariant. The changes are implemented in CANOCO 3.15.

3. Change in subroutine SEGMNT

After reinspecting the source code, Mark Hill also suggested to explicitly implement in subroutine SEQMNT the statement in the DECORANA manual on page 28 that

'In particular, if a sample contains only one species, then SQCORR assumes the value 1, and no information about the average mean-square deviation is deemed to accrue.'

Therefore, Hill proposed to change the line

IF(SQCORR.GT.0.9999) SQCORR=0.9999


IF(SQCORR.GT.0.9999) GOTO 50

This has been followed in CANOCO 3.15


Hill, M O. 1979. DECORANA - A FORTRAN program for detrended correspondence analysis and reciprocal averaging. Ecology and Systematics. Cornell University (Ithaca, New York) (reissued by Microcomputerpower, Ithaca).

Knox, R G. Peet, R K. 1989. Bootstrapped ordination: a method for estimating sampling effects in indirect gradient analysis. Vegetatio (80) pp 153-165.

Oksanen, J. Minchin, P R. 1997. Instability of ordination results under changes in input data order: explanations and remedies Journal of Vegetation Science (8) pp 447-454.

Podani, J. 1997. On the sensitivity of ordination and classification methods to variation in the input order of data. Journal of Vegetation Science (8) pp 153-156.

Note: CANOCO version 3.15 is now available by request.

CANOCO 3.15  |  <Previous  |  Next>

This page was last rendered at Ithaca, NY Monday, August 24, 1998 2:26 AM