! Special set of characters for RCS information ! $Source: /home/cvsroot/MNH-VX-Y-Z/src/MNH/modd_param_ibm.f90 $ !------------------------------------------------------------------------------ ! ####################### MODULE MODD_IBM_PARAM_n ! ####################### ! !!**** MODD_IBM_PARAM_n - declaration of the control parameters !! used in the immersed boundary method !! !! PURPOSE !! ------- !!**** The purpose of this declarative module is to declare the constants !! which allow to initialize the embedded surface !! !! !! IMPLICIT ARGUMENTS !! ------------------ !! None !! !! REFERENCE !! --------- !! !! AUTHOR !! ------ !! Franck Auguste (CERFACS-AE) !! !! MODIFICATIONS !! ------------- !! Original 01/01/2015 ! !------------------------------------------------------------------------------ ! !**** 0. DECLARATIONS ! --------------- ! USE MODD_PARAMETERS, ONLY: JPMODELMAX IMPLICIT NONE ! TYPE IBM_t ! LOGICAL :: LIBM,LIBM_SOLAR,LIBM_RLS,LRECYCL ! IBM logical CHARACTER(LEN=4) :: CIBM_TYPE ! Switch generalized/idealized surface CHARACTER(LEN=3) :: CIBM_MODE_INTE1_P,CIBM_MODE_INTE1_Q,CIBM_MODE_INTE1_R,CIBM_MODE_INTE1_S, & ! 1D interpolation type CIBM_MODE_INTE1_T,CIBM_MODE_INTE1_E,& CIBM_MODE_INTE1NV,CIBM_MODE_INTE1TV,CIBM_MODE_INTE1CV CHARACTER(LEN=3) :: CIBM_MODE_INTE3_P,CIBM_MODE_INTE3_Q,CIBM_MODE_INTE3_R,CIBM_MODE_INTE3_S, & ! 3D interpolation type CIBM_MODE_INTE3_T,CIBM_MODE_INTE3_E,CIBM_MODE_INTE3_V CHARACTER(LEN=3) :: CIBM_TYPE_BOUND_P,CIBM_TYPE_BOUND_Q,CIBM_TYPE_BOUND_R,CIBM_TYPE_BOUND_S, & ! Boundary interpolation type CIBM_TYPE_BOUND_T,CIBM_TYPE_BOUND_E CHARACTER(LEN=3) :: CIBM_MODE_BOUND_P,CIBM_MODE_BOUND_Q,CIBM_MODE_BOUND_R,CIBM_MODE_BOUND_S, & ! Boundary interpolation type CIBM_MODE_BOUND_T,CIBM_MODE_BOUND_E CHARACTER(LEN=3) :: CIBM_FORC_BOUND_P,CIBM_FORC_BOUND_Q,CIBM_FORC_BOUND_R,CIBM_FORC_BOUND_S, & ! Boundary interpolation type CIBM_FORC_BOUND_T,CIBM_FORC_BOUND_E REAL :: XIBM_FORC_BOUND_P,XIBM_FORC_BOUND_Q,XIBM_FORC_BOUND_R,XIBM_FORC_BOUND_S, & ! Boundary interpolation type XIBM_FORC_BOUND_T,XIBM_FORC_BOUND_E CHARACTER(LEN=3) :: CIBM_TYPE_BOUNN_V,CIBM_TYPE_BOUNT_V,CIBM_TYPE_BOUNC_V ! BI type (velocity) CHARACTER(LEN=3) :: CIBM_MODE_BOUNN_V,CIBM_MODE_BOUNT_V,CIBM_MODE_BOUNC_V CHARACTER(LEN=3) :: CIBM_FORC_BOUNN_V,CIBM_FORC_BOUNT_V,CIBM_FORC_BOUNC_V,CIBM_FORC_BOUNR_V REAL :: XIBM_FORC_BOUNN_V,XIBM_FORC_BOUNT_V,XIBM_FORC_BOUNC_V REAL :: XIBM_RADIUS_P,XIBM_RADIUS_Q,XIBM_RADIUS_R,XIBM_RADIUS_S, & ! radius of IDW,MDW XIBM_RADIUS_T,XIBM_RADIUS_E,XIBM_RADIUS_V REAL :: XIBM_POWERS_P,XIBM_POWERS_Q,XIBM_POWERS_R,XIBM_POWERS_S, & ! power of IDW,MDW XIBM_POWERS_T,XIBM_POWERS_E,XIBM_POWERS_V REAL :: XIBM_EPSI ! min truncation parameters REAL :: XIBM_IEPS ! max truncation parameters REAL :: XIBM_RES,XIBM_DIV,XIBM_CFL,XIBM_RES2,XIBM_SFTH ! residue for step projection INTEGER :: NIBM_ITR ! iteration for step projection INTEGER :: NIBM_SMOOTH ! Smooth levels for LS INTEGER :: NIBM_LAYER_V,NIBM_LAYER_T,NIBM_LAYER_P,NIBM_LAYER_R,& ! layers number in each type NIBM_LAYER_E,NIBM_LAYER_Q,NIBM_LAYER_S REAL :: XIBM_IDEA_DELT ! acuteness discretization for RP REAL :: XIBM_SMOOTH, XIBM_VIT, XIBM_RUG,XIBM_LATORI,XIBM_LONORI ! Smooth weighting REAL :: XIBM_SOLAR_ANX,XIBM_SOLAR_ANY,XIBM_SOLAR_ANZ,XIBM_SOLAR_MAX,XIBM_SOLAR_EXP,XIBM_SOLAR_ERR,XIBM_SOLAR_REF REAL :: XIBM_TIME REAL :: XIBM_SOLAR_CPG,XIBM_SOLAR_DZG,XIBM_SOLAR_DZR,XIBM_SOLAR_LBG,XIBM_SOLAR_LBF,XIBM_SOLAR_EMI REAL :: XXRECYCLB1,XXRECYCLE1,XYRECYCLB1,XYRECYCLE1,& XXRECYCLB2,XXRECYCLE2,XYRECYCLB2,XYRECYCLE2,XDRECYCL,XARECYCL REAL :: XIBM_VISC_U,XIBM_VISC_T,XIBM_VISC_E,XIBM_VISC_R,XIBM_VISC_S,XIBM_TKE,XIBM_2DIFU REAL, DIMENSION(:,:,:,:) ,POINTER :: XIBM_DIFF=>NULL() REAL, DIMENSION(:) ,POINTER :: XIBM_THT=>NULL() REAL, DIMENSION(:,:,:) ,POINTER :: XIBM_XMUT=>NULL() REAL, DIMENSION(:,:,:,:) ,POINTER :: XIBM_LAMT=>NULL() REAL, DIMENSION(:,:,:,:) ,POINTER :: XIBM_LS=>NULL() ! LS for MNH REAL, DIMENSION(:,:,:) ,POINTER :: XIBM_SW0=>NULL() REAL, DIMENSION(:,:,:) ,POINTER :: XIBM_LW0=>NULL() REAL, DIMENSION(:,:,:) ,POINTER :: XIBM_ALTI=>NULL() REAL, DIMENSION(:,:,:) ,POINTER :: XIBM_SOLAR_INDEXK=>NULL() REAL, DIMENSION(:,:,:,:) ,POINTER :: XRHODJ2=>NULL() REAL, DIMENSION(:,:,:,:) ,POINTER :: XIBM_PT=>NULL() REAL, DIMENSION(:,:,:) ,POINTER :: XRECYCL_IND=>NULL() INTEGER, DIMENSION(:,:) ,POINTER :: NSAV_RECYCL1=>NULL() INTEGER, DIMENSION(:,:) ,POINTER :: NSAV_RECYCL2=>NULL() REAL, DIMENSION(:,:,:) ,POINTER :: XIBM_BU=>NULL() REAL, DIMENSION(:,:,:) ,POINTER :: XIBM_GT=>NULL() REAL, DIMENSION(:,:) ,POINTER :: XIBM_SV1=>NULL() REAL, DIMENSION(:,:) ,POINTER :: XIBM_SV2=>NULL() REAL, DIMENSION(:,:) ,POINTER :: XIBM_SV3=>NULL() REAL, DIMENSION(:,:) ,POINTER :: XIBM_SV4=>NULL() REAL, DIMENSION(:,:) ,POINTER :: XIBM_SV5=>NULL() REAL, DIMENSION(:,:) ,POINTER :: XIBM_SV6=>NULL() REAL, DIMENSION(:,:,:,:) ,POINTER :: XIBM_SU=>NULL() REAL, DIMENSION(:,:,:,:) ,POINTER :: XIBM_GHOST_P=>NULL() ! Ghosts,Images location/Index REAL, DIMENSION(:,:,:,:) ,POINTER :: XIBM_GHOST_V=>NULL() REAL, DIMENSION(:,:,:,:,:) ,POINTER :: XIBM_IMAGE_P=>NULL() REAL, DIMENSION(:,:,:) ,POINTER :: XIBM_SOLAR_P=>NULL() REAL, DIMENSION(:,:,:) ,POINTER :: XIBM_MOY_P=>NULL() REAL, DIMENSION(:,:,:,:,:) ,POINTER :: XIBM_IMAGE_V=>NULL() INTEGER, DIMENSION(:,:,:,:) ,POINTER :: NIBM_GHOST_P=>NULL() INTEGER, DIMENSION(:,:,:,:) ,POINTER :: NIBM_GHOST_V=>NULL() INTEGER, DIMENSION(:,:,:,:,:,:) ,POINTER :: NIBM_IMAGE_P=>NULL() INTEGER, DIMENSION(:,:,:,:,:,:) ,POINTER :: NIBM_IMAGE_V=>NULL() REAL, DIMENSION(:,:,:,:,:,:) ,POINTER :: XIBM_TESTI_P=>NULL() REAL, DIMENSION(:,:,:,:,:,:) ,POINTER :: XIBM_TESTI_V=>NULL() ! END TYPE IBM_t TYPE(IBM_t), DIMENSION(JPMODELMAX), TARGET, SAVE :: IBM_MODEL LOGICAL ,POINTER :: LIBM=>NULL() LOGICAL ,POINTER :: LIBM_SOLAR=>NULL() LOGICAL ,POINTER :: LIBM_RLS=>NULL() LOGICAL ,POINTER :: LRECYCL=>NULL() CHARACTER(LEN=4) ,POINTER :: CIBM_TYPE=>NULL() REAL ,POINTER :: XIBM_EPSI=>NULL() REAL ,POINTER :: XIBM_IEPS=>NULL() REAL ,POINTER :: XIBM_DIV=>NULL() INTEGER ,POINTER :: NIBM_ITR=>NULL() INTEGER ,POINTER :: NIBM_SMOOTH=>NULL() INTEGER ,POINTER :: NIBM_LAYER_P=>NULL() INTEGER ,POINTER :: NIBM_LAYER_Q=>NULL() INTEGER ,POINTER :: NIBM_LAYER_R=>NULL() INTEGER ,POINTER :: NIBM_LAYER_S=>NULL() INTEGER ,POINTER :: NIBM_LAYER_T=>NULL() INTEGER ,POINTER :: NIBM_LAYER_V=>NULL() INTEGER ,POINTER :: NIBM_LAYER_E=>NULL() REAL ,POINTER :: XIBM_RADIUS_P=>NULL() REAL ,POINTER :: XIBM_RADIUS_Q=>NULL() REAL ,POINTER :: XIBM_RADIUS_R=>NULL() REAL ,POINTER :: XIBM_RADIUS_S=>NULL() REAL ,POINTER :: XIBM_RADIUS_T=>NULL() REAL ,POINTER :: XIBM_RADIUS_E=>NULL() REAL ,POINTER :: XIBM_RADIUS_V=>NULL() REAL ,POINTER :: XIBM_POWERS_P=>NULL() REAL ,POINTER :: XIBM_POWERS_Q=>NULL() REAL ,POINTER :: XIBM_POWERS_R=>NULL() REAL ,POINTER :: XIBM_POWERS_S=>NULL() REAL ,POINTER :: XIBM_POWERS_T=>NULL() REAL ,POINTER :: XIBM_POWERS_E=>NULL() REAL ,POINTER :: XIBM_POWERS_V=>NULL() REAL ,POINTER :: XIBM_FORC_BOUNN_V=>NULL() REAL ,POINTER :: XIBM_FORC_BOUNT_V=>NULL() REAL ,POINTER :: XIBM_FORC_BOUNC_V=>NULL() REAL ,POINTER :: XIBM_FORC_BOUND_P=>NULL() REAL ,POINTER :: XIBM_FORC_BOUND_Q=>NULL() REAL ,POINTER :: XIBM_FORC_BOUND_R=>NULL() REAL ,POINTER :: XIBM_FORC_BOUND_S=>NULL() REAL ,POINTER :: XIBM_FORC_BOUND_T=>NULL() REAL ,POINTER :: XIBM_FORC_BOUND_E=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_INTE1_P=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_INTE3_P=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_BOUND_P=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_TYPE_BOUND_P=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_INTE1_Q=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_INTE3_Q=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_BOUND_Q=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_TYPE_BOUND_Q=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_INTE1_R=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_INTE3_R=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_BOUND_R=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_TYPE_BOUND_R=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_INTE1_S=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_INTE3_S=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_BOUND_S=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_TYPE_BOUND_S=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_INTE1_T=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_INTE3_T=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_BOUND_T=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_TYPE_BOUND_T=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_INTE1_E=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_INTE3_E=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_BOUND_E=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_TYPE_BOUND_E=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_INTE1NV=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_INTE1TV=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_INTE1CV=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_INTE3_V=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_BOUNN_V=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_TYPE_BOUNN_V=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_BOUNT_V=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_TYPE_BOUNT_V=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_MODE_BOUNC_V=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_TYPE_BOUNC_V=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_FORC_BOUNN_V=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_FORC_BOUNR_V=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_FORC_BOUNT_V=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_FORC_BOUNC_V=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_FORC_BOUND_P=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_FORC_BOUND_Q=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_FORC_BOUND_R=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_FORC_BOUND_S=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_FORC_BOUND_T=>NULL() CHARACTER(LEN=3) ,POINTER :: CIBM_FORC_BOUND_E=>NULL() REAL ,POINTER :: XIBM_IDEA_DELT=>NULL() REAL ,POINTER :: XIBM_SMOOTH=>NULL() REAL ,POINTER :: XIBM_VIT=>NULL() REAL ,POINTER :: XXRECYCLB1=>NULL() REAL ,POINTER :: XYRECYCLB1=>NULL() REAL ,POINTER :: XXRECYCLE1=>NULL() REAL ,POINTER :: XYRECYCLE1=>NULL() REAL ,POINTER :: XXRECYCLB2=>NULL() REAL ,POINTER :: XYRECYCLB2=>NULL() REAL ,POINTER :: XXRECYCLE2=>NULL() REAL ,POINTER :: XYRECYCLE2=>NULL() REAL ,POINTER :: XDRECYCL=>NULL() REAL ,POINTER :: XARECYCL=>NULL() REAL ,POINTER :: XIBM_RUG=>NULL() REAL ,POINTER :: XIBM_LATORI=>NULL() REAL ,POINTER :: XIBM_SOLAR_ANX=>NULL() REAL ,POINTER :: XIBM_TIME=>NULL() REAL ,POINTER :: XIBM_SOLAR_ANY=>NULL() REAL ,POINTER :: XIBM_SOLAR_ANZ=>NULL() REAL ,POINTER :: XIBM_SOLAR_MAX=>NULL() REAL ,POINTER :: XIBM_SOLAR_EXP=>NULL() REAL ,POINTER :: XIBM_SOLAR_ERR=>NULL() REAL ,POINTER :: XIBM_SOLAR_REF=>NULL() REAL ,POINTER :: XIBM_SOLAR_CPG=>NULL() REAL ,POINTER :: XIBM_SOLAR_DZG=>NULL() REAL ,POINTER :: XIBM_SOLAR_DZR=>NULL() REAL ,POINTER :: XIBM_SOLAR_LBG=>NULL() REAL ,POINTER :: XIBM_SOLAR_LBF=>NULL() REAL ,POINTER :: XIBM_SOLAR_EMI=>NULL() REAL ,POINTER :: XIBM_LONORI=>NULL() REAL ,POINTER :: XIBM_TKE=>NULL() REAL ,POINTER :: XIBM_VISC_U=>NULL() REAL ,POINTER :: XIBM_VISC_T=>NULL() REAL ,POINTER :: XIBM_VISC_E=>NULL() REAL ,POINTER :: XIBM_VISC_R=>NULL() REAL ,POINTER :: XIBM_VISC_S=>NULL() REAL ,POINTER :: XIBM_2DIFU=>NULL() REAL ,POINTER :: XIBM_RES=>NULL() REAL ,POINTER :: XIBM_RES2=>NULL() REAL ,POINTER :: XIBM_SFTH=>NULL() REAL ,POINTER :: XIBM_CFL=>NULL() REAL, DIMENSION(:,:,:),POINTER :: XIBM_XMUT=>NULL() REAL, DIMENSION(:,:,:,:),POINTER :: XIBM_LAMT=>NULL() REAL, DIMENSION(:,:,:,:),POINTER :: XIBM_DIFF=>NULL() REAL, DIMENSION(:),POINTER :: XIBM_THT=>NULL() REAL, DIMENSION(:,:,:,:),POINTER :: XIBM_LS=>NULL() REAL, DIMENSION(:,:,:),POINTER :: XIBM_SW0=>NULL() REAL, DIMENSION(:,:,:),POINTER :: XIBM_LW0=>NULL() REAL, DIMENSION(:,:,:,:),POINTER :: XRHODJ2=>NULL() REAL, DIMENSION(:,:,:,:),POINTER :: XIBM_PT=>NULL() REAL, DIMENSION(:,:,:),POINTER :: XRECYCL_IND=>NULL() INTEGER, DIMENSION(:,:),POINTER :: NSAV_RECYCL1=>NULL() INTEGER, DIMENSION(:,:),POINTER :: NSAV_RECYCL2=>NULL() REAL, DIMENSION(:,:,:),POINTER :: XIBM_BU=>NULL() REAL, DIMENSION(:,:,:),POINTER :: XIBM_GT=>NULL() REAL, DIMENSION(:,:),POINTER :: XIBM_SV1=>NULL() REAL, DIMENSION(:,:),POINTER :: XIBM_SV2=>NULL() REAL, DIMENSION(:,:),POINTER :: XIBM_SV3=>NULL() REAL, DIMENSION(:,:),POINTER :: XIBM_SV4=>NULL() REAL, DIMENSION(:,:),POINTER :: XIBM_SV5=>NULL() REAL, DIMENSION(:,:),POINTER :: XIBM_SV6=>NULL() REAL, DIMENSION(:,:,:,:),POINTER :: XIBM_SU=>NULL() REAL, DIMENSION(:,:,:,:) ,POINTER :: XIBM_GHOST_P=>NULL() REAL, DIMENSION(:,:,:,:) ,POINTER :: XIBM_GHOST_V=>NULL() REAL, DIMENSION(:,:,:,:,:) ,POINTER :: XIBM_IMAGE_P=>NULL() REAL, DIMENSION(:,:,:) ,POINTER :: XIBM_SOLAR_P=>NULL() REAL, DIMENSION(:,:,:) ,POINTER :: XIBM_MOY_P=>NULL() REAL, DIMENSION(:,:,:) ,POINTER :: XIBM_ALTI=>NULL() REAL, DIMENSION(:,:,:) ,POINTER :: XIBM_SOLAR_INDEXK=>NULL() REAL, DIMENSION(:,:,:,:,:) ,POINTER :: XIBM_IMAGE_V=>NULL() INTEGER, DIMENSION(:,:,:,:) ,POINTER :: NIBM_GHOST_P=>NULL() INTEGER, DIMENSION(:,:,:,:) ,POINTER :: NIBM_GHOST_V=>NULL() INTEGER, DIMENSION(:,:,:,:,:,:) ,POINTER :: NIBM_IMAGE_P=>NULL() INTEGER, DIMENSION(:,:,:,:,:,:) ,POINTER :: NIBM_IMAGE_V=>NULL() REAL, DIMENSION(:,:,:,:,:,:) ,POINTER :: XIBM_TESTI_P=>NULL() REAL, DIMENSION(:,:,:,:,:,:) ,POINTER :: XIBM_TESTI_V=>NULL() CONTAINS SUBROUTINE IBM_GOTO_MODEL(KFROM, KTO) INTEGER, INTENT(IN) :: KFROM, KTO ! ! Save current state for allocated arrays IBM_MODEL(KFROM)%XIBM_XMUT=>XIBM_XMUT IBM_MODEL(KFROM)%XIBM_LAMT=>XIBM_LAMT IBM_MODEL(KFROM)%XIBM_DIFF=>XIBM_DIFF IBM_MODEL(KFROM)%XIBM_THT=>XIBM_THT IBM_MODEL(KFROM)%XIBM_LS=>XIBM_LS IBM_MODEL(KFROM)%XIBM_SW0=>XIBM_SW0 IBM_MODEL(KFROM)%XIBM_LW0=>XIBM_LW0 IBM_MODEL(KFROM)%XIBM_ALTI=>XIBM_ALTI IBM_MODEL(KFROM)%XIBM_SOLAR_INDEXK=>XIBM_SOLAR_INDEXK IBM_MODEL(KFROM)%XRHODJ2=>XRHODJ2 IBM_MODEL(KFROM)%XIBM_PT=>XIBM_PT IBM_MODEL(KFROM)%XIBM_BU=>XIBM_BU IBM_MODEL(KFROM)%XIBM_GT=>XIBM_GT IBM_MODEL(KFROM)%XIBM_SV1=>XIBM_SV1 IBM_MODEL(KFROM)%XIBM_SV2=>XIBM_SV2 IBM_MODEL(KFROM)%XIBM_SV3=>XIBM_SV3 IBM_MODEL(KFROM)%XIBM_SV4=>XIBM_SV4 IBM_MODEL(KFROM)%XIBM_SV5=>XIBM_SV5 IBM_MODEL(KFROM)%XIBM_SV6=>XIBM_SV6 IBM_MODEL(KFROM)%XIBM_SU=>XIBM_SU IBM_MODEL(KFROM)%XIBM_GHOST_P=>XIBM_GHOST_P IBM_MODEL(KFROM)%XIBM_GHOST_V=>XIBM_GHOST_V IBM_MODEL(KFROM)%XIBM_GHOST_P=>XIBM_GHOST_P IBM_MODEL(KFROM)%XIBM_GHOST_V=>XIBM_GHOST_V IBM_MODEL(KFROM)%NIBM_IMAGE_P=>NIBM_IMAGE_P IBM_MODEL(KFROM)%NIBM_IMAGE_V=>NIBM_IMAGE_V IBM_MODEL(KFROM)%NIBM_IMAGE_P=>NIBM_IMAGE_P IBM_MODEL(KFROM)%NIBM_IMAGE_V=>NIBM_IMAGE_V IBM_MODEL(KFROM)%XIBM_TESTI_P=>XIBM_TESTI_P IBM_MODEL(KFROM)%XIBM_TESTI_V=>XIBM_TESTI_V ! ! Current model is set to model KTO LIBM=>IBM_MODEL(KTO)%LIBM LIBM_SOLAR=>IBM_MODEL(KTO)%LIBM_SOLAR LIBM_RLS=>IBM_MODEL(KTO)%LIBM_RLS LRECYCL=>IBM_MODEL(KTO)%LRECYCL CIBM_TYPE=>IBM_MODEL(KTO)%CIBM_TYPE XIBM_EPSI=>IBM_MODEL(KTO)%XIBM_EPSI XIBM_IEPS=>IBM_MODEL(KTO)%XIBM_IEPS XIBM_DIV=>IBM_MODEL(KTO)%XIBM_DIV NIBM_ITR=>IBM_MODEL(KTO)%NIBM_ITR XIBM_SMOOTH=>IBM_MODEL(KTO)%XIBM_SMOOTH XIBM_VIT=>IBM_MODEL(KTO)%XIBM_VIT XXRECYCLB1=>IBM_MODEL(KTO)%XXRECYCLB1 XYRECYCLB1=>IBM_MODEL(KTO)%XYRECYCLB1 XXRECYCLE1=>IBM_MODEL(KTO)%XXRECYCLE1 XYRECYCLE1=>IBM_MODEL(KTO)%XYRECYCLE1 XXRECYCLB2=>IBM_MODEL(KTO)%XXRECYCLB2 XYRECYCLB2=>IBM_MODEL(KTO)%XYRECYCLB2 XXRECYCLE2=>IBM_MODEL(KTO)%XXRECYCLE2 XYRECYCLE2=>IBM_MODEL(KTO)%XYRECYCLE2 XDRECYCL=>IBM_MODEL(KTO)%XDRECYCL XARECYCL=>IBM_MODEL(KTO)%XARECYCL XIBM_RUG=>IBM_MODEL(KTO)%XIBM_RUG XIBM_LATORI=>IBM_MODEL(KTO)%XIBM_LATORI XIBM_SOLAR_ANX=>IBM_MODEL(KTO)%XIBM_SOLAR_ANX XIBM_TIME=>IBM_MODEL(KTO)%XIBM_TIME XIBM_SOLAR_ANY=>IBM_MODEL(KTO)%XIBM_SOLAR_ANY XIBM_SOLAR_ANZ=>IBM_MODEL(KTO)%XIBM_SOLAR_ANZ XIBM_SOLAR_MAX=>IBM_MODEL(KTO)%XIBM_SOLAR_MAX XIBM_SOLAR_ERR=>IBM_MODEL(KTO)%XIBM_SOLAR_ERR XIBM_SOLAR_REF=>IBM_MODEL(KTO)%XIBM_SOLAR_REF XIBM_SOLAR_EXP=>IBM_MODEL(KTO)%XIBM_SOLAR_EXP XIBM_SOLAR_CPG=>IBM_MODEL(KTO)%XIBM_SOLAR_CPG XIBM_SOLAR_DZG=>IBM_MODEL(KTO)%XIBM_SOLAR_DZG XIBM_SOLAR_DZR=>IBM_MODEL(KTO)%XIBM_SOLAR_DZR XIBM_SOLAR_LBG=>IBM_MODEL(KTO)%XIBM_SOLAR_LBG XIBM_SOLAR_LBF=>IBM_MODEL(KTO)%XIBM_SOLAR_LBF XIBM_SOLAR_EMI=>IBM_MODEL(KTO)%XIBM_SOLAR_EMI XIBM_LONORI=>IBM_MODEL(KTO)%XIBM_LONORI XIBM_TKE=>IBM_MODEL(KTO)%XIBM_TKE XIBM_VISC_U=>IBM_MODEL(KTO)%XIBM_VISC_U XIBM_VISC_T=>IBM_MODEL(KTO)%XIBM_VISC_T XIBM_VISC_E=>IBM_MODEL(KTO)%XIBM_VISC_E XIBM_VISC_R=>IBM_MODEL(KTO)%XIBM_VISC_R XIBM_VISC_S=>IBM_MODEL(KTO)%XIBM_VISC_S XIBM_2DIFU=>IBM_MODEL(KTO)%XIBM_2DIFU XIBM_RES=>IBM_MODEL(KTO)%XIBM_RES XIBM_RES2=>IBM_MODEL(KTO)%XIBM_RES2 XIBM_SFTH=>IBM_MODEL(KTO)%XIBM_SFTH XIBM_CFL=>IBM_MODEL(KTO)%XIBM_CFL NIBM_SMOOTH=>IBM_MODEL(KTO)%NIBM_SMOOTH NIBM_LAYER_E=>IBM_MODEL(KTO)%NIBM_LAYER_E NIBM_LAYER_P=>IBM_MODEL(KTO)%NIBM_LAYER_P NIBM_LAYER_Q=>IBM_MODEL(KTO)%NIBM_LAYER_Q NIBM_LAYER_R=>IBM_MODEL(KTO)%NIBM_LAYER_R NIBM_LAYER_S=>IBM_MODEL(KTO)%NIBM_LAYER_S NIBM_LAYER_T=>IBM_MODEL(KTO)%NIBM_LAYER_T NIBM_LAYER_V=>IBM_MODEL(KTO)%NIBM_LAYER_V XIBM_IDEA_DELT=>IBM_MODEL(KTO)%XIBM_IDEA_DELT XIBM_XMUT=>IBM_MODEL(KTO)%XIBM_XMUT XIBM_LAMT=>IBM_MODEL(KTO)%XIBM_LAMT XIBM_DIFF=>IBM_MODEL(KTO)%XIBM_DIFF XIBM_THT=>IBM_MODEL(KTO)%XIBM_THT XIBM_LS=>IBM_MODEL(KTO)%XIBM_LS XIBM_SW0=>IBM_MODEL(KTO)%XIBM_SW0 XIBM_LW0=>IBM_MODEL(KTO)%XIBM_LW0 XIBM_ALTI=>IBM_MODEL(KTO)%XIBM_ALTI XIBM_SOLAR_INDEXK=>IBM_MODEL(KTO)%XIBM_SOLAR_INDEXK XRHODJ2=>IBM_MODEL(KTO)%XRHODJ2 XIBM_PT=>IBM_MODEL(KTO)%XIBM_PT XRECYCL_IND=>IBM_MODEL(KTO)%XRECYCL_IND NSAV_RECYCL1=>IBM_MODEL(KTO)%NSAV_RECYCL1 NSAV_RECYCL2=>IBM_MODEL(KTO)%NSAV_RECYCL2 XIBM_BU=>IBM_MODEL(KTO)%XIBM_BU XIBM_GT=>IBM_MODEL(KTO)%XIBM_GT XIBM_SV1=>IBM_MODEL(KTO)%XIBM_SV1 XIBM_SV2=>IBM_MODEL(KTO)%XIBM_SV2 XIBM_SV3=>IBM_MODEL(KTO)%XIBM_SV3 XIBM_SV4=>IBM_MODEL(KTO)%XIBM_SV4 XIBM_SV5=>IBM_MODEL(KTO)%XIBM_SV5 XIBM_SV6=>IBM_MODEL(KTO)%XIBM_SV6 XIBM_SU=>IBM_MODEL(KTO)%XIBM_SU XIBM_GHOST_P=>IBM_MODEL(KTO)%XIBM_GHOST_P XIBM_GHOST_V=>IBM_MODEL(KTO)%XIBM_GHOST_V NIBM_GHOST_P=>IBM_MODEL(KTO)%NIBM_GHOST_P NIBM_GHOST_V=>IBM_MODEL(KTO)%NIBM_GHOST_V XIBM_IMAGE_P=>IBM_MODEL(KTO)%XIBM_IMAGE_P XIBM_SOLAR_P=>IBM_MODEL(KTO)%XIBM_SOLAR_P XIBM_MOY_P=>IBM_MODEL(KTO)%XIBM_MOY_P XIBM_IMAGE_V=>IBM_MODEL(KTO)%XIBM_IMAGE_V NIBM_IMAGE_P=>IBM_MODEL(KTO)%NIBM_IMAGE_P NIBM_IMAGE_V=>IBM_MODEL(KTO)%NIBM_IMAGE_V XIBM_TESTI_P=>IBM_MODEL(KTO)%XIBM_TESTI_P XIBM_TESTI_V=>IBM_MODEL(KTO)%XIBM_TESTI_V XIBM_RADIUS_P=>IBM_MODEL(KTO)%XIBM_RADIUS_P XIBM_POWERS_P=>IBM_MODEL(KTO)%XIBM_POWERS_P XIBM_RADIUS_Q=>IBM_MODEL(KTO)%XIBM_RADIUS_Q XIBM_POWERS_Q=>IBM_MODEL(KTO)%XIBM_POWERS_Q XIBM_RADIUS_R=>IBM_MODEL(KTO)%XIBM_RADIUS_R XIBM_POWERS_R=>IBM_MODEL(KTO)%XIBM_POWERS_R XIBM_RADIUS_S=>IBM_MODEL(KTO)%XIBM_RADIUS_S XIBM_POWERS_S=>IBM_MODEL(KTO)%XIBM_POWERS_S XIBM_RADIUS_T=>IBM_MODEL(KTO)%XIBM_RADIUS_T XIBM_POWERS_T=>IBM_MODEL(KTO)%XIBM_POWERS_T XIBM_RADIUS_E=>IBM_MODEL(KTO)%XIBM_RADIUS_E XIBM_POWERS_E=>IBM_MODEL(KTO)%XIBM_POWERS_E XIBM_RADIUS_V=>IBM_MODEL(KTO)%XIBM_RADIUS_V XIBM_POWERS_V=>IBM_MODEL(KTO)%XIBM_POWERS_V XIBM_FORC_BOUND_P => IBM_MODEL(KTO)%XIBM_FORC_BOUND_P XIBM_FORC_BOUND_Q => IBM_MODEL(KTO)%XIBM_FORC_BOUND_Q XIBM_FORC_BOUND_R => IBM_MODEL(KTO)%XIBM_FORC_BOUND_R XIBM_FORC_BOUND_S => IBM_MODEL(KTO)%XIBM_FORC_BOUND_S XIBM_FORC_BOUND_T => IBM_MODEL(KTO)%XIBM_FORC_BOUND_T XIBM_FORC_BOUND_E => IBM_MODEL(KTO)%XIBM_FORC_BOUND_E XIBM_FORC_BOUNN_V => IBM_MODEL(KTO)%XIBM_FORC_BOUNN_V XIBM_FORC_BOUNT_V => IBM_MODEL(KTO)%XIBM_FORC_BOUNT_V XIBM_FORC_BOUNC_V => IBM_MODEL(KTO)%XIBM_FORC_BOUNC_V CIBM_MODE_INTE1_P => IBM_MODEL(KTO)%CIBM_MODE_INTE1_P CIBM_MODE_INTE3_P => IBM_MODEL(KTO)%CIBM_MODE_INTE3_P CIBM_MODE_BOUND_P => IBM_MODEL(KTO)%CIBM_MODE_BOUND_P CIBM_MODE_INTE1_Q => IBM_MODEL(KTO)%CIBM_MODE_INTE1_Q CIBM_MODE_INTE3_Q => IBM_MODEL(KTO)%CIBM_MODE_INTE3_Q CIBM_MODE_BOUND_Q => IBM_MODEL(KTO)%CIBM_MODE_BOUND_Q CIBM_MODE_INTE1_R => IBM_MODEL(KTO)%CIBM_MODE_INTE1_R CIBM_MODE_INTE3_R => IBM_MODEL(KTO)%CIBM_MODE_INTE3_R CIBM_MODE_BOUND_R => IBM_MODEL(KTO)%CIBM_MODE_BOUND_R CIBM_MODE_INTE1_S => IBM_MODEL(KTO)%CIBM_MODE_INTE1_S CIBM_MODE_INTE3_S => IBM_MODEL(KTO)%CIBM_MODE_INTE3_S CIBM_MODE_BOUND_S => IBM_MODEL(KTO)%CIBM_MODE_BOUND_S CIBM_MODE_INTE1_T => IBM_MODEL(KTO)%CIBM_MODE_INTE1_T CIBM_MODE_INTE3_T => IBM_MODEL(KTO)%CIBM_MODE_INTE3_T CIBM_MODE_BOUND_T => IBM_MODEL(KTO)%CIBM_MODE_BOUND_T CIBM_MODE_INTE1_E => IBM_MODEL(KTO)%CIBM_MODE_INTE1_E CIBM_MODE_INTE3_E => IBM_MODEL(KTO)%CIBM_MODE_INTE3_E CIBM_MODE_BOUND_E => IBM_MODEL(KTO)%CIBM_MODE_BOUND_E CIBM_MODE_INTE1NV => IBM_MODEL(KTO)%CIBM_MODE_INTE1NV CIBM_MODE_INTE1TV => IBM_MODEL(KTO)%CIBM_MODE_INTE1TV CIBM_MODE_INTE1CV => IBM_MODEL(KTO)%CIBM_MODE_INTE1CV CIBM_MODE_INTE3_V => IBM_MODEL(KTO)%CIBM_MODE_INTE3_V CIBM_MODE_BOUNN_V => IBM_MODEL(KTO)%CIBM_MODE_BOUNN_V CIBM_MODE_BOUNT_V => IBM_MODEL(KTO)%CIBM_MODE_BOUNT_V CIBM_MODE_BOUNC_V => IBM_MODEL(KTO)%CIBM_MODE_BOUNC_V CIBM_TYPE_BOUND_P => IBM_MODEL(KTO)%CIBM_TYPE_BOUND_P CIBM_TYPE_BOUND_Q => IBM_MODEL(KTO)%CIBM_TYPE_BOUND_Q CIBM_TYPE_BOUND_R => IBM_MODEL(KTO)%CIBM_TYPE_BOUND_R CIBM_TYPE_BOUND_S => IBM_MODEL(KTO)%CIBM_TYPE_BOUND_S CIBM_TYPE_BOUND_T => IBM_MODEL(KTO)%CIBM_TYPE_BOUND_T CIBM_TYPE_BOUND_E => IBM_MODEL(KTO)%CIBM_TYPE_BOUND_E CIBM_TYPE_BOUNN_V => IBM_MODEL(KTO)%CIBM_TYPE_BOUNN_V CIBM_TYPE_BOUNT_V => IBM_MODEL(KTO)%CIBM_TYPE_BOUNT_V CIBM_TYPE_BOUNC_V => IBM_MODEL(KTO)%CIBM_TYPE_BOUNC_V CIBM_FORC_BOUND_P => IBM_MODEL(KTO)%CIBM_FORC_BOUND_P CIBM_FORC_BOUND_Q => IBM_MODEL(KTO)%CIBM_FORC_BOUND_Q CIBM_FORC_BOUND_R => IBM_MODEL(KTO)%CIBM_FORC_BOUND_R CIBM_FORC_BOUND_S => IBM_MODEL(KTO)%CIBM_FORC_BOUND_S CIBM_FORC_BOUND_T => IBM_MODEL(KTO)%CIBM_FORC_BOUND_T CIBM_FORC_BOUND_E => IBM_MODEL(KTO)%CIBM_FORC_BOUND_E CIBM_FORC_BOUNN_V => IBM_MODEL(KTO)%CIBM_FORC_BOUNN_V CIBM_FORC_BOUNR_V => IBM_MODEL(KTO)%CIBM_FORC_BOUNR_V CIBM_FORC_BOUNT_V => IBM_MODEL(KTO)%CIBM_FORC_BOUNT_V CIBM_FORC_BOUNC_V => IBM_MODEL(KTO)%CIBM_FORC_BOUNC_V CIBM_FORC_BOUNR_V => IBM_MODEL(KTO)%CIBM_FORC_BOUNR_V END SUBROUTINE IBM_GOTO_MODEL END MODULE MODD_IBM_PARAM_n !