NCAR / ccpp-framework

Common Community Physics Package (CCPP)
http://www.dtcenter.org/community-code/common-community-physics-package-ccpp/
Other
26 stars 64 forks source link

Add constituent minimum values array interface #585

Open peverwhee opened 2 months ago

peverwhee commented 2 months ago

Description

Add interface to host cap to retrieve constituent minimum values array (for use by host model)

Solution

This should be a straight-forward update to

  1. src/ccpp_constituent_prop_mod.F90: add new procedure field_min_value_ptr that returns a pointer to the minimum values array (vars_minvalue)
  2. scripts/constituents.py: modify write_host_routines() to write a new routine (<hostname>_constituent_min_values).
  3. scripts/host_cap.py: add the new routine name

The final generated code will look something like:

function <hostname>_constituent_min_values() result(min_values_ptr)

   ! Return pointer to minimum values array

   ! Dummy argument
   real(kind_phys), pointer :: min_values_ptr(:)

   min_values_ptr => <hostname>_constituents_obj%field_min_value_ptr()

end function <hostname>_constituent_min_values