linlin@email_tamu_edu
New Member
After a short discussion with Dr. Andrew Gettelman, he suggested me to post my description below. I dig into the variable DP_CLD in CESM2_1 CAM6. I guess there should be a bug somewhere in CESM2_1. Let me show you why. DP_CLD is called outfld in [subroutine cldfrc] in [cloud_fraction.F90]. The variable for output DP_CLD is calculated as [deepcu] which is calculated based on mass flux in [subroutine cldfrc]. Then [subroutine cldfrc] is called by [subroutine macrop_driver_tend] which is called in [physpkg.F90].But the only condition met to call [macrop_driver_tend] is it is not using CLUBB. Therefore, in default CESM2_1, CLUBB is default setting. That means in default CESM2_1, [macrop_driver_tend] is not called. [clubb_tend_cam] is called instead. That indicates [subroutine cldfrc] is not called and DP_CLD is not called outfld (The only place to call outfld DP_CLD is in [subroutine cldfrc].).In CLUBB scheme, [deepcu] is also calculated based on convective mass flux. But in CLUBB scheme, [deepcu] is never called outfld. But very wired, no error message pops up and DP_CLD can be output though its value is zero everywhere. I am pretty sure an error should appear when I put DP_CLD in the namelist to output it but the original code to call outfld is not called.I encountered a very similar error before. When I tried to output a variable which is calculated in RK stratiform scheme while MG stratiform scheme is used.There should be an error. Just let you know and maybe some one responsible for this should fix/improve this.This helps user (like me) have a sense that this variable cannot be used and offer a warning that this variable should be avoided, or be more careful to use this variable. Thanks,Lin