Go to the source code of this file.
|
| subroutine | pmpcol (myproc, nprocs, iil, needil, neediu, pmyils, pmyius, colbrt, frstcl, lastcl) |
◆ pmpcol()
| subroutine pmpcol |
( |
integer | myproc, |
|
|
integer | nprocs, |
|
|
integer | iil, |
|
|
integer | needil, |
|
|
integer | neediu, |
|
|
integer, dimension( * ) | pmyils, |
|
|
integer, dimension( * ) | pmyius, |
|
|
logical | colbrt, |
|
|
integer | frstcl, |
|
|
integer | lastcl ) |
Definition at line 6 of file pmpcol.f.
9
10 IMPLICIT NONE
11
12
13
14
15
16
17 INTEGER FRSTCL, IIL, LASTCL, MYPROC, NEEDIL, NEEDIU,
18 $ NPROCS
19 LOGICAL COLBRT
20
21
22 INTEGER PMYILS( * ), PMYIUS( * )
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74 INTEGER I, NEEDIIL, NEEDIIU
75
76
77
78 neediil = needil + iil - 1
79 neediiu = neediu + iil - 1
80
81
82
83 DO 1 i = 1, nprocs
84 IF( pmyils(i).GT.neediil) GOTO 2
85 frstcl = i-1
86 1 CONTINUE
87 2 CONTINUE
88
89
90
91 DO 3 i = nprocs,1,-1
92 IF( pmyius(iTHEN
93
94 IF( pmyius(i).GT.0 )
95 $ GOTO 4
96 ENDIF
97 lastcl = i-1
98 3 CONTINUE
99 4 CONTINUE
100
101
102 IF( (frstcl.LT.myproc).OR.(lastcl.GT.myproc) ) THEN
103 colbrt = .true.
104 ELSE
105 colbrt = .false.
106 ENDIF
107
108 RETURN