Opened 7 years ago

Closed 7 years ago

#145 closed defect (fixed)

condveg: problem in structure in _main

Reported by: jgipsl Owned by: jgipsl
Priority: major Milestone: IPSLCM6.v1
Component: Model architecture Version: trunc
Keywords: Cc:

Description

In condveg_main there are 3 sections :

    !! 1. Call subroutines to start initialisation
   
    ! Is TRUE if condveg is called the first time
    IF (l_first_condveg) THEN
        
        ...
        ...
 
        RETURN

    ENDIF

    !! 2. Call subroutines to update fields

    ! Call the routine 'condveg_var_update' to update the fields of albedo, emissivity and roughness
    CALL condveg_var_update (ldrestart_read, kjpindex, veget, veget_max, frac_nobio, totfrac_nobio, &
         & drysoil_frac, zlev, height,  emis, albedo, z0, roughheight)

    ! Update snow parameters by calling subroutine 'condveg_snow'
    CALL condveg_snow (ldrestart_read, kjpindex,        veget,      veget_max,  frac_nobio,     &
                       totfrac_nobio,  snow,            snow_age,   snow_nobio, snow_nobio_age, &
                       z0,             snowdz,          snowrho,    snowliq,    dtradia,        &
                       precip_snow,    osfcmelt,        temp_air,   u,          v,              &         
                       albedo,         albedo_snow,     albedo_glob,albedo_undersnow,           &
                       frac_snow_veg,  frac_snow_nobio)

         
    !! 3. Call subroutines to write restart files and data

    ! To write restart files for soil albedo variables
    IF (ldrestart_write) THEN
       !
       var_name = 'soilalbedo_dry'
       CALL restput_p (rest_id, var_name, nbp_glo, 2, 1, kjit, soilalb_dry, 'scatter',  nbp_glo, index_g)
       
       ...
       ...
      
       RETURN
       !
    ENDIF

But section 2 and 3 should change place as follow:

    !! 1. Call subroutines to start initialisation
   
    ! Is TRUE if condveg is called the first time
    IF (l_first_condveg) THEN
        
        ...
        ...
 
        RETURN

    ENDIF

    !! 2. Call subroutines to write restart files and data

    ! To write restart files for soil albedo variables
    IF (ldrestart_write) THEN
       !
       var_name = 'soilalbedo_dry'
       CALL restput_p (rest_id, var_name, nbp_glo, 2, 1, kjit, soilalb_dry, 'scatter',  nbp_glo, index_g)
       
       ...
       ...
      
       RETURN
       !
    ENDIF

    !! 3. Call subroutines to update fields

    ! Call the routine 'condveg_var_update' to update the fields of albedo, emissivity and roughness
    CALL condveg_var_update (ldrestart_read, kjpindex, veget, veget_max, frac_nobio, totfrac_nobio, &
         & drysoil_frac, zlev, height,  emis, albedo, z0, roughheight)

    ! Update snow parameters by calling subroutine 'condveg_snow'
    CALL condveg_snow (ldrestart_read, kjpindex,        veget,      veget_max,  frac_nobio,     &
                       totfrac_nobio,  snow,            snow_age,   snow_nobio, snow_nobio_age, &
                       z0,             snowdz,          snowrho,    snowliq,    dtradia,        &
                       precip_snow,    osfcmelt,        temp_air,   u,          v,              &         
                       albedo,         albedo_snow,     albedo_glob,albedo_undersnow,           &
                       frac_snow_veg,  frac_snow_nobio)

         

Change History (1)

comment:1 Changed 7 years ago by jgipsl

  • Resolution set to fixed
  • Status changed from new to closed

Done rev [2279]

Note: See TracTickets for help on using tickets.