Main menu


CAM 5.0 restart files .r. and .rh0. generate different zonal wind field in a one time-step output

5 posts / 0 new
Last post
CAM 5.0 restart files .r. and .rh0. generate different zonal wind field in a one time-step output

I know that .rh0. file accumulates/adds the fields in time for one month and takes a monthly average in the end of each month. But, if I simply generate a one time-step (1800 sec) zonal wind (U) output field in .r. and .rh0. files, the difference between the two files is on the order of 10%. Could anyone explain why the two files give different U fields in a single timestep output? 


In fact, not only the U fields are different, the other fields saved in both files are also different. Why?


    Not having looked at these files in detail, there are at
  least 3 reasons I can think of for the behavior you
  are seeing, the one for sure being that the restart
  state (".r") and accumulated history file state (".rh0")
  are output at 2 different points in the timestep cycle.

Jerry Olson


Hi Jerry, 

Thanks for pointing out the timestep cycle possibility. The timestep cycle you mentioned, are the two files just outputing at different physics or dynamics update stages? Or do you mean like an intermediate timestep using numerical scheme such as Runge-Kutta method? Is it possible to point out the fortran module I could look into? I appreciate your help.

Gino Chen


 Correct, the ouputting can take place at different physics or dynamics stages.  Furthermore,
 in the case of .rh0, the outputting takes place at a unique stage for each different history
 field.  The output for each field is via calls to "outfld", hundreds of which are
 sprinkled throughout the code (in dynamics as well as physics).  For example, T, U, V, Q,
 and PS are output via calls in the routine "diag_phys_writeout" of the module "cam_diagnostics.F90".

Jerry Olson


Hi Jerry, thanks so much again pointing out to the right direction. I went through the codes and found out the U, V, etc, are diagnosed and outputted to the history files (.rh0.) by cam_run1 (in cam_comp.F90 using tphysbc in physpkg.F90) after a bunch of moist physical parameterization. Just right after the moist physical paramterizations are done, the diag_phys_writeout (in cam_diagnostic.F90) is called, and U, V, etc, are saved. I assume this is where they are dumped into .rh0. file. As oppose to the U, V, etc, in .r. file, which are dumped in cam_run4 (in cam_comp.F90) using write_restart_history (in cam_history.F90). So they are essentially different based on .rh0. is not yet updated in the dynamics and a bunch of parameterization whereas .r. is fully updated.

Please correct me if I'm wrong, and thanks a bunch!



Log in or register to post comments

Who's new

  • dans7messiah@...
  • m.kliphuis@...
  • ddc3061993@...
  • hui.ding@...
  • zhouc@...