!STARTOFREGISTRYGENERATEDINCLUDE 'inc/nest_feedbackup_pack.inc' ! ! WARNING This file is generated automatically by use_registry ! using the data base in the file named Registry. ! Do not edit. Your changes to this file will be lost. ! msize = (191 + ((num_moist - PARAM_FIRST_SCALAR + 1)) & + ((num_dfi_moist - PARAM_FIRST_SCALAR + 1)) & + ((num_scalar - PARAM_FIRST_SCALAR + 1)) & + ((num_dfi_scalar - PARAM_FIRST_SCALAR + 1)) & + ((num_aerod - PARAM_FIRST_SCALAR + 1)) & + ((num_aerocu - PARAM_FIRST_SCALAR + 1)) & + ((num_ozmixm - PARAM_FIRST_SCALAR + 1)) & + ((num_aerosolc - PARAM_FIRST_SCALAR + 1)) & + ((num_fdda3d - PARAM_FIRST_SCALAR + 1)) & + ((num_fdda2d - PARAM_FIRST_SCALAR + 1)) & + ((num_advh_t - PARAM_FIRST_SCALAR + 1)) & + ((num_advz_t - PARAM_FIRST_SCALAR + 1)) & + ((num_tracer - PARAM_FIRST_SCALAR + 1)) & + ((num_nba_mij - PARAM_FIRST_SCALAR + 1)) & + ((num_nba_rij - PARAM_FIRST_SCALAR + 1)) & + ((num_sbmradar - PARAM_FIRST_SCALAR + 1)) & + ((num_chem - PARAM_FIRST_SCALAR + 1)) )* nlev + 284 CALL rsl_lite_to_parent_info( msize*RWORDSIZE & ,cips,cipe,cjps,cjpe & ,nids,nide,njds,njde & ,nest_task_offsets(ngrid%id) & ,nest_pes_x(parent_grid%id) & ,nest_pes_y(parent_grid%id) & ,nest_pes_x(intermediate_grid%id) & ,nest_pes_y(intermediate_grid%id) & ,thisdomain_max_halo_width & ,icoord,jcoord & ,idim_cd,jdim_cd & ,pig,pjg,retval ) DO while ( retval .eq. 1 ) IF ( SIZE(grid%xlat) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%xlat(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%xlong) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%xlong(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lu_index) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%lu_index(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%u_2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%u_2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%v_2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%v_2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%w_2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,ckde xv(k)= intermediate_grid%w_2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((ckde)-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%ph_2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,ckde xv(k)= intermediate_grid%ph_2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((ckde)-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%phb) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,ckde xv(k)= intermediate_grid%phb(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((ckde)-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%t_2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%mu_2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%mu_2(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%mub) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%mub(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%nest_pos) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%nest_pos(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%nest_mask) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%nest_mask(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%alb) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%alb(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%pb) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%pb(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%q2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%q2(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%t2(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%th2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%th2(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%psfc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%psfc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%u10) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%u10(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%v10) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%v10(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lpi) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%lpi(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF DO itrace = PARAM_FIRST_SCALAR, num_moist DO k = ckds,(ckde-1) xv(k)= intermediate_grid%moist(pig,k,pjg,itrace) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDDO DO itrace = PARAM_FIRST_SCALAR, num_dfi_moist DO k = ckds,(ckde-1) xv(k)= intermediate_grid%dfi_moist(pig,k,pjg,itrace) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDDO IF ( SIZE(grid%qvold) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%qvold(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%qnwfa2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%qnwfa2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%qnifa2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%qnifa2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF DO itrace = PARAM_FIRST_SCALAR, num_scalar DO k = ckds,(ckde-1) xv(k)= intermediate_grid%scalar(pig,k,pjg,itrace) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDDO DO itrace = PARAM_FIRST_SCALAR, num_dfi_scalar DO k = ckds,(ckde-1) xv(k)= intermediate_grid%dfi_scalar(pig,k,pjg,itrace) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDDO IF ( SIZE(grid%toposlpx) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%toposlpx(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%toposlpy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%toposlpy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%slope) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%slope(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%slp_azi) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%slp_azi(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%shdmax) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%shdmax(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%shdmin) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%shdmin(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%landusef) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%num_land_cat xv(k)= intermediate_grid%landusef(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%num_land_cat)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%soilctop) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%num_soil_cat xv(k)= intermediate_grid%soilctop(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%num_soil_cat)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%soilcbot) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%num_soil_cat xv(k)= intermediate_grid%soilcbot(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%num_soil_cat)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%irrigation) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%irrigation(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%irr_rand_field) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%irr_rand_field(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tslb) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%num_soil_layers xv(k)= intermediate_grid%tslb(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%num_soil_layers)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%smois) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%num_soil_layers xv(k)= intermediate_grid%smois(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%num_soil_layers)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%sh2o) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%num_soil_layers xv(k)= intermediate_grid%sh2o(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%num_soil_layers)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%smcrel) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%num_soil_layers xv(k)= intermediate_grid%smcrel(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%num_soil_layers)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%xice) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%xice(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%icedepth) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%icedepth(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%xicem) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%xicem(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%albsi) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%albsi(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%snowsi) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%snowsi(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%ivgtyp) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%ivgtyp(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%isltyp) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%isltyp(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%vegfra) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%vegfra(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%acgrdflx) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%acgrdflx(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%acsnow) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%acsnow(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%acrunoff) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%acrunoff(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%acsnom) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%acsnom(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%snow) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%snow(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%snowh) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%snowh(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%canwat) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%canwat(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%sstsk) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%sstsk(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tsk_rural) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%tsk_rural(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tr_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%tr_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tgr_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%tgr_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tb_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%tb_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tg_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%tg_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tc_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%tc_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%qc_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%qc_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%uc_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%uc_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%xxxr_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%xxxr_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%xxxb_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%xxxb_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%xxxg_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%xxxg_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%xxxc_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%xxxc_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%cmcr_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%cmcr_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%drelr_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%drelr_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%drelb_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%drelb_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%drelg_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%drelg_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%flxhumr_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%flxhumr_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%flxhumb_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%flxhumb_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%flxhumg_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%flxhumg_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tgrl_urb3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%num_soil_layers xv(k)= intermediate_grid%tgrl_urb3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%num_soil_layers)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%smr_urb3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%num_soil_layers xv(k)= intermediate_grid%smr_urb3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%num_soil_layers)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%trl_urb3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%num_soil_layers xv(k)= intermediate_grid%trl_urb3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%num_soil_layers)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tbl_urb3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%num_soil_layers xv(k)= intermediate_grid%tbl_urb3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%num_soil_layers)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tgl_urb3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%num_soil_layers xv(k)= intermediate_grid%tgl_urb3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%num_soil_layers)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%sh_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%sh_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lh_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%lh_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%g_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%g_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%rn_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%rn_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%ts_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%ts_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%frc_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%frc_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%utype_urb2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%utype_urb2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%imperv) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%imperv(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%canfra) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%canfra(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%u10e) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%u10e(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%v10e) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%v10e(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%var2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%var2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%oc12d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%oc12d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%oa1) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%oa1(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%oa2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%oa2(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%oa3) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%oa3(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%oa4) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%oa4(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%ol1) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%ol1(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%ol2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%ol2(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%ol3) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%ol3(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%ol4) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%ol4(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%ctopo) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%ctopo(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%ctopo2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%ctopo2(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%f_ice_phy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%f_ice_phy(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%f_rain_phy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%f_rain_phy(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%f_rimef_phy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%f_rimef_phy(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%om_tmp) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%ocean_levels xv(k)= intermediate_grid%om_tmp(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%ocean_levels)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%om_s) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%ocean_levels xv(k)= intermediate_grid%om_s(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%ocean_levels)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%om_u) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%ocean_levels xv(k)= intermediate_grid%om_u(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%ocean_levels)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%om_v) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%ocean_levels xv(k)= intermediate_grid%om_v(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%ocean_levels)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%om_ml) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%om_ml(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h_diabatic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%h_diabatic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%qv_diabatic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%qv_diabatic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%qc_diabatic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%qc_diabatic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%msft) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%msft(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%msfu) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%msfu(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%msfv) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%msfv(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%msftx) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%msftx(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%msfty) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%msfty(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%msfux) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%msfux(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%msfuy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%msfuy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%msfvx) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%msfvx(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%msfvx_inv) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%msfvx_inv(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%msfvy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%msfvy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%f) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%f(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%e) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%e(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%sina) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%sina(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%cosa) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%cosa(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%ht) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%ht(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tsk) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%tsk(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%rainc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%rainc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%rainsh) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%rainsh(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%rainnc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%rainnc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%i_rainc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%i_rainc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%i_rainnc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%i_rainnc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%snownc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%snownc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%graupelnc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%graupelnc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%hailnc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%hailnc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%refl_10cm) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%refl_10cm(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%mskf_refl_10cm) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%mskf_refl_10cm(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%th_old) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%th_old(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%qv_old) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%qv_old(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%vmi3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%vmi3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%di3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%di3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%rhopo3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%rhopo3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%phii3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%phii3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%vmi3d_2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%vmi3d_2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%di3d_2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%di3d_2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%rhopo3d_2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%rhopo3d_2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%phii3d_2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%phii3d_2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%vmi3d_3) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%vmi3d_3(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%di3d_3) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%di3d_3(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%rhopo3d_3) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%rhopo3d_3(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%phii3d_3) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%phii3d_3(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%itype) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%itype(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%itype_2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%itype_2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%itype_3) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%itype_3(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%w_up) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = ckds,(ckde-1) xv(k)= intermediate_grid%w_up(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%acswupt) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%acswupt(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%acswuptc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%acswuptc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%acswdnt) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%acswdnt(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%acswdntc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%acswdntc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%acswupb) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%acswupb(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%acswupbc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%acswupbc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%acswdnb) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%acswdnb(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%acswdnbc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%acswdnbc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%aclwupt) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%aclwupt(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%aclwuptc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%aclwuptc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%aclwdnt) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%aclwdnt(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%aclwdntc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%aclwdntc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%aclwupb) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%aclwupb(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%aclwupbc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%aclwupbc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%aclwdnb) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%aclwdnb(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%aclwdnbc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%aclwdnbc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%i_acswupt) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%i_acswupt(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%i_acswuptc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%i_acswuptc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%i_acswdnt) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%i_acswdnt(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%i_acswdntc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%i_acswdntc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%i_acswupb) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%i_acswupb(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%i_acswupbc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%i_acswupbc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%i_acswdnb) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%i_acswdnb(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%i_acswdnbc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%i_acswdnbc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%i_aclwupt) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%i_aclwupt(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%i_aclwuptc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%i_aclwuptc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%i_aclwdnt) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%i_aclwdnt(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%i_aclwdntc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%i_aclwdntc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%i_aclwupb) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%i_aclwupb(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%i_aclwupbc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%i_aclwupbc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%i_aclwdnb) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%i_aclwdnb(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%i_aclwdnbc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%i_aclwdnbc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%swupt) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%swupt(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%swuptc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%swuptc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%swuptcln) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%swuptcln(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%swdnt) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%swdnt(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%swdntc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%swdntc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%swdntcln) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%swdntcln(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%swupb) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%swupb(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%swupbc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%swupbc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%swupbcln) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%swupbcln(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%swdnb) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%swdnb(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%swdnbc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%swdnbc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%swdnbcln) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%swdnbcln(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lwupt) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%lwupt(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lwuptc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%lwuptc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lwuptcln) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%lwuptcln(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lwdnt) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%lwdnt(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lwdntc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%lwdntc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lwdntcln) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%lwdntcln(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lwupb) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%lwupb(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lwupbc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%lwupbc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lwupbcln) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%lwupbcln(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lwdnb) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%lwdnb(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lwdnbc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%lwdnbc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lwdnbcln) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%lwdnbcln(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%xlat_u) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%xlat_u(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%xlong_u) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%xlong_u(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%xlat_v) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%xlat_v(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%xlong_v) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%xlong_v(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%clat) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%clat(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tsk_mosaic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%mosaic_cat xv(k)= intermediate_grid%tsk_mosaic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%mosaic_cat)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%qsfc_mosaic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%mosaic_cat xv(k)= intermediate_grid%qsfc_mosaic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%mosaic_cat)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tslb_mosaic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%mosaic_cat_soil xv(k)= intermediate_grid%tslb_mosaic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%mosaic_cat_soil)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%smois_mosaic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%mosaic_cat_soil xv(k)= intermediate_grid%smois_mosaic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%mosaic_cat_soil)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%sh2o_mosaic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%mosaic_cat_soil xv(k)= intermediate_grid%sh2o_mosaic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%mosaic_cat_soil)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%canwat_mosaic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%mosaic_cat xv(k)= intermediate_grid%canwat_mosaic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%mosaic_cat)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%snow_mosaic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%mosaic_cat xv(k)= intermediate_grid%snow_mosaic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%mosaic_cat)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%snowh_mosaic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%mosaic_cat xv(k)= intermediate_grid%snowh_mosaic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%mosaic_cat)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%snowc_mosaic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%mosaic_cat xv(k)= intermediate_grid%snowc_mosaic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%mosaic_cat)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tr_urb2d_mosaic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%mosaic_cat xv(k)= intermediate_grid%tr_urb2d_mosaic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%mosaic_cat)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tb_urb2d_mosaic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%mosaic_cat xv(k)= intermediate_grid%tb_urb2d_mosaic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%mosaic_cat)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tg_urb2d_mosaic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%mosaic_cat xv(k)= intermediate_grid%tg_urb2d_mosaic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%mosaic_cat)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tc_urb2d_mosaic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%mosaic_cat xv(k)= intermediate_grid%tc_urb2d_mosaic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%mosaic_cat)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%ts_urb2d_mosaic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%mosaic_cat xv(k)= intermediate_grid%ts_urb2d_mosaic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%mosaic_cat)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%ts_rul2d_mosaic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%mosaic_cat xv(k)= intermediate_grid%ts_rul2d_mosaic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%mosaic_cat)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%qc_urb2d_mosaic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%mosaic_cat xv(k)= intermediate_grid%qc_urb2d_mosaic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%mosaic_cat)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%uc_urb2d_mosaic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%mosaic_cat xv(k)= intermediate_grid%uc_urb2d_mosaic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%mosaic_cat)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%trl_urb3d_mosaic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%mosaic_cat_soil xv(k)= intermediate_grid%trl_urb3d_mosaic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%mosaic_cat_soil)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tbl_urb3d_mosaic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%mosaic_cat_soil xv(k)= intermediate_grid%tbl_urb3d_mosaic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%mosaic_cat_soil)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tgl_urb3d_mosaic) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%mosaic_cat_soil xv(k)= intermediate_grid%tgl_urb3d_mosaic(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%mosaic_cat_soil)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%mosaic_cat_index) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%num_land_cat xv(k)= intermediate_grid%mosaic_cat_index(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%num_land_cat)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%landusef2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%num_land_cat xv(k)= intermediate_grid%landusef2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%num_land_cat)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tmn) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%tmn(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tyr) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%tyr(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tyra) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%tyra(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tdly) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%tdly(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tlag) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%lagday xv(k)= intermediate_grid%tlag(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%lagday)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%xland) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%xland(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%achfx) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%achfx(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%aclhf) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%aclhf(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%snowc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%snowc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%prec_acc_c) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%prec_acc_c(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%prec_acc_nc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%prec_acc_nc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%snow_acc_nc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%snow_acc_nc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tml) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%tml(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t0ml) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%t0ml(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%hml) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%hml(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h0ml) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%h0ml(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%huml) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%huml(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%hvml) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%hvml(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tmoml) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%tmoml(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF DO itrace = PARAM_FIRST_SCALAR, num_tracer DO k = ckds,(ckde-1) xv(k)= intermediate_grid%tracer(pig,k,pjg,itrace) ENDDO CALL rsl_lite_to_parent_msg((((ckde-1))-(ckds)+1)*RWORDSIZE,xv) ENDDO IF ( SIZE(grid%numc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%numc(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%nump) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%nump(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%snl) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%snl(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%snowdp) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%snowdp(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%wtc) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%wtc(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%wtp) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%wtp(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osno) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osno(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_grnd) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_grnd(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_veg) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_veg(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2ocan) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2ocan(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2ocan_col) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2ocan_col(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t2m_max) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%t2m_max(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t2m_min) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%t2m_min(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t2clm) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%t2clm(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_ref2m) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_ref2m(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_liq_s1) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_liq_s1(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_liq_s2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_liq_s2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_liq_s3) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_liq_s3(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_liq_s4) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_liq_s4(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_liq_s5) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_liq_s5(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_liq1) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_liq1(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_liq2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_liq2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_liq3) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_liq3(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_liq4) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_liq4(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_liq5) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_liq5(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_liq6) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_liq6(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_liq7) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_liq7(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_liq8) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_liq8(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_liq9) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_liq9(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_liq10) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_liq10(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_ice_s1) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_ice_s1(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_ice_s2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_ice_s2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_ice_s3) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_ice_s3(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_ice_s4) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_ice_s4(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_ice_s5) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_ice_s5(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_ice1) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_ice1(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_ice2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_ice2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_ice3) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_ice3(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_ice4) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_ice4(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_ice5) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_ice5(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_ice6) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_ice6(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_ice7) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_ice7(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_ice8) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_ice8(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_ice9) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_ice9(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_ice10) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_ice10(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_soisno_s1) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_soisno_s1(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_soisno_s2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_soisno_s2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_soisno_s3) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_soisno_s3(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_soisno_s4) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_soisno_s4(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_soisno_s5) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_soisno_s5(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_soisno1) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_soisno1(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_soisno2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_soisno2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_soisno3) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_soisno3(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_soisno4) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_soisno4(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_soisno5) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_soisno5(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_soisno6) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_soisno6(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_soisno7) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_soisno7(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_soisno8) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_soisno8(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_soisno9) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_soisno9(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_soisno10) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_soisno10(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%dzsnow1) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%dzsnow1(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%dzsnow2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%dzsnow2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%dzsnow3) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%dzsnow3(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%dzsnow4) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%dzsnow4(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%dzsnow5) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%dzsnow5(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%snowrds1) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%snowrds1(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%snowrds2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%snowrds2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%snowrds3) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%snowrds3(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%snowrds4) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%snowrds4(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%snowrds5) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%snowrds5(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_lake1) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_lake1(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_lake2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_lake2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_lake3) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_lake3(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_lake4) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_lake4(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_lake5) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_lake5(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_lake6) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_lake6(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_lake7) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_lake7(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_lake8) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_lake8(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_lake9) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_lake9(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_lake10) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%t_lake10(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_vol1) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_vol1(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_vol2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_vol2(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_vol3) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_vol3(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_vol4) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_vol4(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_vol5) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_vol5(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_vol6) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_vol6(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_vol7) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_vol7(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_vol8) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_vol8(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_vol9) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_vol9(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_vol10) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%h2osoi_vol10(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%albedosubgrid) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%albedosubgrid(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lhsubgrid) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%lhsubgrid(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%hfxsubgrid) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%hfxsubgrid(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lwupsubgrid) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%lwupsubgrid(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%q2subgrid) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%q2subgrid(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%sabvsubgrid) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%sabvsubgrid(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%sabgsubgrid) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%sabgsubgrid(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%nrasubgrid) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%nrasubgrid(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%swupsubgrid) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%maxpatch xv(k)= intermediate_grid%swupsubgrid(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%maxpatch)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lakedepth2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%lakedepth2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%savedtke12d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%savedtke12d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%snowdp2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%snowdp2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osno2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%h2osno2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%snl2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%snl2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_grnd2d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%t_grnd2d(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_lake3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,10 xv(k)= intermediate_grid%t_lake3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((10)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lake_icefrac3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,10 xv(k)= intermediate_grid%lake_icefrac3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((10)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%z_lake3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,10 xv(k)= intermediate_grid%z_lake3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((10)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%dz_lake3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,10 xv(k)= intermediate_grid%dz_lake3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((10)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t_soisno3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,15 xv(k)= intermediate_grid%t_soisno3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((15)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_ice3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,15 xv(k)= intermediate_grid%h2osoi_ice3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((15)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_liq3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,15 xv(k)= intermediate_grid%h2osoi_liq3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((15)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%h2osoi_vol3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,15 xv(k)= intermediate_grid%h2osoi_vol3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((15)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%z3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,15 xv(k)= intermediate_grid%z3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((15)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%dz3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,15 xv(k)= intermediate_grid%dz3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((15)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%zi3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,16 xv(k)= intermediate_grid%zi3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((16)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%watsat3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,10 xv(k)= intermediate_grid%watsat3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((10)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%csol3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,10 xv(k)= intermediate_grid%csol3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((10)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tkmg3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,10 xv(k)= intermediate_grid%tkmg3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((10)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tkdry3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,10 xv(k)= intermediate_grid%tkdry3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((10)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tksatu3d) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,10 xv(k)= intermediate_grid%tksatu3d(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((10)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%isnowxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%isnowxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tvxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%tvxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tgxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%tgxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%canicexy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%canicexy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%canliqxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%canliqxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%eahxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%eahxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tahxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%tahxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%cmxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%cmxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%chxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%chxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%fwetxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%fwetxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%sneqvoxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%sneqvoxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%alboldxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%alboldxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%qsnowxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%qsnowxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%wslakexy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%wslakexy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%zwtxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%zwtxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%waxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%waxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%wtxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%wtxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tsnoxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%num_snow_layers xv(k)= intermediate_grid%tsnoxy(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%num_snow_layers)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%zsnsoxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%num_snso_layers xv(k)= intermediate_grid%zsnsoxy(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%num_snso_layers)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%snicexy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%num_snow_layers xv(k)= intermediate_grid%snicexy(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%num_snow_layers)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%snliqxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,config_flags%num_snow_layers xv(k)= intermediate_grid%snliqxy(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((config_flags%num_snow_layers)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lfmassxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%lfmassxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%rtmassxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%rtmassxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%stmassxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%stmassxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%woodxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%woodxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%stblcpxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%stblcpxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%fastcpxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%fastcpxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%xsaixy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%xsaixy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t2mvxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%t2mvxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%t2mbxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%t2mbxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%q2mvxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%q2mvxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%q2mbxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%q2mbxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tradxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%tradxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%neexy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%neexy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%gppxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%gppxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%nppxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%nppxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%fvegxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%fvegxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%qinxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%qinxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%runsfxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%runsfxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%runsbxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%runsbxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%ecanxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%ecanxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%edirxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%edirxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%etranxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%etranxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%fsaxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%fsaxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%firaxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%firaxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%aparxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%aparxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%psnxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%psnxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%savxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%savxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%sagxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%sagxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%rssunxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%rssunxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%rsshaxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%rsshaxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%bgapxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%bgapxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%wgapxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%wgapxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tgvxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%tgvxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%tgbxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%tgbxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%chvxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%chvxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%chbxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%chbxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%shgxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%shgxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%shcxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%shcxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%shbxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%shbxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%evgxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%evgxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%evbxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%evbxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%ghvxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%ghvxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%ghbxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%ghbxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%irgxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%irgxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%ircxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%ircxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%irbxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%irbxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%trxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%trxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%evcxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%evcxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%chleafxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%chleafxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%chucxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%chucxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%chv2xy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%chv2xy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%chb2xy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%chb2xy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%chstarxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%chstarxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%fdepthxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%fdepthxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%eqzwt) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%eqzwt(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%rechclim) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%rechclim(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%riverbedxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%riverbedxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%soilcomp) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,8 xv(k)= intermediate_grid%soilcomp(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((8)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%soilcl1) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%soilcl1(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%soilcl2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%soilcl2(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%soilcl3) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%soilcl3(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%soilcl4) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%soilcl4(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%grainxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%grainxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%gddxy) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%gddxy(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%croptype) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,5 xv(k)= intermediate_grid%croptype(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((5)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%planting) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%planting(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%harvest) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%harvest(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%season_gdd) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%season_gdd(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%gecros_state) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c DO k = 1,60 xv(k)= intermediate_grid%gecros_state(pig,k,pjg) ENDDO CALL rsl_lite_to_parent_msg(((60)-(1)+1)*RWORDSIZE,xv) ENDIF IF ( SIZE(grid%pcb) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%pcb(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%pc_2) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%pc_2(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%landmask) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%landmask(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF IF ( SIZE(grid%lakemask) .GT. 1 ) THEN ! okay for intermediate_grid too. see comment in gen_comms.c xv(1)= intermediate_grid%lakemask(pig,pjg) CALL rsl_lite_to_parent_msg(RWORDSIZE,xv) ENDIF CALL rsl_lite_to_parent_info( msize*RWORDSIZE & ,cips,cipe,cjps,cjpe & ,nids,nide,njds,njde & ,nest_task_offsets(ngrid%id) & ,nest_pes_x(parent_grid%id) & ,nest_pes_y(parent_grid%id) & ,nest_pes_x(intermediate_grid%id) & ,nest_pes_y(intermediate_grid%id) & ,thisdomain_max_halo_width & ,icoord,jcoord & ,idim_cd,jdim_cd & ,pig,pjg,retval ) ENDDO !ENDOFREGISTRYGENERATEDINCLUDE