220 |
|
|
221 |
RETURN |
RETURN |
222 |
END |
END |
223 |
|
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
224 |
|
CBOP 0 |
225 |
|
C !ROUTINE: diagnostics_get_pointers |
226 |
|
C !INTERFACE: |
227 |
|
subroutine diagnostics_get_pointers(diagName,ipoint,jpoint,myThid) |
228 |
|
|
229 |
|
C !DESCRIPTION: |
230 |
|
C *==========================================================* |
231 |
|
C | subroutine diagnostics_get_pointers |
232 |
|
C | o Returns the idiag and jdiag pointers for a |
233 |
|
C | specified diagnostic - returns 0 if not active |
234 |
|
C *==========================================================* |
235 |
|
|
236 |
|
C !USES: |
237 |
|
IMPLICIT NONE |
238 |
|
#include "EEPARAMS.h" |
239 |
|
#include "SIZE.h" |
240 |
|
#include "DIAGNOSTICS_SIZE.h" |
241 |
|
#include "DIAGNOSTICS.h" |
242 |
|
|
243 |
|
C !INPUT PARAMETERS: |
244 |
|
C diagName :: diagnostic identificator name (8 characters long) |
245 |
|
C myThid :: my thread Id number |
246 |
|
C !OUTPUT PARAMETERS: |
247 |
|
C ipoint :: pointer value into qdiag array |
248 |
|
C jpoint :: pointer value into diagnostics list |
249 |
|
|
250 |
|
CHARACTER*8 diagName |
251 |
|
INTEGER ipoint, jpoint, myThid |
252 |
|
CEOP |
253 |
|
|
254 |
|
C !LOCAL VARIABLES: |
255 |
|
INTEGER n,m |
256 |
|
|
257 |
|
ipoint = 0 |
258 |
|
jpoint = 0 |
259 |
|
|
260 |
|
C- search for this diag. in the active 2D/3D diagnostics list |
261 |
|
DO n=1,nlists |
262 |
|
DO m=1,nActive(n) |
263 |
|
IF ( diagName.EQ.flds(m,n) .AND. idiag(m,n).NE.0 ) THEN |
264 |
|
ipoint = abs(idiag(m,n)) |
265 |
|
jpoint = jdiag(m,n) |
266 |
|
ENDIF |
267 |
|
ENDDO |
268 |
|
ENDDO |
269 |
|
|
270 |
|
RETURN |
271 |
|
END |