NCAR / ccpp-physics

GFS physics for CCPP
Other
58 stars 145 forks source link

Question about converting between dry and moist mixing ratios #961

Open dustinswales opened 2 years ago

dustinswales commented 2 years ago

Discussed in https://github.com/NCAR/ccpp-physics/discussions/959

Originally posted by **hannahcbarnes** August 30, 2022 I am working with cu_gf_driver.F90. I know that many of the hydrometeor mixing ratios used in the physic portion of the code needs to be converted back and forth between dry and moist mixing ratios. Towards the end of cu_gf_driver I found this comment, _! Scale dry mixing ratios for water vapor and cloud water to specific humidity / moist mixing ratios_ At the start of cu_gf_driver, qv, qv2di, and forceqv are all converted. This makes sense; they are water vapor variables. Towards the end of cu_gf_driver, qv and cnvw are converted. cnvw contains cloud water. So my question is, why don't we have to scale clcw, which is the cloud water variable at the start and end of cu_gf_driver? I asked someone I work with this question and he said clcw is an interstitial variable , so it is only used in physics and does not need to be scaled. This is true, clcw is part of the clw array, and is an interstitial variable. However, clw is filled from and feeds back into gq0 and gq0 ultimately goes in qgrs, which is used in radiation. These are stateout and statein variables, respectively. Does the fact that clw is connected to gq0 and qgrs impact whether it should be converted? I tried looking through other portions of the physics code that are related to clw and have not been able to find an instance where the clw array is converted. If clcw should be converted, should cliw be converted as well? cliw is the ice mixing ratio, comes from clw, and is also connected to the gq0 and qgrs arrays.