# Errors.txt for Simfit Version 7

     Recognised errors and problems with Simfit:
     ===========================================

     Details for Simfit: version 7

     http://www.simfit.org.uk

     The following problems have been recognised.

     Problem 1: corrupted configuration files
     Problem 2: NAG Library Mark 20 DLLs
     Problem 3: protected program files trees
     Problem 4: ghostscript and start_process_and_wait@ in Linux
     Problem 5: error in lower triangular p-values at 7.2.1

    1) Problem 1
     ============

     Summary
     -------
     This problem can be caused by impatient double clicking or
     crashing out of simfit leaving corrupted files, or by giving
     some simfit configuration files the read_only attribute.

     Description
     -----------
     Simfit does not use the registry for configuration, it
     uses copies of ASCII text *.cfg configuration files,
     e.g., w_simfit.cfg. Also temporary files with names like
     f$??????.tmp are created, and in addition, the NAG library
     version writes to the file nagifail.txt.

     If any of these files are corrupted, e.g. by impatient mouse
     clicking during write operations, or in some cases where
     write/read access is prevented, then Simfit will crash with
     error messages such as

     ...Data error (cyclic redundancy check)

     when it attempts write/read. The solution is to run the
     Windows utility CHKDSK, or similar, to repair or delete all
     corrupted files. Simfit will simply re-write default versions
     of the configuration files. Also, to limit the possibility of
     such errors, users should routinely use the configuration
     option to delete all f$??????.tmp files at close down, and so
     prevent build up, which progressively slows down many Simfit
     write/read operations, as Simfit frequently scans the list of
     all local f$??????.tmp files before assigning new temporary
     file names.

     Back to Menu

     2) Problem 2
     ============

     Summary
     -------
     This problem only occurs running the NAG library Mark 20 version
     of simfit on machines that have chips more recent than P4.

     Description
     -----------
     The NAG library Mark 20 DLLs may automatically link to MKL_P4.DLL
     in the NAG library folder. This DLL is configured to get the best
     out of the P4 chip, but using it will lead to problems with more
     recent chips. For instance, access violations are known to happen
     with the P5 and AMD64 chips. If your NAG library version of Simfit
     is Mark 20 and it exhibits such behaviour, the solution is to
     delete MKL_P4.DLL, or rename the file MKL_P4.DLL to something like
     MKL_P4.BAK. This will simply force the NAG library DLLs to use
     default machine operations instead of the ones optimised for P4
     which are causing the problem.

     Back to Menu

    3) Problem 3 (Only refers to Simfit versions prior to 6.2.6)
     ============

     Summary
     -------
     This problem only occurs with operating systems from Vista onwards
     where the C:\Program Files\tree is protected, and users are provided
     with a virtual tree. The problem has been resolved for versions
     of Simfit from 6.2.6 onwards, as Simfit will not attempt to write
     to any local files.

     Description (Only refers to Simfit versions prior to 6.2.6)
     -----------
     With operating systems before Vista, all configuration files are
     read from and written to the Simfit folder, and are therefore all
     accessed as local files. If Simfit is installed in a protected
     tree and only used by normal users then all will be well, as the
     configuration files will be in the users virtual tree. However,
     if an admistrator runs w_simfit.exe with adminstrator privileges,
     the configuration files will be in the Simfit folder. This will
     then prevent any future non-privileged users from re-configuring
     Simfit, because Simfit will read the configuration files created
     by the adminstrator. There are two solutions for Simfit versions
     prior to 6.2.6.

     a) Do not install Simfit in a protected tree
     b) Simply delete all .cfg files from the true Simfit folder and
        allow Simfit to create defaults in the user's virtual tree.

     Back to Menu

     4) Problem 4
     ============

     Summary
     -------
     Simfit executes binaries using the function call

     k = start_process_and_wait@(program, command, time)

     which works most of the time provided that the advanced options to
     change the waiting times are used, and file names with spaces are quoted.
     This should return k = 0 on satisfactory exit, but this does not always
     happen in Wine/Linux, and so the advanced option to suppress Windows
     error messges should always be used.

     Description
     -----------
     When Simfit attempts to run the built-in Linux version of ghostscript
     there is a problem that cannot be cured by altering the wait time and
     quoting file names with spaces. The processes spawned by ghostscript
     to create graphics files from *.eps files for example are not always
     finished when start_process_and_wait@ exits (with k = -1) and the graphics
     files remain unfinished. An additional step to prevent this happening has
     been added to Simfit at 6.2.2, which now issues a warning to indicate that
     further editing of wait time may possibly be needed if the graphics
     file creation has not terminated properly. This warning can be ignored if
     graphics files have been satisfactorily created. Alternatively, like the
     other auxiliaries, the Windows version of ghostscript may be installed
     in the Wine environment.

     Back to Menu

     5) Problem 5
     ============

      At 7.2.1 an error was introduced into Pearson correlation analysis in
      that the lower triangle of p-values was in error when the corresponding
      upper-triangular r-value was negative.

      To summarise: r(i,j) > 0 then p(i,j) correct
                    r(i,j) < 0 then p(i,j) incorrect

      This mistake was repaired at 7.2.5

     Back to Menu