GEOS-ESM/GEOSgcm_GridComp

[NDSL] GF convection port (GF2020)

FlorianDeconinck opened this issue · 0 comments

Located at GEOS_GF_InterfaceMod.F90:GF_Run, two main subroutines.

Use GEOS-FP to determine which one to port and GMAO expertise. Everything under Run should be considered for port. GF_2020 should be the one we run, since the GEOS5 is the older one.

Parent: GEOS-ESM/SMT-Nebulae#57


  • Port GF to pyMoist

Breakdown:

*GF2020_Interface *

  • alloc_grads_arr
  • set_index_loops
  • flipz
  • get_vars
  • GF2020_DRV
    • prepare_temp_pertubations
       - CUP_gf (Note this is not the same as CUP_gf from GEOS5)
      • gen_random
          - system_clock
      • cup_env
        • satur_spec_hum
      • SOUND
          - cup_env_clev
      • get_interp
      • get_partition_liq_ice
        • fract_liq_f
          • ice_fraction -> ICE_FRACTION_SC
      • precip_cwv_factor
          - get_cloud_bc
          - get_lcl
           - satvap
           - td
      • cup_cloud_limits
          - cup_minimi
          - rates_up_pdf
          - get_zu_zd_pdf
           - gammaBrams
            - intfuncgamma
          - get_lateral_massflux
          - get_buoyancy
          - cup_up_moisture_light
          - cup_up_vvel
          - cup_up_moisture
           - get_delmix
           - fract_liq_f
            - ice_fraction
           - get_melting_profile
           - get_delmix
           - get_jmin
           - get_lateral_massflux_down
           - get_wetbulb
           - cup_dd_moisture
           - cup_up_aa0
           - cup_up_aa1bl
           - cup_dd_edt
           - tridiag
           - fct1d3
           - cup_forcing_ens_3d
           - cup_forcing_ens_3d_mid
           - cup_up_cape
           - cup_forcing_ens_3d_shal
           - ke_to_heating
           - cup_output_ens_3d
           - get_precip_fluxes
           - rain_evap_below_cloudbase
           - cloud_dissipation
           - cup_up_lightning
           - get_liq_ice_number_conc
            - make_IceNumber
            - make_DropletNumber
           - cup_env_clev_chem
            - get_w_upd_gcc
           - get_incloud_sc_chem_up
            - henry_gcc
            - henry
            - compute_ki_gcc_gas
        - gcc_e_ice
           - get_incloud_sc_chem_dd
           - set_grads_var
           - wrt_bin_ctl
  • MAPL_EQsat -> QSAT0 (Found under src/Shared/@MAPL/base/MAPL_SatVapor.F90)

Note: I think there're recursive calls possible within QSAT0