module CCPP_data !! \section arg_table_CCPP_data Argument Table !! \htmlinclude CCPP_data.html !! use ccpp_types, only: ccpp_t use CCPP_typedefs, only: GFS_interstitial_type, & GFDL_interstitial_type use GFS_typedefs, only: GFS_control_type, & GFS_data_type implicit none private public cdata_tile, & cdata_domain, & cdata_block, & ccpp_suite, & GFDL_interstitial, & GFS_control, & GFS_data, & GFS_interstitial !-------------------------------------------------------! ! GFS data containers, GFS_Data has dimension nblocks ! ! and GFS_Interstitial has dimension nthreads ! !-------------------------------------------------------! type(GFS_control_type), save, target :: GFS_control type(GFS_data_type), dimension(:), allocatable, save, target :: GFS_data type(GFS_interstitial_type), dimension(:), allocatable, save, target :: GFS_interstitial !------------------------------------------------------! ! CCPP data containers for dynamics (fast physics) ! !------------------------------------------------------! type(GFDL_interstitial_type), save, target :: GFDL_interstitial !------------------------------------------------------! ! CCPP containers for the six tiles used in dynamics, ! ! for the entire domain and for the individual blocks ! ! with dimensions nblocks and nthreads ! !------------------------------------------------------! type(ccpp_t), save, target :: cdata_tile type(ccpp_t), save, target :: cdata_domain type(ccpp_t), dimension(:,:), allocatable, save, target :: cdata_block !------------------------------------------------------! ! CCPP suite name ! !------------------------------------------------------! character(len=256) :: ccpp_suite='undefined' end module CCPP_data