1 c******************************************************************************
2 c     FILE: pgapackf.h
3 c
4 c     Authors: David M. Levine, Philip L. Hallstrom, David M. Noelle,
5 c              Brian P. Walenz
6 c*****************************************************************************/
7 c *** I/O FLAGS
8 CBARF !! is NULL ok?
9       integer STDIN, STDOUT, STDERR, NULL
10       parameter(STDIN=5, STDOUT=6, STDERR=6, NULL=0)
11 
12 
13 c *** ABSTRACT DATA TYPES
14       integer PGA_DATATYPE_BINARY
15       parameter( PGA_DATATYPE_BINARY =      1)
16       integer PGA_DATATYPE_INTEGER
17       parameter( PGA_DATATYPE_INTEGER =     2)
18       integer PGA_DATATYPE_REAL
19       parameter( PGA_DATATYPE_REAL =        3)
20       integer PGA_DATATYPE_CHARACTER
21       parameter( PGA_DATATYPE_CHARACTER =   4)
22       integer PGA_DATATYPE_USER
23       parameter( PGA_DATATYPE_USER =        5)
24 
25       integer PGA_INT
26       parameter( PGA_INT =                   1)
27       integer PGA_DOUBLE
28       parameter( PGA_DOUBLE =                2)
29       integer PGA_CHAR
30       parameter( PGA_CHAR =                  3)
31       integer PGA_VOID
32       parameter( PGA_VOID =                  4)
33 
34 
35 c *** BOOLEANS &  FLAGS
36       integer PGA_TRUE
37       parameter ( PGA_TRUE =                   1)
38       integer PGA_FALSE
39       parameter ( PGA_FALSE =                  0)
40 
41       integer PGA_FATAL
42       parameter ( PGA_FATAL =                 1)
43       integer PGA_WARNING
44       parameter ( PGA_WARNING =               2)
45 
46 
47       integer PGA_UNINITIALIZED_INT
48       parameter ( PGA_UNINITIALIZED_INT =    -3827)
49       double precision PGA_UNINITIALIZED_DOUBLE
50       parameter ( PGA_UNINITIALIZED_DOUBLE = -968.3827)
51 
52 c *** TEMP & POP REFERENT CONSTANTS
53       integer PGA_TEMP1
54       parameter ( PGA_TEMP1 =                -1138)
55       integer PGA_TEMP2
56       parameter ( PGA_TEMP2 =                -4239)
57 
58       integer PGA_OLDPOP
59       parameter ( PGA_OLDPOP =               -6728)
60       integer PGA_NEWPOP
61       parameter ( PGA_NEWPOP =               -8376)
62 
63 c *** DEBUG LEVELS
64       integer PGA_DEBUG_ENTERED
65       parameter ( PGA_DEBUG_ENTERED =          12)
66       integer PGA_DEBUG_EXIT
67       parameter ( PGA_DEBUG_EXIT =             13)
68       integer PGA_DEBUG_MALLOC
69       parameter ( PGA_DEBUG_MALLOC =           80)
70       integer PGA_DEBUG_PRINTVAR
71       parameter ( PGA_DEBUG_PRINTVAR =         82)
72       integer PGA_DEBUG_SEND
73       parameter ( PGA_DEBUG_SEND =             22)
74       integer PGA_DEBUG_RECV
75       parameter ( PGA_DEBUG_RECV =             23)
76       integer PGA_DEBUG_MAXPGAPACKFUNCTIONS
77       parameter ( PGA_DEBUG_MAXPGAPACKFUNCTIONS =        300)
78       integer PGA_DEBUG_MAXFLAGS
79       parameter ( PGA_DEBUG_MAXFLAGS =       1000)
80 
81 c *** DIRECTION
82       integer PGA_MAXIMIZE
83       parameter ( PGA_MAXIMIZE =            1)
84       integer PGA_MINIMIZE
85       parameter ( PGA_MINIMIZE =            2)
86 
87 c *** STOPPING CRITERIA
88       integer PGA_STOP_MAXITER
89       parameter ( PGA_STOP_MAXITER =        1)
90       integer PGA_STOP_NOCHANGE
91       parameter ( PGA_STOP_NOCHANGE =       2)
92       integer PGA_STOP_TOOSIMILAR
93       parameter ( PGA_STOP_TOOSIMILAR =     4)
94 
95 c *** CROSSOVER
96       integer PGA_CROSSOVER_ONEPT
97       parameter ( PGA_CROSSOVER_ONEPT =     1)
98       integer PGA_CROSSOVER_TWOPT
99       parameter ( PGA_CROSSOVER_TWOPT =     2)
100       integer PGA_CROSSOVER_UNIFORM
101       parameter ( PGA_CROSSOVER_UNIFORM =   3)
102 
103 c *** SELECTION
104       integer PGA_SELECT_PROPORTIONAL
105       parameter ( PGA_SELECT_PROPORTIONAL = 1)
106       integer PGA_SELECT_SUS
107       parameter ( PGA_SELECT_SUS =          2)
108       integer PGA_SELECT_TOURNAMENT
109       parameter ( PGA_SELECT_TOURNAMENT =   3)
110       integer PGA_SELECT_PTOURNAMENT
111       parameter ( PGA_SELECT_PTOURNAMENT =  4)
112 
113 c *** FITNESS
114       integer PGA_FITNESS_RAW
115       parameter ( PGA_FITNESS_RAW =         1)
116       integer PGA_FITNESS_NORMAL
117       parameter ( PGA_FITNESS_NORMAL =      2)
118       integer PGA_FITNESS_RANKING
119       parameter ( PGA_FITNESS_RANKING =     3)
120 
121 c *** FITNESS (MINIMIZATION)
122       integer PGA_FITNESSMIN_RECIPROCAL
123       parameter ( PGA_FITNESSMIN_RECIPROCAL =  1)
124       integer PGA_FITNESSMIN_CMAX
125       parameter ( PGA_FITNESSMIN_CMAX =        2)
126 
127 c *** MUTATION
128       integer PGA_MUTATION_CONSTANT
129       parameter ( PGA_MUTATION_CONSTANT =  1)
130       integer PGA_MUTATION_RANGE
131       parameter ( PGA_MUTATION_RANGE    =  2)
132       integer PGA_MUTATION_UNIFORM
133       parameter ( PGA_MUTATION_UNIFORM  =  3)
134       integer PGA_MUTATION_GAUSSIAN
135       parameter ( PGA_MUTATION_GAUSSIAN =  4)
136       integer PGA_MUTATION_PERMUTE
137       parameter ( PGA_MUTATION_PERMUTE  =  5)
138 
139 c *** POPULATION REPLACEMENT
140       integer PGA_POPREPL_BEST
141       parameter ( PGA_POPREPL_BEST =         1)
142       integer PGA_POPREPL_RANDOM_NOREP
143       parameter ( PGA_POPREPL_RANDOM_NOREP = 2)
144       integer PGA_POPREPL_RANDOM_REP
145       parameter ( PGA_POPREPL_RANDOM_REP =   3)
146 
147 c *** REPORT OPTIONS
148       integer PGA_REPORT_ONLINE
149       parameter ( PGA_REPORT_ONLINE =   1 )
150       integer PGA_REPORT_OFFLINE
151       parameter ( PGA_REPORT_OFFLINE =  2 )
152       integer PGA_REPORT_HAMMING
153       parameter ( PGA_REPORT_HAMMING =  4 )
154       integer PGA_REPORT_STRING
155       parameter ( PGA_REPORT_STRING =   8 )
156       integer PGA_REPORT_WORST
157       parameter ( PGA_REPORT_WORST =   16 )
158       integer PGA_REPORT_AVERAGE
159       parameter ( PGA_REPORT_AVERAGE = 32 )
160 
161 c *** RANDOMIZER
162       integer PGA_IINIT_PERMUTE
163       parameter ( PGA_IINIT_PERMUTE =             1)
164       integer PGA_IINIT_RANGE
165       parameter ( PGA_IINIT_RANGE =               2)
166       integer PGA_CINIT_LOWER
167       parameter ( PGA_CINIT_LOWER =               1)
168       integer PGA_CINIT_UPPER
169       parameter ( PGA_CINIT_UPPER =               2)
170       integer PGA_CINIT_MIXED
171       parameter ( PGA_CINIT_MIXED =               3)
172 
173 c *** SET USER FUNCTION
174       integer PGA_USERFUNCTION_CREATESTRING
175       parameter ( PGA_USERFUNCTION_CREATESTRING =       1)
176       integer PGA_USERFUNCTION_MUTATION
177       parameter ( PGA_USERFUNCTION_MUTATION =           2)
178       integer PGA_USERFUNCTION_CROSSOVER
179       parameter ( PGA_USERFUNCTION_CROSSOVER =          3)
180       integer PGA_USERFUNCTION_PRINTSTRING
181       parameter ( PGA_USERFUNCTION_PRINTSTRING  =       4)
182       integer PGA_USERFUNCTION_COPYSTRING
183       parameter ( PGA_USERFUNCTION_COPYSTRING =         5)
184       integer PGA_USERFUNCTION_DUPLICATE
185       parameter ( PGA_USERFUNCTION_DUPLICATE =          6)
186       integer PGA_USERFUNCTION_INITSTRING
187       parameter ( PGA_USERFUNCTION_INITSTRING =         7)
188       integer PGA_USERFUNCTION_BUILDDATATYPE
189       parameter ( PGA_USERFUNCTION_BUILDDATATYPE =      8)
190       integer PGA_USERFUNCTION_STOPCOND
191       parameter ( PGA_USERFUNCTION_STOPCOND =           9)
192       integer PGA_USERFUNCTION_ENDOFGEN
193       parameter ( PGA_USERFUNCTION_ENDOFGEN =          10)
194 
195 c *** TAGS
196       integer PGA_COMM_STRINGTOEVAL
197       parameter ( PGA_COMM_STRINGTOEVAL =              1)
198       integer PGA_COMM_EVALOFSTRING
199       parameter ( PGA_COMM_EVALOFSTRING =              2)
200       integer PGA_COMM_DONEWITHEVALS
201       parameter ( PGA_COMM_DONEWITHEVALS =             3)
202       integer PGAGetBinaryAllele
203       double precision PGAGetBinaryInitProb
204       character PGAGetCharacterAllele
205       integer PGACreate
206       integer PGAGetRandomInitFlag
207       integer PGAGetCrossoverType
208       double precision PGAGetCrossoverProb
209       double precision PGAGetUniformCrossoverProb
210       integer PGADuplicate
211       integer PGAGetNoDuplicatesFlag
212       double precision PGAGetEvaluation
213       integer PGAGetEvaluationUpToDateFlag
214       double precision PGAGetRealFromBinary
215       double precision PGAGetRealFromGrayCode
216       integer PGAGetIntegerFromBinary
217       integer PGAGetIntegerFromGrayCode
218       integer PGARank
219       double precision PGAGetFitness
220       integer PGAGetFitnessType
221       integer PGAGetFitnessMinType
222       double precision PGAGetMaxFitnessRank
223       double precision PGAGetFitnessCmaxValue
224       double precision PGAHammingDistance
225       integer PGAGetIntegerAllele
226       integer PGAGetIntegerInitType
227       integer PGAGetMinIntegerInitValue
228       integer PGAGetMaxIntegerInitValue
229       integer PGAMutate
230       integer PGAGetMutationType
231       double precision PGAGetMutationRealValue
232       integer PGAGetMutationIntegerValue
233       integer PGAGetMutationBoundedFlag
234       double precision PGAGetMutationProb
235       integer PGABuildDatatype
236       integer PGAGetRank
237       integer PGAGetNumProcs
238       integer PGAGetCommunicator
239       integer PGAGetDataType
240       integer PGAGetOptDirFlag
241       integer PGAGetStringLength
242       integer PGAGetGAIterValue
243       integer PGAGetMutationOrCrossoverFlag
244       integer PGAGetMutationAndCrossoverFlag
245       integer PGAGetPopSize
246       integer PGAGetNumReplaceValue
247       integer PGAGetPopReplaceType
248       integer PGAGetSortedPopIndex
249       integer PGARandomFlip
250       integer PGARandomInterval
251       double precision PGARandom01
252       double precision PGARandomUniform
253       double precision PGARandomGaussian
254       integer PGAGetRandomSeed
255       double precision PGAGetRealAllele
256       double precision PGAGetMinRealInitValue
257       double precision PGAGetMaxRealInitValue
258       integer PGAGetRealInitType
259       integer PGAGetPrintFrequencyValue
260       integer PGAGetRestartFlag
261       integer PGAGetRestartFrequencyValue
262       double precision PGAGetRestartAlleleChangeProb
263       integer PGASelectNextIndex
264       integer PGAGetSelectType
265       double precision PGAGetPTournamentProb
266       integer PGADone
267       integer PGACheckStoppingConditions
268       integer PGAGetStoppingRuleType
269       integer PGAGetMaxGAIterValue
270       integer PGAGetMaxMachineIntValue
271       integer PGAGetMinMachineIntValue
272       double precision PGAGetMaxMachineDoubleValue
273       double precision PGAGetMinMachineDoubleValue
274       double precision PGAMean
275       double precision PGAStddev
276       integer PGARound
277       integer PGACheckSum
278       integer PGAGetWorstIndex
279       integer PGAGetBestIndex
280 
281       external PGAGetBinaryAllele
282       external PGAGetBinaryInitProb
283       external PGAGetCharacterAllele
284       external PGACreate
285       external PGAGetRandomInitFlag
286       external PGAGetCrossoverType
287       external PGAGetCrossoverProb
288       external PGAGetUniformCrossoverProb
289       external PGADuplicate
290       external PGAGetNoDuplicatesFlag
291       external PGAGetEvaluation
292       external PGAGetEvaluationUpToDateFlag
293       external PGAGetRealFromBinary
294       external PGAGetRealFromGrayCode
295       external PGAGetIntegerFromBinary
296       external PGAGetIntegerFromGrayCode
297       external PGARank
298       external PGAGetFitness
299       external PGAGetFitnessType
300       external PGAGetFitnessMinType
301       external PGAGetMaxFitnessRank
302       external PGAGetFitnessCmaxValue
303       external PGAHammingDistance
304       external PGAGetIntegerAllele
305       external PGAGetIntegerInitType
306       external PGAGetMinIntegerInitValue
307       external PGAGetMaxIntegerInitValue
308       external PGAMutate
309       external PGAGetMutationType
310       external PGAGetMutationRealValue
311       external PGAGetMutationIntegerValue
312       external PGAGetMutationBoundedFlag
313       external PGAGetMutationProb
314       external PGABuildDatatype
315       external PGAGetRank
316       external PGAGetNumProcs
317       external PGAGetCommunicator
318       external PGAGetDataType
319       external PGAGetOptDirFlag
320       external PGAGetStringLength
321       external PGAGetGAIterValue
322       external PGAGetMutationOrCrossoverFlag
323       external PGAGetMutationAndCrossoverFlag
324       external PGAGetPopSize
325       external PGAGetNumReplaceValue
326       external PGAGetPopReplaceType
327       external PGAGetSortedPopIndex
328       external PGARandomFlip
329       external PGARandomInterval
330       external PGARandom01
331       external PGARandomUniform
332       external PGARandomGaussian
333       external PGAGetRandomSeed
334       external PGAGetRealAllele
335       external PGAGetMinRealInitValue
336       external PGAGetMaxRealInitValue
337       external PGAGetRealInitType
338       external PGAGetPrintFrequencyValue
339       external PGAGetRestartFlag
340       external PGAGetRestartFrequencyValue
341       external PGAGetRestartAlleleChangeProb
342       external PGASelectNextIndex
343       external PGAGetSelectType
344       external PGAGetPTournamentProb
345       external PGADone
346       external PGACheckStoppingConditions
347       external PGAGetStoppingRuleType
348       external PGAGetMaxGAIterValue
349       external PGAGetMaxMachineIntValue
350       external PGAGetMinMachineIntValue
351       external PGAGetMaxMachineDoubleValue
352       external PGAGetMinMachineDoubleValue
353       external PGAMean
354       external PGAStddev
355       external PGARound
356       external PGACheckSum
357       external PGAGetWorstIndex
358       external PGAGetBestIndex
359 
360