Skip to content
Snippets Groups Projects
Commit 61866737 authored by ESCOBAR Juan's avatar ESCOBAR Juan
Browse files

Juan 9/04/2013: add acc directive & temp var from mode_zwork to ppm_scalar.f90

parent 1472530d
No related branches found
No related tags found
No related merge requests found
......@@ -87,6 +87,11 @@ USE MODI_BUDGET
USE MODI_PPM
USE MODI_ADVEC_PPM_ALGO
!
USE MODE_MNH_ZWORK, ONLY : ZUNIT=>ZUNIT3D, &
& ZRHOX1=>ZW3D20 ,ZRHOX2=>ZW3D21, &
& ZRHOY1=>ZW3D22 ,ZRHOY2=>ZW3D23, &
& ZRHOZ1=>ZW3D24 ,ZRHOZ2=>ZW3D25
!
IMPLICIT NONE
!
......@@ -123,10 +128,10 @@ INTEGER :: IGRID ! localisation on the model grid
REAL, DIMENSION(SIZE(PCRU,1),SIZE(PCRU,2),SIZE(PCRU,3)) :: ZSRC
!
! Temporary advected rhodj
REAL, DIMENSION(SIZE(PCRU,1),SIZE(PCRU,2),SIZE(PCRU,3)) :: ZRHOX1,ZRHOX2
REAL, DIMENSION(SIZE(PCRU,1),SIZE(PCRU,2),SIZE(PCRU,3)) :: ZRHOY1,ZRHOY2
REAL, DIMENSION(SIZE(PCRU,1),SIZE(PCRU,2),SIZE(PCRU,3)) :: ZRHOZ1,ZRHOZ2
REAL, DIMENSION(SIZE(PCRU,1),SIZE(PCRU,2),SIZE(PCRU,3)) :: ZUNIT
!REAL, DIMENSION(SIZE(PCRU,1),SIZE(PCRU,2),SIZE(PCRU,3)) :: ZRHOX1,ZRHOX2
!REAL, DIMENSION(SIZE(PCRU,1),SIZE(PCRU,2),SIZE(PCRU,3)) :: ZRHOY1,ZRHOY2
!REAL, DIMENSION(SIZE(PCRU,1),SIZE(PCRU,2),SIZE(PCRU,3)) :: ZRHOZ1,ZRHOZ2
!REAL, DIMENSION(SIZE(PCRU,1),SIZE(PCRU,2),SIZE(PCRU,3)) :: ZUNIT
!
!-------------------------------------------------------------------------------
!
......@@ -137,7 +142,8 @@ IGRID = 1
!
! Calculate the advection of the density RHODJ to pass to the algorithm
!
ZUNIT = 1.0
!ZUNIT = 1.0
!$acc data pcopyin (PCRU,PRHODJ) pcopyin(PCRV,PCRW)
CALL PPM_S0_X(HLBCX, IGRID, ZUNIT, PCRU, PRHODJ, PTSTEP, ZRHOX1)
CALL PPM_S0_Y(HLBCY, IGRID, ZUNIT, PCRV, ZRHOX1, PTSTEP, ZRHOY1)
CALL PPM_S0_Z(IGRID, ZUNIT, PCRW, ZRHOY1, PTSTEP, ZRHOZ1)
......@@ -148,6 +154,7 @@ CALL PPM_S0_X(HLBCX, IGRID, ZUNIT, PCRU, ZRHOY2, PTSTEP, ZRHOX2)
! Case with KSV tracers
!
DO JSV=1,KSV
!$acc data pcopyin (PSVT(:,:,:,JSV))
!
CALL ADVEC_PPM_ALGO(HSV_ADV_SCHEME, HLBCX, HLBCY, IGRID, PSVT(:,:,:,JSV), &
PRHODJ, PTSTEP, &
......@@ -158,7 +165,10 @@ DO JSV=1,KSV
!
IF (LBUDGET_SV) CALL BUDGET (PRSVS(:,:,:,JSV),JSV+12,'ADV_BU_RSV')
!
!$acc end data
!
END DO
!
!$acc end data
!
END SUBROUTINE PPM_SCALAR
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment