!-------------------------------------- LICENCE BEGIN ------------------------------------
!Environment Canada - Atmospheric Science and Technology License/Disclaimer, 
!                     version 3; Last Modified: May 7, 2008.
!This is free but copyrighted software; you can use/redistribute/modify it under the terms 
!of the Environment Canada - Atmospheric Science and Technology License/Disclaimer 
!version 3 or (at your option) any later version that should be found at: 
!http://collaboration.cmc.ec.gc.ca/science/rpn.comm/license.html 
!
!This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; 
!without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 
!See the above mentioned License/Disclaimer for more details.
!You should have received a copy of the License/Disclaimer along with this software; 
!if not, you can write to: EC-RPN COMM Group, 2121 TransCanada, suite 500, Dorval (Quebec), 
!CANADA, H9P 1J3; or send e-mail to service.rpn@ec.gc.ca
!-------------------------------------- LICENCE END --------------------------------------
      character*16  P_pbl_schsl_S,P_pbl_schurb_S,
     $              P_pbl2_schsl_S,P_cond_stcon_s
*
      logical P_cond_satu_L, P_pbl_snoalb_L, P_pbl_iceme_L,
     $        P_pbl_icelac_L,P_pbl_ocean_L , P_pbl2_iceme_L
*
      integer P_fcpkuo_xofset, P_fcpkuo_xblnd, P_out_moyhr,
     $        P_fcpkuo_yofset, P_fcpkuo_yblnd, P_pbd_dumpbus

      real*8  p_lmvd_valml_8  ,p_lmvd_mllat_8,
     $        p_lmvd_valeq_8  ,p_lmvd_eqlat_8
*
      common /phy_s/ P_pbl_schsl_S,P_pbl_schurb_S,
     $               P_pbl2_schsl_S,P_cond_stcon_s
      common /phy_l/ P_cond_satu_L, P_pbl_snoalb_L, P_pbl_iceme_L,
     $               P_pbl_icelac_L,P_pbl_ocean_L , P_pbl2_iceme_L
      common /phy_i/ P_fcpkuo_xofset, P_fcpkuo_xblnd, P_out_moyhr,
     $               P_fcpkuo_yofset, P_fcpkuo_yblnd, P_pbd_dumpbus
      common /phy_r8/ p_lmvd_valml_8  ,p_lmvd_mllat_8,
     $                p_lmvd_valeq_8  ,p_lmvd_eqlat_8
*
      DCL_DYNVAR(P_fcpkuo, fcpf ,  real, (l_ni,l_nj))
      DCL_DYNVAR(P_fcpkuo, fcpw ,  real, (l_ni,l_nj))
      DCL_DYNVAR(P_lmvd  , vlsp ,  real, (l_ni,l_nj))
*
*---------------------|-------------------------------------------------|
* P_pset_second_L     | .TRUE. implies that a second call to the        |
*                     | physics package will be done                    |
*---------------------|-------------------------------------------------|
* The following parametres are ignored when P_pset_second_L is .FALSE.  |
* ************* but they MUST the otherwise specified ***************** |
*          otherwise, only the first physics will be called             |
*---------------------|-------------------------------------------------|
* P_pset_xofset       | number of columns from the edges of the grid    |
*                     | where only the second physics set is requested. |
*                     | This is applied both on the left and right sides|
*                     | when P_pset_xofsetr is undefined                |
* P_pset_xofsetr      | columns for the right side of the grid where    |
*                     | only the second physics is requested. Defaults  |
*                     | to P_pset_xofset                                |
* P_pset_yofset       | number of rows from the edges of the grid where |
*                     | only the second physics set is requested. Again,|
*                     | this is appled both on the bottom and top sides |
*                     | when P_pset_yofsett is undefined                |
* P_pset_yofsett      | # of columns for the top side of the grid where |
*                     | only the second physics is requested. Defaults  |
*                     | to P_pset_yofset                                |
* P_pset_xblnd        | number of columns where both physics are        |
*                     | requested + 1 (this is the blending region)     |
* P_pset_yblnd        | number of rows where both physics are requested |
*                     | + 1 (this is the blending region)               |
*---------------------|-------------------------------------------------|
*                                                                       |
* The lower left corner point of the model domain where only the first  |
* physics is applied is thus...                                         |
*                                                                       |
*      ( P_pset_xofset+P_pset_xblnd , P_pset_yofset+P_pset_yblnd )      |
*                                                                       |
* and the corresponding upper right corner point is...                  |
*                                                                       |
* ( G_ni-P_pset_xofsetr-P_pset_xblnd+1 ,                                |
*                              G_nj-P_pset_yofsett-P_pset_yblnd+1 )     |
*                                                                       |
*---------------------|-------------------------------------------------|
* P_pset_secondi      | integer indices at each latitude of the:        |
*                     | 1) first longitudes where the first physics set |
*                     |    starts to be applied                         |
*                     | 2) first longitudes where only the first physics|
*                     |    set is applied                               |
*                     | 3) last longitudes where only the first physics |
*                     |    set is applied                               |
*                     | 4) last longitudes where the first physics set  |
*                     |    is applied                                   |
* P_pset_secondw      | real*8 weights at each longitude and latitude   |
*                     | that apply to the first physics set             |
*-----------------------------------------------------------------------
*
*
      logical  P_pset_second_L
      integer  P_pset_xofset  ,P_pset_xofsetr ,
     $         P_pset_yofset  ,P_pset_yofsett ,
     $         P_pset_xblnd   ,P_pset_yblnd
*
      common /ppset_i/ P_pset_xofset ,P_pset_xofsetr ,
     $                 P_pset_yofset ,P_pset_yofsett ,
     $                 P_pset_xblnd  ,P_pset_yblnd
*
      common /ppset_l/ P_pset_second_L
*
      DCL_DYNVAR(P_pset, secondi , integer, (  4 ,l_nj))
      DCL_DYNVAR(P_pset, secondw , real*8,  (l_ni,l_nj))