Ignore:
Timestamp:
May 24, 2019 11:32:38 AM (5 years ago)
Author:
suehring
Message:

chemistry: perform basic checks only when anthropenic emissions are switched on; virtual flights: allow arbitrary start/end positions also in return mode; bugfix in 2d data output

File:
1 edited

Legend:

Unmodified
Added
Removed
  • palm/trunk/SOURCE/chemistry_model_mod.f90

    r3968 r4004  
    2727! -----------------
    2828! $Id$
     29! in subroutine chem_parin check emiss_lod / mod_emis only
     30! when emissions_anthropogenic is activated in namelist (E.C. Chan)
     31!
     32! 3968 2019-05-13 11:04:01Z suehring
    2933! - added "emiss_lod" which serves the same function as "mode_emis"
    3034!   both will be synchronized with emiss_lod having pirority over
     
    22822286
    22832287 20 CONTINUE
     2288
     2289!
     2290!-- synchronize emiss_lod and mod_emis only if emissions_anthropogenic
     2291!-- is activated in the namelist.  Otherwise their values are "don't care"
     2292    IF ( emissions_anthropogenic )  THEN
    22842293!
    22852294!--    check for emission mode for chem species
    22862295
    2287     IF ( emiss_lod < 0 )  THEN   !- if LOD not defined in namelist
    2288        IF ( ( mode_emis /= 'PARAMETERIZED'  )    .AND.      &
    2289             ( mode_emis /= 'DEFAULT'        )    .AND.      &
    2290             ( mode_emis /= 'PRE-PROCESSED'  ) )  THEN
    2291           message_string = 'Incorrect mode_emiss  option select. Please check spelling'
    2292           CALL message( 'chem_check_parameters', 'CM0436', 1, 2, 0, 6, 0 )
     2296       IF ( emiss_lod < 0 )  THEN   !- if LOD not defined in namelist
     2297          IF ( ( mode_emis /= 'PARAMETERIZED'  )    .AND.      &
     2298               ( mode_emis /= 'DEFAULT'        )    .AND.      &
     2299               ( mode_emis /= 'PRE-PROCESSED'  ) )  THEN
     2300             message_string = 'Incorrect mode_emiss  option select. Please check spelling'
     2301             CALL message( 'chem_check_parameters', 'CM0436', 1, 2, 0, 6, 0 )
     2302          ENDIF
     2303       ELSE
     2304          IF ( ( emiss_lod /= 0 )    .AND.         &
     2305               ( emiss_lod /= 1 )    .AND.         &
     2306               ( emiss_lod /= 2 ) )  THEN
     2307             message_string = 'Invalid value for emiss_lod (0, 1, or 2)'
     2308             CALL message( 'chem_check_parameters', 'CM0436', 1, 2, 0, 6, 0 )
     2309          ENDIF
    22932310       ENDIF
    2294     ELSE
    2295        IF ( ( emiss_lod /= 0 )    .AND.         &
    2296             ( emiss_lod /= 1 )    .AND.         &
    2297             ( emiss_lod /= 2 ) )  THEN
    2298           message_string = 'Invalid value for emiss_lod (0, 1, or 2)'
    2299           CALL message( 'chem_check_parameters', 'CM0436', 1, 2, 0, 6, 0 )
    2300        ENDIF
    2301     ENDIF
    2302 
     2311
     2312!
    23032313! for reference (ecc)
    23042314!    IF ( (mode_emis /= 'PARAMETERIZED')  .AND. ( mode_emis /= 'DEFAULT' ) .AND. ( mode_emis /= 'PRE-PROCESSED'  ) )  THEN
     
    23132323!-- this check is in place to retain backward compatibility with salsa until the
    23142324!-- code is migrated completed to emiss_lod
    2315     IF  ( emiss_lod >= 0 ) THEN
    2316        SELECT CASE  ( emiss_lod )
    2317           CASE (0)  !- parameterized mode
    2318              mode_emis = 'PARAMETERIZED'
    2319           CASE (1)  !- default mode
    2320              mode_emis = 'DEFAULT'
    2321           CASE (2)  !- preprocessed mode
    2322              mode_emis = 'PRE-PROCESSED'
    2323        END SELECT
     2325!-- note that
     2326
     2327       IF  ( emiss_lod >= 0 ) THEN
     2328
     2329          SELECT CASE  ( emiss_lod )
     2330             CASE (0)  !- parameterized mode
     2331                mode_emis = 'PARAMETERIZED'
     2332             CASE (1)  !- default mode
     2333                mode_emis = 'DEFAULT'
     2334             CASE (2)  !- preprocessed mode
     2335                mode_emis = 'PRE-PROCESSED'
     2336          END SELECT
    23242337       
    2325        message_string = 'Synchronizing mode_emis to defined emiss_lod'               //  &
    2326                         CHAR(10)  //  '          '                                   //  &
    2327                         'NOTE - mode_emis will be depreciated in future releases'    //  &
    2328                         CHAR(10)  //  '          '                                   //  &
    2329                         'please use emiss_lod to define emission mode'
    2330 
    2331        CALL message ( 'parin_chem', 'CM0463', 0, 0, 0, 6, 0 )
    2332     ELSE  ! if emiss_lod is not set
    2333        SELECT CASE ( mode_emis )
    2334           CASE ('PARAMETERIZED')
    2335              emiss_lod = 0
    2336           CASE ('DEFAULT')
    2337              emiss_lod = 1
    2338           CASE ('PRE-PROCESSED')
    2339              emiss_lod = 2
    2340        END SELECT
    2341 
    2342        message_string = 'emiss_lod undefined.  Using existing mod_emiss setting'     //  &
    2343                         CHAR(10)  //  '          '                                   //  &
    2344                         'NOTE - mode_emis will be depreciated in future releases'    //  &
    2345                         CHAR(10)  //  '          '                                   //  &
    2346                         '       please use emiss_lod to define emission mode'
    2347 
    2348        CALL message ( 'parin_chem', 'CM0464', 0, 0, 0, 6, 0 )
    2349     ENDIF
     2338          message_string = 'Synchronizing mode_emis to defined emiss_lod'               //  &
     2339                           CHAR(10)  //  '          '                                   //  &
     2340                           'NOTE - mode_emis will be depreciated in future releases'    //  &
     2341                           CHAR(10)  //  '          '                                   //  &
     2342                           'please use emiss_lod to define emission mode'
     2343 
     2344          CALL message ( 'parin_chem', 'CM0463', 0, 0, 0, 6, 0 )
     2345
     2346       ELSE ! if emiss_lod is not set
     2347
     2348          SELECT CASE ( mode_emis )
     2349             CASE ('PARAMETERIZED')
     2350                emiss_lod = 0
     2351             CASE ('DEFAULT')
     2352                emiss_lod = 1
     2353             CASE ('PRE-PROCESSED')
     2354                emiss_lod = 2
     2355          END SELECT
     2356
     2357          message_string = 'emiss_lod undefined.  Using existing mod_emiss setting'     //  &
     2358                           CHAR(10)  //  '          '                                   //  &
     2359                           'NOTE - mode_emis will be depreciated in future releases'    //  &
     2360                           CHAR(10)  //  '          '                                   //  &
     2361                           '       please use emiss_lod to define emission mode'
     2362
     2363          CALL message ( 'parin_chem', 'CM0464', 0, 0, 0, 6, 0 )
     2364       ENDIF
     2365
     2366    ENDIF  ! if emissions_anthropengic
    23502367
    23512368    t_steps = my_steps         
Note: See TracChangeset for help on using the changeset viewer.