Research Article

A Population Genetic Model of Evolution of Host-Mate Attraction and Nonhost Repulsion in a Bark Beetle Pityogenes bidentatus

Algorithm 1

General code for algorithms to calculate the proportions P1 to P9 of the nine mated genotypes (AABB to aabb, see Table 1) for 200 generations based on initial proportions and nine constant survival factors S1 to S9 for individuals of these genotypes (an asterisk denotes multiplication).
AABB: P1 = 0: S1 = 1: AABb: P2 = 0: S2 = 0.8: AAbb: P3 = 0: S3 = 0.5
AaBB: P4 = 0: S4 = 0.9: AaBb: P5 = 0: S5 = 0.6: Aabb: P6 = 0.0000001: S6 = 0.3
aaBB: P7 = 0: S7 = 0.4: aaBb: P8 = 0.0000001: S8 = 0.3: aabb: P9 = 0.9999998: S9 = 0.2
For generation = 1 to 100
Row 1: AABB: G1=16 1 1+16 1 2+16 1 4+8 1 5
AABb: G2=16 1 2+32 1 3+8 1 5+ 16 1 6
AaBB: G4=16 1 4+8 1 5+32 1 7+ 16 1 8
AaBb: G5=8 1 5+ 16 1 6+ 16 1 8+32 1 9
Row 2: AABB: G1=G1+4 2 2+8 2 4+4 2 5
AABb: G2=G2+8 2 2+ 16 2*P3+8 2 4 +8 2 5+8 2 6
AAbb: G3=4 2 2+ 16 2 3+4 2 5+8 2 6
AaBB: G4=G4+8 2 4+4 2 5+16 2 7+8 2 8
AaBb: G5=G5+8 2 4+8 2 5+8 2 6+ 16 2 7+ 16 2 8+ 16 2 9
Aabb: G6=4 2 5+8 2 6+8 2 8+ 16 2 9
Row 3: AAbb: G3=G3+16 3 3+8 3*P5+16 3 6
AABb: G2=G2+ 16 3 4+8 3 5
AaBb: G5=G5+ 16 3 4+8 3 5+32 3 7+ 16 3 8
Aabb: G6=G6+8 3 5+ 16 3 6+ 16 3 8+32 3 9
Row 4: AABB: G1=G1+4 4 4+4 4 5
AaBB: G4=G4+8 4 4+8 4 5+ 16 4 7+8 4 8
aaBB: G7=4 4 4+4 4 5+ 16 4 7+8 4 8
AABb: G2=G2+4 4 5+8 4 6
AaBb: G5=G5+8 4 5+ 16 4 6+8 4 8+ 16 4 9
aaBb:G8=4 4 5+8 4 6+8 4 8+16 4 9
Row 5: AABB: G1=G1+P5 5: AABb: G2=G2+2 5 5+4 5 6
AAbb: G3=G3+P5 5+4 5 6: AaBB: G4=G4+2 5 5+8 5 7+4 5 8
AaBb: G5=G5+4 5 5+8 5 6+8 5 7+8 5 8+8 5 9
Aabb: G6=G6+2 5 5+8 5 6+4 5 8+8 5 9
aaBB: G7=G7+P5 5+8 5 7+4 5 8
aaBb: G8=G8+2 5 5+4 5 6+8 5 7+8 5 8+8 5 9
aabb: G9=P5 5+4 5 6+4 5 8+8 5 9
Row 6: AAbb: G3=G3+4 6 6: Aabb: G6=G6+8 6 6+8 6 8+16 6 9
aabb: G9=G9+4 6 6+8 6 8+ 16 6 9
AaBb: G5=G5+ 16 6 7+8 6 8 aaBb: G8=G8+ 16 6 7+8 6 8
Row 7: aaBB: G7=G7+16 7 7+16 7 8: aaBb: G8=G8+16 7 8+32 7 9
Row 8: aaBB: G7=G7+4 8 8: aaBb: G8=G8+8 8 8+16 8 9
aabb: G9=G9+4 8 8+ 16 8 9
Row 9: aabb: G9=G9+ 16 9 9
total = G1 1 +G2 2+G3 3+G4 4 +G5 5+G6 6+G7 +G8 8+G9 9
P1 = G1 1/total: P2 = G2 2/total: P3 = G3 3/total: P4=G4 4/total
P5 = G5 5/total: P6 = G6 6/total: P7 = G7 7/total: P8 = G8 7/total: P9 = G9 9/total
Next generation