Ignore:
Timestamp:
Sep 27, 2024, 5:29:39 PM (3 months ago)
Author:
jbclement
Message:

PEM:
Correction: the potential temperature teta is now updated due to the change of surface pressure at the end of the PEM to write the "restart.nc" file.
JBC

Location:
trunk/LMDZ.COMMON/libf/evolution
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.COMMON/libf/evolution/changelog.txt

    r3432 r3442  
    430430== 20/09/2024 == JBC
    431431Small corrections for the launching script (run numbers must be integer) and the PEM stopping criteria algorithm related to r3430.
     432
     433== 27/09/2024 == JBC
     434Correction: the potential temperature teta is now updated due to the change of surface pressure at the end of the PEM to write the "restart.nc" file.
  • trunk/LMDZ.COMMON/libf/evolution/pem.F90

    r3432 r3442  
    8383    use mod_phys_lmdz_para, only: is_parallel, is_sequential, is_mpi_root, is_omp_root, is_master
    8484    use planete_h,          only: aphelie, periheli, year_day, peri_day, obliquit, iniorbit
    85     use comcstfi_h,         only: pi, rad, g, cpp, mugaz, r
     85    use comcstfi_h,         only: pi, rad, g, mugaz, r
    8686    use surfini_mod,        only: surfini
     87    use comconst_mod,       only: kappa, cpp
    8788#else
    8889    use tracer_h,           only: noms, igcm_h2o_ice, igcm_co2 ! Tracer names
     
    9293    use aerosol_mod,        only: iniaerosol
    9394    use planete_mod,        only: apoastr, periastr, year_day, peri_day, obliquit
    94     use comcstfi_mod,       only: pi, rad, g, cpp, mugaz, r
     95    use comcstfi_mod,       only: pi, rad, g, mugaz, r
    9596#endif
    9697
     
    138139real, dimension(:,:,:), allocatable :: q             ! champs advectes
    139140real, dimension(ip1jmp1)            :: ps            ! pression au sol
     141real, dimension(ip1jmp1)            :: ps0           ! pression au sol initiale
    140142real, dimension(:),     allocatable :: ps_start_PCM  ! (ngrid) surface pressure
    141143real, dimension(:,:),   allocatable :: ps_timeseries ! (ngrid x timelen) instantaneous surface pressure
     
    409411    ps_start_PCM(1) = ps(1)
    410412#endif
     413
     414! Save initial surface pressure
     415ps0 = ps
    411416
    412417! In the PCM, these values are given to the physic by the dynamic.
     
    11401145allocate(p(ip1jmp1,nlayer + 1))
    11411146#ifndef CPP_1D
    1142     call pression (ip1jmp1,ap,bp,ps,p)
     1147    ! Correction on teta due to surface pressure changes
     1148    do l = 1,nlayer
     1149        do i = 1,ip1jmp1
     1150            teta(i,l)= teta(i,l)*(1 + (ps(i) - ps0(i))*year_iter/ps(i))**kappa
     1151        enddo
     1152    enddo
     1153    ! Correction on atmospheric pressure
     1154    call pression(ip1jmp1,ap,bp,ps,p)
     1155    ! Correction on the mass of atmosphere
    11431156    call massdair(p,masse)
    11441157    call dynredem0("restart.nc",day_ini,phis)
Note: See TracChangeset for help on using the changeset viewer.