Ellen Wijsman and Heikki Lehvaslaiho both have had
problems with preplink on the SUN.
Heikki Lehvaslaiho sent me the following example:
**********************************************************************
The following outfile from preplink illustrates the problem. The first row
of penetrances was typed in as:
0.0000 0.1500 0.6000
Next time the screen is updated 0.15 has converted to 0.
__________________________________________________________________
2 0 0 5 << NO. OF LOCI, RISK LOCUS, SEXLINKED (IF 1) PROGRAM
0 0.0 0.0 0 << MUT LOCUS, MUT RATE, HAPLOTYPE FREQUENCIES (IF 1)
1 2
1 2 << AFFECTION, NO. OF ALLELES
0.999000 0.001000 << GENE FREQUENCIES
4 << NO. OF LIABILITY CLASSES
0.0000 0.0000 0.6000
0.0000 0.4000 0.7500
0.0000 0.7000 0.9000
0.0000 0.9000 0.9500 << PENETRANCES
3 7 << ALLELE NUMBERS, NO. OF ALLELES
0.140000 0.140000 0.140000 0.160000 0.140000 0.140000 0.140000 <<
GENEFREQ
1 0.05 0.4
0.2 0.1 0.5
__________________________________________________________________
**********************************************************************
The solution to the problem is simple: The constant determining
the maximum number of liability classes is set to 3:
maxliab = 3; {MAXIMUM NUMBER OF LIABILITY CLASSES }
So when 4 liability classes are tried, preplink does bizarre
things.
This points out a general problem with the LINKAGE programs: They
are not compiled to check for range errors when they are distributed.
However, on the SUN, this can be accomplished in the following manner:
pc -C -L -o preplink preplink.p
To avoid such problems, I suggest changing all the Makefiles to
include the '-C' option and then recompiling ALL the LINKAGE programs.
Sincerely,
-- Dan Weeks --
********************************
| Daniel E. Weeks |
| Department of Human Genetics | Internet:
| University of Pittsburgh | dweeks at watson.hgen.pitt.edu| Crabtree Hall, Room A310 |
| 130 DeSoto Street | Bitnet:
| Pittsburgh, PA 15261 | weeks at pittvms.bitnet| |
| (412) 624-3066 |
| FAX: (412) 624-3020 |
********************************