Ignore:
Timestamp:
Apr 21, 2022, 5:34:49 PM (3 years ago)
Author:
aslmd
Message:

CIA : modified the loading of file to use high temperature dataset

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

Legend:

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

    r2662 r2667  
    6262
    6363      integer ind
    64      
    65       if(temp.gt.400)then
    66         if (strictboundcia) then
    67           if (is_master) then
    68             print*,'Your temperatures are too high for this H2-H2 CIA dataset. If you '
    69             print*,'really want to run simulations with hydrogen at T > 400 K, contact'
    70             print*,'Robin Wordsworth [rwordsworth@uchicago.edu].'
    71           endif
    72           stop
    73         else
    74           if (is_master) then
    75             print*,'Your temperatures are too high for this H2-H2 CIA dataset'
    76             print*,'you have chosen strictboundcia = ', strictboundcia
    77             print*,'*********************************************************'
    78             print*,' we allow model to continue but with temp = 400          '
    79             print*,'  ...       for H2-H2 CIA dataset          ...           '
    80             print*,'  ... we assume we know what you are doing ...           '
    81             print*,'*********************************************************'
    82           endif
    83           temp = 400
    84         endif
    85       elseif(temp.lt.40)then     
    86         if (strictboundcia) then
    87           if (is_master) then
    88             print*,'Your temperatures are too low for this H2-H2 CIA dataset. If you '
    89             print*,'really want to run simulations with hydrogen at T < 40 K, contact'
    90             print*,'Robin Wordsworth [rwordsworth@uchicago.edu].'
    91           endif
    92           stop
    93         else
    94           if (is_master) then
    95             print*,'Your temperatures are too low for this H2-H2 CIA dataset'
    96             print*,'you have chosen strictboundcia = ', strictboundcia
    97             print*,'*********************************************************'
    98             print*,' we allow model to continue but with temp = 40           '
    99             print*,'  ...       for H2-H2 CIA dataset          ...           '
    100             print*,'  ... we assume we know what you are doing ...           '
    101             print*,'*********************************************************'
    102           endif
    103           temp = 40
    104         endif           
    105       endif
    106 
     64      if ((H2orthopara_mixture .eq. "hot")) then
     65        ! print*,"We're in the Hot Jupiter case"
     66        if (temp .gt. 3000.) then
     67          if (strictboundcia) then
     68            if (is_master) then
     69              print*,'Your temperatures are too high for this H2-H2 CIA dataset (Hot Jupiter case). If you '
     70              print*,'really want to run simulations with hydrogen at T > 400 K, contact'
     71              print*,'Robin Wordsworth [rwordsworth@uchicago.edu].'
     72            endif !is_master
     73            stop
     74          else
     75            if (is_master) then
     76              print*,'Your temperatures are too high for this H2-H2 CIA dataset (Hot Jupiter case)'
     77              print*,'you have chosen strictboundcia = ', strictboundcia
     78              print*,'*********************************************************'
     79              print*,' we allow model to continue but with temp = 3000          '
     80              print*,'  ...       for H2-H2 CIA dataset          ...           '
     81              print*,'  ... we assume we know what you are doing ...           '
     82              print*,'*********************************************************'
     83            endif !is_master
     84            temp = 3000.
     85          endif !strictboundcia
     86        endif !(temp .gt. 3000.)
     87      else ! if not Hot Jupiter
     88        if(temp.gt.400)then
     89          if (strictboundcia) then
     90            if (is_master) then
     91              print*,'Your temperatures are too high for this H2-H2 CIA dataset. If you '
     92              print*,'really want to run simulations with hydrogen at T > 400 K, contact'
     93              print*,'Robin Wordsworth [rwordsworth@uchicago.edu].'
     94            endif !is_master
     95            stop
     96          else
     97            if (is_master) then
     98              print*,'Your temperatures are too high for this H2-H2 CIA dataset'
     99              print*,'you have chosen strictboundcia = ', strictboundcia
     100              print*,'*********************************************************'
     101              print*,' we allow model to continue but with temp = 400          '
     102              print*,'  ...       for H2-H2 CIA dataset          ...           '
     103              print*,'  ... we assume we know what you are doing ...           '
     104              print*,'*********************************************************'
     105            endif !is_master
     106            temp = 400
     107          endif !of strictboundcia
     108        elseif(temp.lt.40)then     
     109          if (strictboundcia) then
     110            if (is_master) then
     111              print*,'Your temperatures are too low for this H2-H2 CIA dataset. If you '
     112              print*,'really want to run simulations with hydrogen at T < 40 K, contact'
     113              print*,'Robin Wordsworth [rwordsworth@uchicago.edu].'
     114            endif ! is_master
     115            stop
     116          else
     117            if (is_master) then
     118              print*,'Your temperatures are too low for this H2-H2 CIA dataset'
     119              print*,'you have chosen strictboundcia = ', strictboundcia
     120              print*,'*********************************************************'
     121              print*,' we allow model to continue but with temp = 40           '
     122              print*,'  ...       for H2-H2 CIA dataset          ...           '
     123              print*,'  ... we assume we know what you are doing ...           '
     124              print*,'*********************************************************'
     125            endif !is_master
     126            temp = 40
     127          endif !of strictboundcia       
     128        endif ! of (temp .gt. 400)
     129      endif ! of ((H2orthopara_mixture .eq. "hot").and. (temp .gt. 3000.))
    107130      amagat = (273.15/temp)*(pres/101325.0)
    108131
     
    119142           else if (H2orthopara_mixture.eq."equilibrium") then
    120143             dt_file=TRIM(datadir)//'/continuum_data/H2-H2_eq_2011.cia'
     144           else if (H2orthopara_mixture.eq."hot") then
     145            dt_file=TRIM(datadir)//'/continuum_data/H2-H2_2011.cia'
     146            ns = 9981
    121147           endif
    122148         else if (versH2H2cia.eq.2018) then
  • trunk/LMDZ.GENERIC/libf/phystd/interpolateH2He.F90

    r2662 r2667  
    3030
    3131      integer nS,nT
    32       parameter(nS=2428)
    3332      parameter(nT=10)
    3433
     
    4039      double precision amagatH2
    4140      double precision amagatHe
    42       double precision wn_arr(nS)
    4341      double precision temp_arr(nT)
    44       double precision abs_arr(nS,nT)
     42      double precision, dimension(:),   allocatable :: wn_arr
     43      double precision, dimension(:,:), allocatable :: abs_arr
    4544
    4645      integer k,iT
     
    5958
    6059      integer ind
    61      
    62       if(temp.gt.400)then
    63         if (strictboundcia) then
    64           if (is_master) then
    65             print*,'Your temperatures are too high for this H2-He CIA dataset.'
    66             print*,'Please run mixed H2-He atmospheres below T = 400 K.'     
    67           endif
    68           stop
    69         else
    70           if (is_master) then
    71             print*,'Your temperatures are too high for this H2-He CIA dataset'
    72             print*,'you have chosen strictboundcia = ', strictboundcia
    73             print*,'*********************************************************'
    74             print*,' we allow model to continue but with temp = 400          '
    75             print*,'  ...       for H2-He CIA dataset          ...           '
    76             print*,'  ... we assume we know what you are doing ...           '
    77             print*,'*********************************************************'
    78           endif
    79           temp = 400
    80         endif
    81       elseif(temp.lt.40)then
    82         if (strictboundcia) then
    83           if (is_master) then
    84             print*,'Your temperatures are too low for this H2-He CIA dataset.'
    85             print*,'Please run mixed H2-He atmospheres above T = 40 K.'     
    86           endif
    87           stop
    88         else
    89           if (is_master) then
    90             print*,'Your temperatures are too low for this H2-He CIA dataset'
    91             print*,'you have chosen strictboundcia = ', strictboundcia
    92             print*,'*********************************************************'
    93             print*,' we allow model to continue but with temp = 40           '
    94             print*,'  ...       for H2-He CIA dataset          ...           '
    95             print*,'  ... we assume we know what you are doing ...           '
    96             print*,'*********************************************************'
    97           endif
    98           temp = 40
    99         endif
    100       endif
     60
     61
     62      if (H2orthopara_mixture .eq. "hot") then ! .and. (temp .gt. 3000.0)) then
     63        ! print*,"We're in the Hot Jupiter case "
     64        nS = 19981
     65        if (temp .gt. 9900) then
     66          if (strictboundcia) then
     67            if (is_master) then
     68              print*,'Your temperatures are too high for this H2-He CIA dataset (Hot Jupiter case).'
     69              print*,'Please run mixed H2-He atmospheres below T = 9900.0 K.'     
     70            endif !is_master
     71            stop
     72          else
     73            if (is_master) then
     74              print*,'Your temperatures are too high for this H2-He CIA dataset (Hot Jupiter case)'
     75              print*,'you have chosen strictboundcia = ', strictboundcia
     76              print*,'*********************************************************'
     77              print*,' we allow model to continue but with temp = 9900.0 K     '
     78              print*,'  ...       for H2-He CIA dataset          ...           '
     79              print*,'  ... we assume we know what you are doing ...           '
     80              print*,'*********************************************************'
     81            endif !is_master
     82            temp = 9900.0
     83          endif ! of stricbound cia
     84        endif ! temp .gt. 9900
     85      else !not in Hot Jupiter case
     86        nS = 2428
     87        if(temp.gt.400)then
     88          if (strictboundcia) then
     89            if (is_master) then
     90              print*,'Your temperatures are too high for this H2-He CIA dataset.'
     91              print*,'Please run mixed H2-He atmospheres below T = 400 K.'     
     92            endif ! is_master
     93            stop
     94          else
     95            if (is_master) then
     96              print*,'Your temperatures are too high for this H2-He CIA dataset'
     97              print*,'you have chosen strictboundcia = ', strictboundcia
     98              print*,'*********************************************************'
     99              print*,' we allow model to continue but with temp = 400          '
     100              print*,'  ...       for H2-He CIA dataset          ...           '
     101              print*,'  ... we assume we know what you are doing ...           '
     102              print*,'*********************************************************'
     103            endif ! is_master
     104            temp = 400
     105          endif !of strictboundcia
     106        elseif(temp.lt.40)then
     107          if (strictboundcia) then
     108            if (is_master) then
     109              print*,'Your temperatures are too low for this H2-He CIA dataset.'
     110              print*,'Please run mixed H2-He atmospheres above T = 40 K.' 
     111            endif ! is_master   
     112            stop
     113          else
     114            if (is_master) then
     115              print*,'Your temperatures are too low for this H2-He CIA dataset'
     116              print*,'you have chosen strictboundcia = ', strictboundcia
     117              print*,'*********************************************************'
     118              print*,' we allow model to continue but with temp = 40           '
     119              print*,'  ...       for H2-He CIA dataset          ...           '
     120              print*,'  ... we assume we know what you are doing ...           '
     121              print*,'*********************************************************'
     122            endif ! is_master
     123            temp = 40
     124          endif !of strictboundcia
     125        endif ! of (temp .gt. 400)
     126      endif ! of (H2orthopara_mixture .eq. "hot")
     127
     128      if (.not. allocated(wn_arr)) allocate(wn_arr(nS))
     129      if (.not. allocated(abs_arr)) allocate(abs_arr(nS,nT))
    101130
    102131      amagatH2 = (273.15/temp)*(presH2/101325.0)
     
    112141         else if (H2orthopara_mixture.eq."equilibrium") then
    113142           dt_file=TRIM(datadir)//'/continuum_data/H2-He_eq_2011.cia'
     143         else if (H2orthopara_mixture .eq. "hot") then !we use a dataset than can go as high as 9900 K
     144          dt_file=TRIM(datadir)//'/continuum_data/H2-He_2011.cia'
    114145         endif
    115146         
Note: See TracChangeset for help on using the changeset viewer.