Changeset 938


Ignore:
Timestamp:
07/03/19 18:31:43 (5 years ago)
Author:
dubos
Message:

devel : interfaces for caldyn_coriolis

Location:
codes/icosagcm/devel/src
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • codes/icosagcm/devel/src/base/init_grid_param.f90

    r935 r938  
    1111  USE compute_caldyn_fast_mod 
    1212  USE compute_caldyn_slow_hydro_mod 
     13  USE compute_caldyn_coriolis_mod 
    1314 
    1415  IMPLICIT NONE 
     
    7374    compute_caldyn_fast       => compute_caldyn_fast_hex 
    7475    compute_caldyn_slow_hydro => compute_caldyn_slow_hydro_hex 
     76    compute_caldyn_coriolis   => compute_caldyn_coriolis_hex 
    7577  END SUBROUTINE select_compute_hex 
    7678 
     
    8688    compute_caldyn_fast        => compute_caldyn_fast_unst 
    8789    compute_caldyn_slow_hydro  => compute_caldyn_slow_hydro_unst 
     90    compute_caldyn_coriolis   => compute_caldyn_coriolis_unst 
    8891  END SUBROUTINE select_compute_unst 
    8992   
  • codes/icosagcm/devel/src/dynamics/caldyn_hevi.f90

    r935 r938  
    66  USE compute_caldyn_vert_NH_mod, ONLY : compute_caldyn_vert_NH => compute_caldyn_vert_NH_manual 
    77  USE compute_caldyn_kv_mod, ONLY : compute_caldyn_kv 
    8   USE compute_caldyn_Coriolis_mod, ONLY : compute_caldyn_Coriolis => compute_caldyn_Coriolis_manual 
    98  USE compute_caldyn_slow_hydro_mod, ONLY : compute_caldyn_slow_hydro => compute_caldyn_slow_hydro_manual 
    109  USE compute_caldyn_slow_NH_mod, ONLY : compute_caldyn_slow_NH 
     
    3332    USE checksum_mod 
    3433    USE compute_caldyn_mod, ONLY : compute_pvort_only, compute_theta, & 
    35          compute_geopot, compute_caldyn_fast 
     34         compute_geopot, compute_caldyn_fast, compute_caldyn_coriolis 
    3635    IMPLICIT NONE 
    3736    LOGICAL,INTENT(IN)    :: write_out 
  • codes/icosagcm/devel/src/dynamics/compute_caldyn.f90

    r935 r938  
    4646    END SUBROUTINE comp_caldyn_fast 
    4747 
    48   SUBROUTINE comp_caldyn_slow_hydro(zero, u,rhodz,hv,Kv, berni, hflux,du) 
    49     IMPORT 
    50     LOGICAL, INTENT(IN) :: zero 
    51     REAL(rstd),INTENT(IN)  :: u(iim_jjm_u, llm_)    ! prognostic "velocity" 
    52     REAL(rstd),INTENT(IN)  :: rhodz(iim_jjm_i, llm_) 
    53     REAL(rstd),INTENT(IN)  :: hv(iim_jjm_v, llm_)   ! height/mass averaged to vertices 
    54     REAL(rstd),INTENT(IN)  :: Kv(iim_jjm_v, llm_)   ! kinetic energy at vertices 
    55     REAL(rstd), INTENT(OUT) :: berni(iim_jjm_i, llm_)  ! Bernoulli function 
    56     REAL(rstd),INTENT(OUT) :: hflux(iim_jjm_u, llm_) ! hflux in kg/s  
    57     REAL(rstd),INTENT(INOUT) :: du(iim_jjm_u, llm_) 
    58   END SUBROUTINE comp_caldyn_slow_hydro 
     48    SUBROUTINE comp_caldyn_slow_hydro(zero, u,rhodz,hv,Kv, berni, hflux,du) 
     49      IMPORT 
     50      LOGICAL, INTENT(IN) :: zero 
     51      REAL(rstd),INTENT(IN)  :: u(iim_jjm_u, llm_)    ! prognostic "velocity" 
     52      REAL(rstd),INTENT(IN)  :: rhodz(iim_jjm_i, llm_) 
     53      REAL(rstd),INTENT(IN)  :: hv(iim_jjm_v, llm_)   ! height/mass averaged to vertices 
     54      REAL(rstd),INTENT(IN)  :: Kv(iim_jjm_v, llm_)   ! kinetic energy at vertices 
     55      REAL(rstd), INTENT(OUT) :: berni(iim_jjm_i, llm_)  ! Bernoulli function 
     56      REAL(rstd),INTENT(OUT) :: hflux(iim_jjm_u, llm_) ! hflux in kg/s  
     57      REAL(rstd),INTENT(INOUT) :: du(iim_jjm_u, llm_) 
     58    END SUBROUTINE comp_caldyn_slow_hydro 
     59     
     60    SUBROUTINE comp_caldyn_coriolis(hflux,theta,qu, Ftheta, convm,dtheta_rhodz,du) 
     61      IMPORT 
     62      REAL(rstd),INTENT(IN)    :: hflux(iim_jjm_u, llm_)  ! hflux in kg/s 
     63      REAL(rstd),INTENT(IN)    :: theta(iim_jjm_i, llm_, nqdyn_) ! active scalars 
     64      REAL(rstd),INTENT(IN)    :: qu(iim_jjm_u, llm_) 
     65      REAL(rstd), INTENT(OUT)  :: Ftheta(iim_jjm_u, llm_)  ! potential temperature flux 
     66      REAL(rstd),INTENT(OUT)   :: convm(iim_jjm_i, llm_)  ! mass flux convergence 
     67      REAL(rstd),INTENT(OUT)   :: dtheta_rhodz(iim_jjm_i, llm_, nqdyn_) 
     68      REAL(rstd),INTENT(INOUT) :: du(iim_jjm_u, llm_) 
     69    END SUBROUTINE comp_caldyn_coriolis 
    5970 
    6071  END INTERFACE 
     
    6576  PROCEDURE(comp_caldyn_fast),       POINTER :: compute_caldyn_fast       => NULL() 
    6677  PROCEDURE(comp_caldyn_slow_hydro), POINTER :: compute_caldyn_slow_hydro => NULL() 
     78  PROCEDURE(comp_caldyn_coriolis),   POINTER :: compute_caldyn_coriolis   => NULL() 
    6779 
    6880END MODULE compute_caldyn_mod 
Note: See TracChangeset for help on using the changeset viewer.