Next: About
this document Up: Programming
Example Using F77-Callable Previous: HPF
Caller
FORTRAN 77 Callee
SUBROUTINE LOCAL1(
& LB1, UB1, LB_EMBED1, UB_EMBED1,
& LB2, UB2, LB_EMBED2, UB_EMBED2, X, X_DESC
)
INTEGER LB1, UB1, LB_EMBED1, UB_EMBED1
INTEGER LB2, UB2, LB_EMBED2, UB_EMBED2
! The subgrid has been passed in its 'embedded' form
REAL X ( LB_EMBED1 : UB_EMBED1 , LB_EMBED2 :
UB_EMBED2 )
! Locally X_DESC is declared as an INTEGER
INTEGER X_DESC
! Get the global extent of the first axis
! This is an HPF_LOCAL type of inquiry routine with an
! 'F77_' prefix
CALL F77_GLOBAL_SIZE(NX,X,1)
! Otherwise, initialize elements of the array
! Loop only over actual array elements
DO J = LB2, UB2
DO I = LB2, UB2
X(I,J) = I + (J-1) * NX
END DO
END DO
END