Scheduled Downtime
On Tuesday 24 October 2023 @ 5pm MT the forums will be in read only mode in preparation for the downtime. On Wednesday 25 October 2023 @ 5am MT, this website will be down for maintenance and expected to return online later in the morning.
Normal Operations
The forums are back online with normal operations. If you notice any issues or errors related to the forums, please reach out to help@ucar.edu

Temperature budget calculation

Hello,

I would like to calculate the temperature budget in CESM 1.2.2 (CAM5) and have a few questions that I would really appreciate some help with:

(1) Based on previous forum posts, I have: dT/dt = DTCOND + QRS + QRL + DTV + DUH + DUV. Will that produce an approximately closed budget?
I am unable to get horizontal temperature diffusion (DTH) since it is not in the history field list. Others seem to have also included terms like DTVKE but I am not sure if this is required.

(2) Does the field HR (Heating rate needed for d(theta)/dt computation) equal the LHS of dT/dt = u*dT/dx + v*dT/dy + w*dT/dz?

(3) I would like to compute the budget using daily data. I am outputting instantaneous daily winds and temperature for eddy calculations and plan to output the fields for dT/dt in the same way. Are these tendency terms instantaneous? I'm wondering if there are any differences with where the variables are output in the timestep cycle and therefore I should avoid using instantaneous daily data and output daily mean fields instead? Or can a closed budget be achieved with instantaneous daily data?

Thanks so much in advance!
Zoe
 

brianpm

Member
I believe that the physics tendency can be decomposed as:

PTTEND = DTCOND + QRS + QRL + DTV + TTGWORO

DTV should be available as an output; it is called as an output in [CAM_SRC]/physics/cam/vertical_diffusion.F90.

The TTGWORO is the temperature from orographic gravity waves.

In terms of getting the total heating rate, there is also a heating associated with the dynamics. Depending on what version of the model is being used, this can be written out directly using a variable called DTCORE. If that is not available, it can be approximated by writing out TAP (temperature after physics), and explicitly calculating the difference (TAP[time,...] - TAP[time-1,...])/delta_time.

These budgets should close for instantaneous data. There could be some inconsistency when comparing to the instantaneous winds and temperature, as you mention because of where those variables are written. I haven't checked that in a long time. If you can reconstruct TTEND_TOT, I think you can have confidence that the discrepancy is due where in the time cycle the state variables are written vs the tendencies.
 
Hi Brian,

Thanks very much for your response! That's really helpful. I'll check to see that TTEND_TOT = PTTEND + DTCORE when using the instantaneous data.

Can I also ask how do I use HR term? It's described as the heating rate needed for d(theta)/dt computation but I'm not sure what I need to do with it for the d(theta)/dt calculation.

Thanks,
Zoe
 

brianpm

Member
That HR term is diagnostic, and shows how to turn QRS and QRL into d(theta).

If you look at how that term is calculated in radiation.F90:
[HR = ] ftem(i,k) = (qrs(i,k) + qrl(i,k))/cpair * (1.e5_r8/state%pmid(i,k))**cappa

Therefore, this is only the radiative heating rate for theta, which differs from the radiative heating that is applied to the dry static energy. That heating is set in redhead.F90 as qrs + qrl, and then the state is updated back in tphysbc (in physpkg.F90) through a call to physics_update.

The LHS of the equation is really TTEND_TOT, which is the sum of the dynamics and physics: TTEND_TOT = DTCORE + PTTEND.
 
Top