Changeset 741


Ignore:
Timestamp:
Jul 25, 2012, 3:20:21 PM (12 years ago)
Author:
jleconte
Message:

Model now works without aerosols at all. You still need to compile it with -s 1 option. LK12

Location:
trunk/LMDZ.GENERIC/libf/phystd
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.GENERIC/libf/phystd/aeropacity.F90

    r728 r741  
    116116        enddo
    117117
    118         if (naerkind.ne.0) then
     118        if (noaero) then
     119          print*, "No active aerosols found in aeropacity"
     120        else
    119121          print*, "If you would like to use aerosols, make sure any old"
    120122          print*, "start files are updated in newstart using the option"
    121123          print*, "q=0"
    122           write(*,*) "Aerosols found in aeropacity:"
    123         endif
    124 
    125         if (iaero_co2.ne.0) then
     124          write(*,*) "Active aerosols found in aeropacity:"
     125        endif
     126
     127        if ((iaero_co2.ne.0).and.(.not.noaero)) then
    126128          print*, 'iaero_co2=  ',iaero_co2
    127129        endif
     
    150152            aerosol(1:ngridmx,1:nlayermx,iaer)=0.0
    151153!       2. Opacity calculation
    152             if (aerofixco2.or.(i_co2ice.eq.0)) then !  CO2 ice cloud prescribed
     154            if (noaero) then ! aerosol set to a very low value
     155             aerosol(1:ngridmx,1:nlayermx,iaer)=1.e-9
     156            elseif (aerofixco2.or.(i_co2ice.eq.0)) then !  CO2 ice cloud prescribed
    153157               aerosol(1:ngridmx,1:nlayermx,iaer)=1.e-9
    154158               !aerosol(1:ngridmx,12,iaer)=4.0 ! single cloud layer option
  • trunk/LMDZ.GENERIC/libf/phystd/aerosol_mod.F90

    r728 r741  
    99      integer, save :: iaero_dust
    1010      integer, save :: iaero_h2so4
    11 
     11      logical, save :: noaero
     12     
    1213!==================================================================
    1314end module aerosol_mod
  • trunk/LMDZ.GENERIC/libf/phystd/iniaerosol.F

    r726 r741  
    2828      iaero_dust  =0
    2929      iaero_h2so4 =0
    30      
     30      noaero = .false.
     31 
    3132      ia=0
    3233      if (aeroco2) then
    33       ia=ia+1
    34       iaero_co2=ia
    35       write(*,*) 'CO2 aerosol = ', iaero_co2
     34         ia=ia+1
     35         iaero_co2=ia
     36         write(*,*) 'CO2 aerosol = ', iaero_co2
    3637      endif
    3738 
    3839      if (aeroh2o) then
    39       ia=ia+1
    40       iaero_h2o=ia
    41       write(*,*) 'H2O aerosol = ', iaero_h2o
     40         ia=ia+1
     41         iaero_h2o=ia
     42         write(*,*) 'H2O aerosol = ', iaero_h2o
    4243      endif
    4344
    4445      if (dusttau.gt.0) then
    45       ia=ia+1
    46       iaero_dust=ia
    47       write(*,*) 'Dust aerosol = ', iaero_dust
     46         ia=ia+1
     47         iaero_dust=ia
     48         write(*,*) 'Dust aerosol = ', iaero_dust
    4849      endif
    4950
    5051      if (aeroh2so4) then
    51       ia=ia+1
    52       iaero_h2so4=ia
    53       write(*,*) 'H2SO4 aerosol = ', iaero_h2so4
     52         ia=ia+1
     53         iaero_h2so4=ia
     54         write(*,*) 'H2SO4 aerosol = ', iaero_h2so4
    5455      endif
    5556     
    5657      write(*,*) 'Number of aerosols= ', ia
    5758     
    58       if (ia.eq.0) then  !For the zero aerosol case
    59       ia = 1
     59! For the zero aerosol case, we currently make a dummy co2 aerosol which is zero everywhere.
     60! (See aeropacity.F90 for how this works). A better solution would be to turn off the
     61! aerosol machinery in the no aerosol case, but this would be complicated. LK
     62
     63      if (ia.eq.0) then  !For the zero aerosol case.
     64         ia = 1
     65         noaero = .true.
     66         iaero_co2=ia
    6067      endif
    6168
     
    6572          print*, 'or change options in callphys.def'
    6673          print*, 'Abort in iniaerosol.F'
    67       call abort
     74          call abort
    6875      endif
    6976
Note: See TracChangeset for help on using the changeset viewer.