Changeset 386 for codes


Ignore:
Timestamp:
05/25/16 17:58:59 (8 years ago)
Author:
ymipsl
Message:

Some fixes in dcmip2016 physics

YM

Location:
codes/icosagcm/trunk/src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • codes/icosagcm/trunk/src/etat0_dcmip2016_baroclinic_wave.f90

    r382 r386  
    3333       STOP 
    3434    END IF 
    35     CALL set_advection_scheme(3,advect_none) 
     35!    CALL set_advection_scheme(3,advect_none) 
    3636     
    3737  END SUBROUTINE getin_etat0 
  • codes/icosagcm/trunk/src/physics_dcmip2016.f90

    r385 r386  
    6565    ! Physics-specific data 
    6666    ALLOCATE(precl_packed(ngrid)) 
     67    precl_packed(:)=0. 
    6768    CALL allocate_field(f_precl, field_t,type_real) 
    6869 
     
    8485    CALL unpack_field(f_precl, precl_packed) 
    8586    CALL output_field("precl",f_precl) 
     87    precl_packed(:)=0. 
     88     
    8689  END SUBROUTINE write_physics 
    8790 
     
    154157          DO l=1,llm 
    155158           ll=llm+1-l 
    156            rho(l) = gas_constant*Temp(ij,l) / pmid(ij,ll) 
    157            z(l)=lastz+ (p(ij,l)-p(ij,l+1) /g) / rho(l) 
     159           rho(l) = pmid(ij,ll)/(287*Temp(ij,l)) 
     160           z(l)=lastz+ (p(ij,l)-p(ij,l+1)) /g / rho(l) 
    158161           lastz=z(l) 
    159            theta(l)= Tfi(ij,ll)*(1+0.608*qfi(ij,ll,1)) * pk(ij,l) / cpp 
     162!           theta(l)= Tfi(ij,ll)*(1+0.608*qfi(ij,ll,1)) / ( pk(ij,l) / cpp) 
     163           theta(l)= Tfi(ij,ll) / ( pk(ij,l) / cpp) 
    160164          ENDDO 
    161165 
     
    165169          DO l=1,llm 
    166170           ll=llm+1-l 
    167            Tfi(ij,ll) = theta(l) /(1+0.608*qfi(ij,ll,1)) * cpp / pk(ij,l) 
     171!           Tfi(ij,ll) = theta(l) /(1+0.608*qfi(ij,ll,1)) * ( pk(ij,l) / cpp) 
     172           Tfi(ij,ll) = theta(l)  * ( pk(ij,l) / cpp) 
    168173          ENDDO 
    169174       ENDDO 
Note: See TracChangeset for help on using the changeset viewer.