Scheduled Downtime
On Friday 21 April 2023 @ 5pm MT, this website will be down for maintenance and expected to return online the morning of 24 April 2023 at the latest

TKE and Friction Velocity in WRF

This post was from a previous version of the WRF&MPAS-A Support Forum. New replies have been disabled and if you have follow up questions related to this post, then please start a new thread from the forum home page.

Dear WRF-experts,

I would like to ask how do I output TKE and Friction velocity from the WRF model?

Or maybe you can point me to the equations for solving this using the normal output of WRF?

I'll appreciate any help on this!
It looks like you can probably output TKE using the the Runtime I/O option. You may also be able to use that option for friction velocity, but I'm not able to find this exact variable name listed in the Registry/Registry.EM_COMMON file, which lists all variables. It could be called something different, though. Variable names can differ depending on the physics options chosen. If you know the surface and surface layer physics you're using, you may try to look in the modules for those schemes. For e.g., if you're using the Noah LSM, the file you'd be interested in is phys/module_sf_noahlsm.F.
Thanks @kwerner!

It appears that TKE is a prognostic variable of certain PBL schemes like the MYJ scheme.

The friction velocity is here:

I am using the Revised MM5 for the surface layer physics.

but how do I output this? It's not in the Registry.EM_COMMON
There are some steps for doing this mentioned in this FAQ. Essentially, you need to make modifications in the correct subroutine. You'll then want to check to see what subroutines (in the model - not just in that file) call that subroutine, and you'll need to make modifications up the chain until you get to the top level. So you'll want to modify the code in the following files:

- the specific file for the physics routine
- the physics driver for that scheme (e.g., if you're modifying a radiation file, you will also modify the radiation driver)
- dyn_em/module_first_rk_step_part1.F (which calls all drivers except microphysics - that one is called directly by dyn_em/solve_em.F)
- dyn_em/solve_em.F (which calls module_first_rk_step_part1.F)
- phys/module_physics_init.F (I think - if it includes calls to any of the above files/subroutines)
- dyn_em/start_em.F
- Registry.EM_COMMON