Changeset 2175 for LMDZ5/branches


Ignore:
Timestamp:
Dec 23, 2014, 6:41:53 PM (9 years ago)
Author:
jescribano
Message:

SPLA code included for first time

Location:
LMDZ5/branches/LMDZ5_SPLA
Files:
61 added
1 deleted
5 edited

Legend:

Unmodified
Added
Removed
  • LMDZ5/branches/LMDZ5_SPLA/bld.cfg

    r1990 r2175  
    105105bld::tool::SHELL   /bin/bash
    106106bld::tool::SHELL   /bin/ksh
     107bld::tool::SHELL   /bin/ksh
  • LMDZ5/branches/LMDZ5_SPLA/libf/phylmd/chem.h

    r1907 r2175  
    1313      PARAMETER (rho_ice=500.0)                       !--kg m-3
    1414
     15      INTEGER ss_bins
     16      PARAMETER (ss_bins=2)
     17
     18!      INTEGER nbreg_dust,nbreg_ind, nbreg_bb
     19!      PARAMETER (nbreg_dust=11,nbreg_ind=13,nbreg_bb=15)
     20
     21      REAL masse_ammsulfate
     22      PARAMETER (masse_ammsulfate=132.0)              !--g mol-1
     23
     24
  • LMDZ5/branches/LMDZ5_SPLA/libf/phylmd/phys_output_write_mod.F90

    r2003 r2175  
    44MODULE phys_output_write_mod
    55
    6   USE phytrac_mod, ONLY : d_tr_cl, d_tr_th, d_tr_cv, d_tr_lessi_impa, &
     6!JE20140507<<
     7!  USE phytrac_mod, ONLY : d_tr_cl, d_tr_th, d_tr_cv, d_tr_lessi_impa, &
     8!       d_tr_lessi_nucl, d_tr_insc, d_tr_bcscav, d_tr_evapls, d_tr_ls,  &
     9!       d_tr_trsp, d_tr_sscav, d_tr_sat, d_tr_uscav
     10  USE phytracr_spl_mod, ONLY : d_tr_cl, d_tr_th, d_tr_cv, d_tr_lessi_impa, &
    711       d_tr_lessi_nucl, d_tr_insc, d_tr_bcscav, d_tr_evapls, d_tr_ls,  &
    812       d_tr_trsp, d_tr_sscav, d_tr_sat, d_tr_uscav
     13!JE20140507>>
     14
     15
     16
    917
    1018  ! Author: Abderrahmane IDELKADI (original include file)
  • LMDZ5/branches/LMDZ5_SPLA/libf/phylmd/physiq.F90

    r2037 r2175  
    5050#endif
    5151  USE indice_sol_mod
    52   USE phytrac_mod, ONLY : phytrac
     52!JE20140507<<
     53!  USE phytrac_mod, ONLY : phytrac
     54  USE phytracr_spl_mod, ONLY : phytracr_spl, readregions_spl, readregionsdims2_spl, readscaleparams_spl , readscaleparamsnc_spl
     55!JE20140507>>
    5356
    5457#ifdef CPP_RRTM
     
    116119  include "iniprint.h"
    117120  include "thermcell.h"
     121  include "chem.h"  !SPLA
    118122  !======================================================================
    119123  LOGICAL ok_cvl  ! pour activer le nouveau driver pour convection KE
     
    853857  REAL zzz
    854858
     859  !ccccccccccccccccccccccccccccccccccccccccccccccccccccc
     860  !cJE nov2013
     861  !c  SPLA variable declaration
     862  !c
     863  !c
     864  INTEGER ngridmx
     865  !!c     integer nbsrf
     866  !!c      PARAMETER (ngridmx=iim*(jjm-1)+2,nbsrf=4)
     867  parameter (ngridmx=iim*(jjm-1)+2)
     868  REAL,SAVE  :: scale_param_ssacc  !Scaling parameter for Fine Sea Salt
     869  REAL,SAVE ::  scale_param_sscoa  !Scaling parameter for Coarse Sea Salt
     870!  REAL scale_param_ind(nbreg_ind) !Scaling parameter for industrial emissions of SO2
     871!  REAL scale_param_bb(nbreg_bb)  !Scaling parameter for biomas burning (SO2,BC & OM)
     872!  REAL scale_param_ff(nbreg_ind)  !Scaling parameter for industrial emissions (fossil fuel)
     873!  REAL scale_param_dustacc(nbreg_dust)  !Scaling parameter for Fine Dust
     874!  REAL scale_param_dustcoa(nbreg_dust)  !Scaling parameter for Coarse Dust
     875!  REAL scale_param_dustsco(nbreg_dust)  !Scaling parameter for SCoarse Dust
     876  REAL, DIMENSION(:),ALLOCATABLE,SAVE :: scale_param_ind !Scaling parameter for industrial emissions of SO2
     877  REAL, DIMENSION(:),ALLOCATABLE,SAVE :: scale_param_bb  !Scaling parameter for biomas burning (SO2,BC & OM)
     878  REAL, DIMENSION(:),ALLOCATABLE,SAVE :: scale_param_ff  !Scaling parameter for industrial emissions (fossil fuel)
     879  REAL, DIMENSION(:),ALLOCATABLE,SAVE :: scale_param_dustacc  !Scaling parameter for Fine Dust
     880  REAL, DIMENSION(:),ALLOCATABLE,SAVE :: scale_param_dustcoa  !Scaling parameter for Coarse Dust
     881  REAL, DIMENSION(:),ALLOCATABLE,SAVE :: scale_param_dustsco  !Scaling parameter for SCoarse Dust
     882  REAL, DIMENSION(:),ALLOCATABLE,SAVE :: param_wstarBLperregion  !parameter for ..
     883  REAL, DIMENSION(:),ALLOCATABLE,SAVE :: param_wstarWAKEperregion  !parameter for ..
     884  !$OMP THREADPRIVATE(scale_param_ind,scale_param_bb,scale_param_ff)
     885  !$OMP THREADPRIVATE(scale_param_dustacc,scale_param_dustcoa,scale_param_dustsco)
     886  !$OMP THREADPRIVATE(scale_param_ssacc,scale_param_sscoa)
     887  !$OMP THREADPRIVATE(param_wstarBLperregion,param_wstarWAKEperregion)
     888  REAL, dimension(ngridmx) :: dust_ec, u10m_ec, v10m_ec
     889  INTEGER, SAVE :: nbreg_dust, nbreg_ind, nbreg_bb, nbreg_ss,nbreg_wstardust
     890  !$OMP THREADPRIVATE(nbreg_dust, nbreg_ind, nbreg_bb,nbreg_ss,nbreg_wstardust)
     891  CHARACTER*800 fileregionsdimsind
     892  CHARACTER*800 fileregionsdimsdust
     893  CHARACTER*800 fileregionsdimsbb
     894  CHARACTER*800 fileregionsdimswstar
     895!  CHARACTER*800 filescaleparamsind
     896!  CHARACTER*800 filescaleparamsdust
     897!  CHARACTER*800 filescaleparamsbb
     898  CHARACTER*100 paramname_ind
     899  CHARACTER*100 paramname_bb
     900  CHARACTER*100 paramname_ff
     901  CHARACTER*100 paramname_dustacc
     902  CHARACTER*100 paramname_dustcoa
     903  CHARACTER*100 paramname_dustsco
     904  CHARACTER*100 paramname_ssacc
     905  CHARACTER*100 paramname_sscoa
     906  CHARACTER*100 paramname_wstarBL
     907  CHARACTER*100 paramname_wstarWAKE
     908
     909
     910  CHARACTER*800 filescaleparams
     911  CHARACTER*800 paramsname
     912
     913
     914  !!------------------------ SULFUR emissions ----------------------------
     915  REAL lmt_so2volc_cont(ngridmx)  ! emissions so2 volcan continuous
     916  REAL lmt_altvolc_cont(ngridmx)  ! altitude  so2 volcan continuous
     917  REAL lmt_so2volc_expl(ngridmx)  ! emissions so2 volcan explosive
     918  REAL lmt_altvolc_expl(ngridmx)  ! altitude  so2 volcan explosive
     919  REAL lmt_so2ff_l(ngridmx)       ! emissions so2 fossil fuel (low)
     920  REAL lmt_so2ff_h(ngridmx)       ! emissions so2 fossil fuel (high)
     921  REAL lmt_so2nff(ngridmx)        ! emissions so2 non-fossil fuel
     922  REAL lmt_so2ba(ngridmx)         ! emissions de so2 bateau
     923  REAL lmt_so2bb_l(ngridmx)       ! emissions de so2 biomass burning (low)
     924  REAL lmt_so2bb_h(ngridmx)       ! emissions de so2 biomass burning (high)
     925  REAL lmt_dmsconc(ngridmx)       ! concentration de dms oceanique
     926  REAL lmt_dmsbio(ngridmx)        ! emissions de dms bio
     927  REAL lmt_h2sbio(ngridmx)        ! emissions de h2s bio
     928  !------------------------- BLACK CARBON emissions ----------------------
     929  REAL lmt_bcff(ngridmx)       ! emissions de BC fossil fuels
     930  REAL lmt_bcnff(ngridmx)      ! emissions de BC non-fossil fuels
     931  REAL lmt_bcbb_l(ngridmx)     ! emissions de BC biomass basses
     932  REAL lmt_bcbb_h(ngridmx)     ! emissions de BC biomass hautes
     933  REAL lmt_bcba(ngridmx)       ! emissions de BC bateau
     934  !------------------------ ORGANIC MATTER emissions ---------------------
     935  REAL lmt_omff(ngridmx)     ! emissions de OM fossil fuels
     936  REAL lmt_omnff(ngridmx)    ! emissions de OM non-fossil fuels
     937  REAL lmt_ombb_l(ngridmx)   ! emissions de OM biomass basses
     938  REAL lmt_ombb_h(ngridmx)   ! emissions de OM biomass hautes
     939  REAL lmt_omnat(ngridmx)    ! emissions de OM Natural
     940  REAL lmt_omba(ngridmx)     ! emissions de OM bateau
     941
     942  REAL lmt_sea_salt(ngridmx,ss_bins)    ! emissions de OM Natural
     943  SAVE lmt_bcff,lmt_bcnff,lmt_bcbb_l,lmt_bcbb_h,lmt_bcba
     944  SAVE lmt_omff,lmt_omnff,lmt_ombb_l,lmt_ombb_h,lmt_omnat,lmt_omba
     945  SAVE lmt_so2ff_l,lmt_so2ff_h,lmt_so2nff,lmt_so2bb_l,lmt_so2bb_h
     946  SAVE lmt_so2ba,lmt_so2volc_cont,lmt_altvolc_cont,lmt_so2volc_expl
     947  SAVE lmt_altvolc_expl,lmt_dmsconc,lmt_dmsbio,lmt_h2sbio
     948  !$OMP THREADPRIVATE(lmt_bcff,lmt_bcnff,lmt_bcbb_l,lmt_bcbb_h,lmt_bcba)
     949  !$OMP THREADPRIVATE(lmt_omff,lmt_omnff,lmt_ombb_l,lmt_ombb_h,lmt_omnat,lmt_omba)
     950  !$OMP THREADPRIVATE(lmt_so2ff_l,lmt_so2ff_h,lmt_so2nff,lmt_so2bb_l,lmt_so2bb_h)
     951  !$OMP THREADPRIVATE(lmt_so2ba,lmt_so2volc_cont,lmt_altvolc_cont,lmt_so2volc_expl)
     952  !$OMP THREADPRIVATE(lmt_altvolc_expl,lmt_dmsconc,lmt_dmsbio,lmt_h2sbio)
     953
     954  !-output phytrac variables
     955  REAL diff_aod550_tot(ngridmx)  ! epaisseur optique total aerosol 550  nm
     956  REAL diag_aod865_tot(ngridmx)  ! epaisseur optique total aerosol 865 nm
     957  REAL diff_aod550_tr2(ngridmx)  ! epaisseur optique Traceur 2 aerosol 550 nm, diagnostic
     958  REAL diag_aod865_tr2(ngridmx)  ! epaisseur optique Traceur 2 aerosol 865 nm, diagnostic
     959  REAL diag_aod550_dust(ngridmx) ! epaisseur optique Dust coarse aerosol 550 nm, diagnostic
     960  REAL diag_aod865_dust(ngridmx) ! epaisseur optique Dust coarse aerosol 865 nm, diagnostic
     961  REAL diag_aod550_dustsco(ngridmx) ! epaisseur optique Dust SCOarse aerosol 550 nm, diagnostic
     962  REAL diag_aod865_dustsco(ngridmx) ! epaisseur optique Dust SCOarse aerosol 865 nm, diagnostic
     963  REAL diag_aod550_ss(ngridmx)   ! epaisseur optique Sels marins aerosol 550 nm, diagnostic
     964  REAL diag_aod865_ss(ngridmx)   ! epaisseur optique Sels marins aerosol 865 nm, diagnostic
     965  ! others
     966  REAL tsol(ngridmx)
     967  INTEGER :: ijulday
     968  LOGICAL , parameter :: edgar = .true.
     969  INTEGER , parameter :: flag_dms=4
     970  INTEGER*4  nbjour
     971  !c
     972  !c end  SPLA variable declaration
     973  !c JE 2013112
     974  !c      print *,'Are you reading this line???????????????  JE0 '
     975  !cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
     976 
     977!   DO i=1,6
     978!   print *,'JE: i= ',i
     979!   CALL checknanqfi(qx(:,:,i),1.,-1.,' q+tr realbeg physiq L959')
     980!   ENDDO
     981 
     982
    855983  !======================================================================
    856984  ! Gestion calendrier : mise a jour du module phys_cal_mod
     
    14501578     ENDDO
    14511579  ENDDO
     1580!  !JE
     1581!  DO i=1,4
     1582!   CALL checknanqfi(tr_seri(:,:,i),1.,-1.,' tr beginig physiq L1559')
     1583!  ENDDO
    14521584  !IM
     1585
    14531586  IF (ip_ebil_phy.ge.1) THEN
    14541587     ztit='after dynamic'
     
    34593592  END IF
    34603593
    3461   call phytrac ( &
    3462        itap,     days_elapsed+1,    jH_cur,   debut, &
    3463        lafin,    dtime,     u, v,     t, &
    3464        paprs,    pplay,     pmfu,     pmfd, &
    3465        pen_u,    pde_u,     pen_d,    pde_d, &
    3466        cdragh,   coefh(1:klon,1:klev,is_ave),   fm_therm, entr_therm, &
    3467        u1,       v1,        ftsol,    pctsrf, &
    3468        zustar,   zu10m,     zv10m, &
    3469        wstar(:,is_ave),    ale_bl,         ale_wake, &
    3470        rlat,     rlon, &
    3471        frac_impa,frac_nucl, beta_prec_fisrt,beta_prec, &
    3472        presnivs, pphis,     pphi,     albsol1, &
    3473        sh_in,    rhcl,      cldfra,   rneb, &
    3474        diafra,   cldliq,    itop_con, ibas_con, &
    3475        pmflxr,   pmflxs,    prfl,     psfl, &
    3476        da,       phi,       mp,       upwd, &
    3477        phi2,     d1a,       dam,      sij, wght_cvfd, &        !<<RomP+RL
    3478        wdtrainA, wdtrainM,  sigd,     clw,elij, &   !<<RomP
    3479        ev,       ep,        epmlmMm,  eplaMm, &     !<<RomP
    3480        dnwd,     aerosol_couple,      flxmass_w, &
    3481        tau_aero, piz_aero,  cg_aero,  ccm, &
    3482        rfname, &
    3483        d_tr_dyn, &                                 !<<RomP
    3484        tr_seri)
     3594  !JE ------------ SPLA ----------------
     3595!  IF(.FALSE.) THEN
     3596!   call phytrac ( &
     3597!       itap,     days_elapsed+1,    jH_cur,   debut, &
     3598!       lafin,    dtime,     u, v,     t, &
     3599!       paprs,    pplay,     pmfu,     pmfd, &
     3600!       pen_u,    pde_u,     pen_d,    pde_d, &
     3601!       cdragh,   coefh(1:klon,1:klev,is_ave),   fm_therm, entr_therm, &
     3602!       u1,       v1,        ftsol,    pctsrf, &
     3603!       zustar,   zu10m,     zv10m, &
     3604!       wstar(:,is_ave),    ale_bl,         ale_wake, &
     3605!       rlat,     rlon, &
     3606!       frac_impa,frac_nucl, beta_prec_fisrt,beta_prec, &
     3607!       presnivs, pphis,     pphi,     albsol1, &
     3608!       sh_in,    rhcl,      cldfra,   rneb, &
     3609!       diafra,   cldliq,    itop_con, ibas_con, &
     3610!       pmflxr,   pmflxs,    prfl,     psfl, &
     3611!       da,       phi,       mp,       upwd, &
     3612!       phi2,     d1a,       dam,      sij, wght_cvfd, &        !<<RomP+RL
     3613!       wdtrainA, wdtrainM,  sigd,     clw,elij, &   !<<RomP
     3614!       ev,       ep,        epmlmMm,  eplaMm, &     !<<RomP
     3615!       dnwd,     aerosol_couple,      flxmass_w, &
     3616!       tau_aero, piz_aero,  cg_aero,  ccm, &
     3617!       rfname, &
     3618!       d_tr_dyn, &                                 !<<RomP
     3619 !      tr_seri)
     3620 !ENDIF
     3621 IF (.TRUE.) THEN
     3622! DO i=1,nbtr
     3623! print *,'it check = ',i
     3624! CALL checknanqfi(tr_seri(:,:,i),1.,-1.,' tr before all')
     3625! CALL checknanqfi(q_seri(:,:),1.,-1.,' q before all')
     3626! CALL checknanqfi(t(:,:),1.,-1.,' t before all')
     3627! CALL checknanqfi(da(:,:),1.,-1.,' da before all')
     3628! !CALL checknanqfi(t_seri(:,:),1.,-1.,' t_seri before all')
     3629! ENDDO
     3630
     3631!  print*, 'mpi_size', mpi_size
     3632 ! print*, 'omp_size', omp_size
     3633
     3634
     3635  print *,'before spl...'
     3636  if (debut) then
     3637  nbreg_ind=1
     3638  nbreg_bb=1
     3639  nbreg_dust=1
     3640  nbreg_wstardust=1
     3641  fileregionsdimsind='regions_ind_meta'
     3642  fileregionsdimsdust='regions_dustacc_meta'
     3643  fileregionsdimsbb='regions_bb_meta'
     3644  fileregionsdimswstar='regions_pwstarwake_meta'
     3645  !nbreg_dust=readregionsdims_spl('hola')
     3646!  call  readregionsdims_spl(nbreg_ind,fileregionsdimsind, &
     3647!                            nbreg_dust,fileregionsdimsdust, &
     3648!                            nbreg_bb,fileregionsdimsbb)
     3649  call  readregionsdims2_spl(nbreg_ind,fileregionsdimsind)
     3650  call  readregionsdims2_spl(nbreg_dust,fileregionsdimsdust)
     3651  call  readregionsdims2_spl(nbreg_bb,fileregionsdimsbb)
     3652  call  readregionsdims2_spl(nbreg_wstardust,fileregionsdimswstar)
     3653
     3654!readregions_spl()
     3655
     3656  ALLOCATE(scale_param_ind(nbreg_ind))
     3657  ALLOCATE(scale_param_bb(nbreg_bb))
     3658  ALLOCATE(scale_param_ff(nbreg_ind))
     3659  ALLOCATE(scale_param_dustacc(nbreg_dust))
     3660  ALLOCATE(scale_param_dustcoa(nbreg_dust))
     3661  ALLOCATE(scale_param_dustsco(nbreg_dust))
     3662  ALLOCATE(param_wstarBLperregion(nbreg_wstardust))
     3663  ALLOCATE(param_wstarWAKEperregion(nbreg_wstardust))
     3664!   endif
     3665
     3666  !temporal hardcoded null inicialization of assimilation emmision factors
     3667  scale_param_ssacc=1.
     3668  scale_param_sscoa=1.
     3669  scale_param_ind(:)=1.
     3670  scale_param_bb(:)=1.
     3671  scale_param_ff(:)=1.
     3672  scale_param_dustacc(:)=1.
     3673  scale_param_dustcoa(:)=1.
     3674  scale_param_dustsco(:)=1.
     3675  param_wstarBLperregion(:)=1.
     3676  param_wstarWAKEperregion(:)=0.25
     3677
     3678!  filescaleparamsind='modind.bin'
     3679!  filescaleparamsdust='moddust.bin'
     3680!  filescaleparamsbb='modbb.bin'
     3681!  call  readscaleparams_spl(scale_param_ind, nbreg_ind, filescaleparamsind)
     3682!  call  readscaleparams_spl(scale_param_ff, nbreg_ind, filescaleparamsind)
     3683!  call  readscaleparams_spl(scale_param_bb, nbreg_bb, filescaleparamsbb)
     3684!  call  readscaleparams_spl(scale_param_dustacc, nbreg_dust, filescaleparamsdust)
     3685!  call  readscaleparams_spl(scale_param_dustcoa, nbreg_dust, filescaleparamsdust)
     3686!  call  readscaleparams_spl(scale_param_dustsco, nbreg_dust, filescaleparamsdust)
     3687
     3688  endif 
     3689
     3690  ! -- calcul de tsol
     3691  tsol = SUM(ftsol,dim=2)
     3692  ijulday=jD_cur-jD_1jan+1
     3693  nbjour = 1
     3694!  paramsname='dust'
     3695!  call readscaleparamsnc_spl(scale_param_dustsco, nbreg_dust, &
     3696!  filescaleparams,paramsname,ijulday,jH_cur, pdtphys,debut)
     3697
     3698  paramname_ind='ind'
     3699  paramname_bb='bb'
     3700  paramname_ff='ind'
     3701  paramname_dustacc='dustacc'
     3702  paramname_dustcoa='dustcoasco'
     3703  paramname_dustsco='dustcoasco'
     3704  paramname_wstarBL='pwstarbl'
     3705  paramname_wstarWAKE='pwstarwake'
     3706  paramname_ssacc='ss'
     3707  paramname_sscoa='ss'
     3708
     3709  filescaleparams='modvalues.nc'
     3710  CALL readscaleparamsnc_spl(scale_param_ind,                        &
     3711        nbreg_ind, paramname_ind,                                    &
     3712        scale_param_ff, nbreg_ind,paramname_ff,                      &
     3713        scale_param_bb, nbreg_bb,paramname_bb,                       &
     3714        scale_param_dustacc, nbreg_dust,paramname_dustacc,           &
     3715        scale_param_dustcoa, nbreg_dust,paramname_dustcoa,           &
     3716        scale_param_dustsco, nbreg_dust,paramname_dustsco,           &
     3717        param_wstarBLperregion, nbreg_wstardust, paramname_wstarBL, &
     3718        param_wstarWAKEperregion, nbreg_wstardust, paramname_wstarWAKE, &
     3719        scale_param_ssacc  ,  paramname_ssacc,                    &
     3720        scale_param_sscoa  ,  paramname_sscoa,                    &
     3721           filescaleparams,ijulday,jH_cur, pdtphys,debut)
     3722! add seasalt
     3723
     3724  print *,'JE : check scale_params'
     3725
     3726  print *, 'nbreg_ind', nbreg_ind   
     3727  print *, 'nbreg_dust', nbreg_dust 
     3728  print *, 'nbreg_bb', nbreg_bb   
     3729  print *, 'ind', scale_param_ind   
     3730  print *, 'dustacc', scale_param_dustacc 
     3731  print *, 'dustcoa', scale_param_dustcoa 
     3732  print *, 'dustsco', scale_param_dustsco
     3733  print *, 'wstardustBL', param_wstarBLperregion
     3734  print *, 'wstardustWAKE', param_wstarWAKEperregion
     3735  print *, 'dustsco', scale_param_dustsco
     3736  print *, 'ff', scale_param_ff 
     3737  print *, 'bb', scale_param_bb 
     3738  print *, 'ssacc', scale_param_ssacc
     3739  print *, 'sscoa', scale_param_sscoa
     3740
     3741  print *,'JE: before read_newemissions '
     3742  print *,'JE: jD_cur:',jD_cur,' ijulday:',ijulday,' jH_cur:',jH_cur,' pdtphys:',pdtphys
     3743  print *,'JE: now read_newemissions:'
     3744  call read_newemissions(ijulday,jH_cur ,edgar, flag_dms,debut, & !I
     3745                         pdtphys, lafin, nbjour, pctsrf,  &       !I
     3746                         t, rlat, rlon, &                         !I
     3747                         pmflxr, pmflxs, prfl, psfl, &            !I
     3748                                 u10m_ec, v10m_ec, dust_ec, &     !O
     3749                                 lmt_sea_salt, lmt_so2ff_l, &     !O
     3750                                 lmt_so2ff_h, lmt_so2nff, &       !O
     3751                                 lmt_so2ba, lmt_so2bb_l, lmt_so2bb_h, &  !O
     3752                                 lmt_so2volc_cont, lmt_altvolc_cont, &   !O
     3753                                 lmt_so2volc_expl, lmt_altvolc_expl, &   !O
     3754                                 lmt_dmsbio, lmt_h2sbio, lmt_dmsconc, &  !O
     3755                                 lmt_bcff, lmt_bcnff, lmt_bcbb_l, &      !O
     3756                                 lmt_bcbb_h, lmt_bcba, lmt_omff, &       !O
     3757                                 lmt_omnff, lmt_ombb_l, lmt_ombb_h, &    !O
     3758                                 lmt_omnat, lmt_omba)                    !O
     3759
     3760
     3761  print *,'Check emissions'
     3762  print *,'lmt_so2ff_l' , MINVAL(lmt_so2ff_l), MAXVAL(lmt_so2ff_l)
     3763  print *,'lmt_so2ff_h' , MINVAL(lmt_so2ff_h), MAXVAL(lmt_so2ff_h)
     3764  print *,'lmt_so2nff' , MINVAL(lmt_so2nff), MAXVAL(lmt_so2nff)
     3765  print *,'lmt_so2ba' , MINVAL(lmt_so2ba), MAXVAL(lmt_so2ba)
     3766  print *,'lmt_so2bb_l' , MINVAL(lmt_so2bb_l), MAXVAL(lmt_so2bb_l)
     3767  print *,'lmt_so2bb_h' , MINVAL(lmt_so2bb_h), MAXVAL(lmt_so2bb_h)
     3768  print *,'lmt_so2volc_cont' , MINVAL(lmt_so2volc_cont), MAXVAL(lmt_so2volc_cont)
     3769  print *,'lmt_altvolc_cont' , MINVAL(lmt_altvolc_cont), MAXVAL(lmt_altvolc_cont)
     3770  print *,'lmt_so2volc_expl' , MINVAL(lmt_so2volc_expl), MAXVAL(lmt_so2volc_expl)
     3771  print *,'lmt_altvolc_expl' , MINVAL(lmt_altvolc_expl), MAXVAL(lmt_altvolc_expl)
     3772  print *,'lmt_dmsbio' , MINVAL(lmt_dmsbio), MAXVAL(lmt_dmsbio)
     3773  print *,'lmt_h2sbio' , MINVAL(lmt_h2sbio), MAXVAL(lmt_h2sbio)
     3774  print *,'lmt_dmsconc' , MINVAL(lmt_dmsconc), MAXVAL(lmt_dmsconc)
     3775  print *,'lmt_bcff' , MINVAL(lmt_bcff), MAXVAL(lmt_bcff)
     3776  print *,'lmt_bcnff' , MINVAL(lmt_bcnff), MAXVAL(lmt_bcnff)
     3777  print *,'lmt_bcbb_l' , MINVAL(lmt_bcbb_l), MAXVAL(lmt_bcbb_l)
     3778  print *,'lmt_bcbb_h' , MINVAL(lmt_bcbb_h), MAXVAL(lmt_bcbb_h)
     3779  print *,'lmt_bcba' , MINVAL(lmt_bcba), MAXVAL(lmt_bcba)
     3780  print *,'lmt_omff' , MINVAL(lmt_omff), MAXVAL(lmt_omff)
     3781  print *,'lmt_omnff' , MINVAL(lmt_omnff), MAXVAL(lmt_omnff)
     3782  print *,'lmt_ombb_l' , MINVAL(lmt_ombb_l), MAXVAL(lmt_ombb_l)
     3783  print *,'lmt_ombb_h' , MINVAL(lmt_ombb_h), MAXVAL(lmt_ombb_h)
     3784  print *,'lmt_omnat' , MINVAL(lmt_omnat), MAXVAL(lmt_omnat)
     3785  print *,'lmt_omba' , MINVAL(lmt_omba), MAXVAL(lmt_omba)
     3786  !        CALL minmaxqfi2(clwcon,1e33,-1e33,'clwcon')
     3787  !        CALL minmaxqfi2(cldliq,1e33,-1e33,'cldliq')
     3788  !!        CALL minmaxqfi2(clwcon(:,:)/rnebcon(:,:),1e33,-1e33, 'clwcon/rnebcon')
     3789  !        CALL minmaxqfi2(clw,1e33,-1e33,'clw')
     3790  !        CALL minmaxqfi2(flwc,1e33,-1e33,'flwc')
     3791  !!        CALL minmaxqfi2(clw(:,:)*rnebcon(:,:),1e33,-1e33, 'clw*rnebcon')
     3792  !!        CALL minmaxqfi2(clwcon(:,:)*rnebcon(:,:),1e33,-1e33, 'clwcon*rnebcon')
     3793  print *,'JE iflag_con',iflag_con
     3794! DO i=1,nbtr
     3795! print *,'it check = ',i
     3796! CALL checknanqfi(tr_seri(:,:,i),1.,-1.,' tr before phytracr')
     3797! CALL checknanqfi(q_seri(:,:),1.,-1.,' q before phytracr')
     3798! CALL checknanqfi(t(:,:),1.,-1.,' t before phytracr')
     3799! !CALL checknanqfi(t_seri(:,:),1.,-1.,' t_seri before phytracr')
     3800! ENDDO
     3801
     3802
     3803
     3804  CALL phytracr_spl (debut,jD_cur,jH_cur,iflag_con, & !I
     3805                  pdtphys,ftsol,tsol, & !I
     3806!                  t_seri,q_seri,paprs,pplay,rhcl, & !I  !JE20140506 newfeed
     3807                  t,q_seri,paprs,pplay,rhcl, & !I
     3808                  pmfu, pmfd, pen_u, pde_u, pen_d, pde_d, & !I
     3809                  coefh(1:klon,1:klev,is_ave), cdragh, cdragm, u1, v1, & !I
     3810                  u_seri, v_seri, rlat,rlon, & !I
     3811                  pphis,pctsrf,pmflxr,pmflxs,prfl,psfl, & !I
     3812                  da,phi,phi2,d1a,dam,mp,ep,sigd,sij,clw,elij, & !I
     3813                  epmlmMm,eplaMm,upwd,dnwd,itop_con,ibas_con, & !I
     3814                  ev,wdtrainA,  wdtrainM, wght_cvfd, & !I
     3815                  fm_therm, entr_therm,rneb, & !I
     3816                  beta_prec_fisrt,beta_prec, & !I
     3817                  zu10m,zv10m,wstar(:,is_ave),ale_bl,ale_wake, &
     3818                  scale_param_ssacc, & !P
     3819                  scale_param_sscoa,scale_param_ind, & !P
     3820                  scale_param_bb,scale_param_ff, & !P
     3821                  scale_param_dustacc,scale_param_dustcoa, & !P
     3822                  scale_param_dustsco, & !P
     3823                  nbreg_dust,nbreg_ind,nbreg_bb, & !P
     3824                  param_wstarBLperregion,param_wstarWAKEperregion, &  !P
     3825                  nbreg_wstardust,  & !P
     3826                  dust_ec,u10m_ec, v10m_ec, & !E
     3827                  lmt_sea_salt, & !E
     3828                  lmt_so2ff_l, lmt_so2ff_h, lmt_so2nff, & !E
     3829                  lmt_so2ba, lmt_so2bb_l, lmt_so2bb_h, & !E
     3830                  lmt_so2volc_cont, lmt_altvolc_cont, & !E
     3831                  lmt_so2volc_expl, lmt_altvolc_expl, & !E
     3832                  lmt_dmsbio, lmt_h2sbio, lmt_dmsconc, & !E
     3833                  lmt_bcff, lmt_bcnff, lmt_bcbb_l, lmt_bcbb_h, & !E
     3834                  lmt_bcba, & !E
     3835                  lmt_omff, lmt_omnff, lmt_ombb_l, lmt_ombb_h, & !E
     3836                  lmt_omnat, lmt_omba, & !E
     3837                  tr_seri, & !O
     3838                  diff_aod550_tot,diag_aod865_tot, & !O
     3839                  diff_aod550_tr2,diag_aod865_tr2, & !O
     3840                  diag_aod550_dust,diag_aod865_dust, & !O
     3841                  diag_aod550_dustsco,diag_aod865_dustsco, & !O
     3842                  diag_aod550_ss,diag_aod865_ss) !O
     3843!  ENDIF
     3844!   DO i=1,nbtr
     3845!   print *,'it check = ',i
     3846!   CALL checknanqfi(tr_seri(:,:,i),1.,-1.,' tr after phytracr')
     3847!   CALL checknanqfi(q_seri(:,:),1.,-1.,' q after phytracr')
     3848!   CALL checknanqfi(t(:,:),1.,-1.,' t after phytracr')
     3849!   !CALL checknanqfi(t_seri(:,:),1.,-1.,' t_seri before phytracr')
     3850!   ENDDO
     3851  !JE end
     3852
     3853   ENDIF
     3854
     3855
     3856
     3857
    34853858
    34863859  IF (offline) THEN
     
    37694142
    37704143  !On effectue les sorties:
     4144  print *,' JE: aqui deberia escribir la salida!!!!!!!!!!'
    37714145
    37724146  CALL phys_output_write(itap, pdtphys, paprs, pphis,               &
     
    38634237
    38644238  !      first=.false.
    3865 
    38664239  RETURN
    38674240END SUBROUTINE physiq
  • LMDZ5/branches/LMDZ5_SPLA/libf/phylmd/thermcell.h

    r2000 r2175  
    1414
    1515      integer            :: iflag_coupl,iflag_clos,iflag_wake
    16       integer            :: iflag_thermals_ed,iflag_thermals_optflux,iflag_thermals_closure
     16      integer            :: iflag_thermals_ed,iflag_thermals_optflux
     17!je: to compile with phytracr_slp.F in F77 <
     18      integer            :: iflag_thermals_closure
    1719
    18       common/ctherm1/iflag_thermals,nsplit_thermals,iflag_thermals_closure
     20      common/ctherm0/iflag_thermals_closure
     21      common/ctherm1/iflag_thermals,nsplit_thermals
    1922      common/ctherm2/tau_thermals,alp_bl_k,fact_thermals_ed_dz
    2023      common/ctherm4/iflag_coupl,iflag_clos,iflag_wake
     
    2932!$OMP THREADPRIVATE(/ctherm1/,/ctherm2/,/ctherm4/,/ctherm5/)
    3033!$OMP THREADPRIVATE(/ctherm6/,/ctherm7/,/ctherm8/)
     34!$OMP THREADPRIVATE(/ctherm0/)
     35
Note: See TracChangeset for help on using the changeset viewer.