<p><b>dwj07@fsu.edu</b> 2012-01-06 11:02:59 -0700 (Fri, 06 Jan 2012)</p><p><br>
        -- BRANCH COMMIT --<br>
<br>
        Merging trunk to branch<br>
</p><hr noshade><pre><font color="gray">
Property changes on: branches/ocean_projects/time_averaging
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/cam_mpas_nh:1260-1270
/branches/ocean_projects/imp_vert_mix_mrp:754-986
/branches/ocean_projects/split_explicit_mrp:1134-1138
/branches/ocean_projects/split_explicit_timestepping:1044-1097
/branches/ocean_projects/vert_adv_mrp:704-745
/branches/source_renaming:1082-1113
/branches/time_manager:924-962
/trunk/mpas:1271-1274
+ /branches/cam_mpas_nh:1260-1270
/branches/ocean_projects/imp_vert_mix_mrp:754-986
/branches/ocean_projects/split_explicit_mrp:1134-1138
/branches/ocean_projects/split_explicit_timestepping:1044-1097
/branches/ocean_projects/vert_adv_mrp:704-745
/branches/source_renaming:1082-1113
/branches/time_manager:924-962
/trunk/mpas:1271-1305
Modified: branches/ocean_projects/time_averaging/src/Makefile
===================================================================
--- branches/ocean_projects/time_averaging/src/Makefile        2012-01-06 15:28:01 UTC (rev 1305)
+++ branches/ocean_projects/time_averaging/src/Makefile        2012-01-06 18:02:59 UTC (rev 1306)
@@ -7,7 +7,7 @@
reg_includes:
        ( cd registry; make CC="$(SCC)" )
-        ( cd inc; ../registry/parse ../core_$(CORE)/Registry )
+        ( cd inc; $(CPP) ../core_$(CORE)/Registry | ../registry/parse > Registry.processed)
externals:
        ( cd external; make FC="$(FC)" SFC="$(SFC)" CC="$(CC)" SCC="$(SCC)" FFLAGS="$(FFLAGS)" CFLAGS="$(CFLAGS)" CPP="$(CPP)" NETCDF="$(NETCDF)" CORE="$(CORE)" )
@@ -33,7 +33,7 @@
        ( cd external; make clean )
        ( cd framework; make clean )
        ( cd operators; make clean )
-        ( cd inc; rm -f *.inc )
+        ( cd inc; rm -f *.inc Registry.processed )
        if [ -d core_$(CORE) ] ; then \
         ( cd core_$(CORE); make clean ) \
        fi;
Modified: branches/ocean_projects/time_averaging/src/core_hyd_atmos/Registry
===================================================================
--- branches/ocean_projects/time_averaging/src/core_hyd_atmos/Registry        2012-01-06 15:28:01 UTC (rev 1305)
+++ branches/ocean_projects/time_averaging/src/core_hyd_atmos/Registry        2012-01-06 18:02:59 UTC (rev 1306)
@@ -1,6 +1,6 @@
-#
-# namelist type namelist_record name default_value
-#
+%
+% namelist type namelist_record name default_value
+%
namelist integer sw_model config_test_case 5
namelist character sw_model config_time_integration SRK3
namelist real sw_model config_dt 172.8
@@ -31,9 +31,9 @@
namelist logical restart config_do_restart false
namelist character restart config_restart_interval none
-#
-# dim type name_in_file name_in_code
-#
+%
+% dim type name_in_file name_in_code
+%
dim nCells nCells
dim nEdges nEdges
dim maxEdges maxEdges
@@ -44,14 +44,14 @@
dim FIFTEEN 15
dim TWENTYONE 21
dim R3 3
-#dim nVertLevels nVertLevels
+%dim nVertLevels nVertLevels
dim nVertLevels namelist:config_nvertlevels
-#dim nTracers nTracers
+%dim nTracers nTracers
dim nVertLevelsP1 nVertLevels+1
-#
-# var persistence type name_in_file ( dims ) time_levs iro- name_in_code struct super-array array_class
-#
+%
+% var persistence type name_in_file ( dims ) time_levs iro- name_in_code struct super-array array_class
+%
var persistent text xtime ( Time ) 2 ro xtime state - -
var persistent real latCell ( nCells ) 0 iro latCell mesh - -
@@ -102,7 +102,7 @@
var persistent real fVertex ( nVertices ) 0 iro fVertex mesh - -
var persistent real h_s ( nCells ) 0 iro h_s mesh - -
-# description of the vertical grid structure
+% description of the vertical grid structure
var persistent real rdnu ( nVertLevels ) 0 iro rdnu mesh - -
var persistent real rdnw ( nVertLevels ) 0 iro rdnw mesh - -
var persistent real fnm ( nVertLevels ) 0 iro fnm mesh - -
@@ -111,16 +111,16 @@
var persistent real dnu ( nVertLevels ) 0 iro dnu mesh - -
var persistent real dnw ( nVertLevels ) 0 iro dnw mesh - -
-# Prognostic variables: read from input, saved in restart, and written to output
+% Prognostic variables: read from input, saved in restart, and written to output
var persistent real u ( nVertLevels nEdges Time ) 2 iro u state - -
var persistent real theta ( nVertLevels nCells Time ) 2 iro theta state - -
var persistent real surface_pressure ( nCells Time ) 2 iro surface_pressure state - -
var persistent real qv ( nVertLevels nCells Time ) 2 iro qv state scalars moist
var persistent real qc ( nVertLevels nCells Time ) 2 iro qc state scalars moist
var persistent real qr ( nVertLevels nCells Time ) 2 iro qr state scalars moist
-#var persistent real tracers ( nTracers nVertLevels nCells Time ) 2 iro state tracers - -
+%var persistent real tracers ( nTracers nVertLevels nCells Time ) 2 iro state tracers - -
-# state variables diagnosed from prognostic state
+% state variables diagnosed from prognostic state
var persistent real h ( nVertLevels nCells Time ) 2 ro h state - -
var persistent real ww ( nVertLevelsP1 nCells Time ) 2 ro ww state - -
var persistent real w ( nVertLevelsP1 nCells Time ) 2 ro w state - -
@@ -128,7 +128,7 @@
var persistent real geopotential ( nVertLevelsP1 nCells Time ) 2 ro geopotential state - -
var persistent real alpha ( nVertLevels nCells Time ) 2 iro alpha state - -
-# Diagnostic fields: only written to output
+% Diagnostic fields: only written to output
var persistent real v ( nVertLevels nEdges Time ) 2 o v state - -
var persistent real divergence ( nVertLevels nCells Time ) 2 o divergence state - -
var persistent real vorticity ( nVertLevels nVertices Time ) 2 o vorticity state - -
@@ -143,7 +143,7 @@
var persistent real uReconstructZonal ( nVertLevels nCells Time ) 1 o uReconstructZonal diag - -
var persistent real uReconstructMeridional ( nVertLevels nCells Time ) 1 o uReconstructMeridional diag - -
-# Tendency variables
+% Tendency variables
var persistent real tend_h ( nVertLevels nCells Time ) 1 - h tend - -
var persistent real tend_u ( nVertLevels nEdges Time ) 1 - u tend - -
var persistent real tend_vh ( nVertLevels nEdges Time ) 1 - vh tend - -
@@ -152,7 +152,7 @@
var persistent real tend_qc ( nVertLevels nCells Time ) 1 - qc tend scalars moist
var persistent real tend_qr ( nVertLevels nCells Time ) 1 - qr tend scalars moist
-# Other diagnostic variables: neither read nor written to any files
+% Other diagnostic variables: neither read nor written to any files
var persistent real vh ( nVertLevels nEdges Time ) 2 - vh state - -
var persistent real circulation ( nVertLevels nVertices Time ) 2 - circulation state - -
var persistent real gradPVt ( nVertLevels nEdges Time ) 2 - gradPVt state - -
@@ -174,12 +174,12 @@
var persistent real qv_old ( nVertLevels nCells ) 0 - qv_old mesh scalars_old moist_old
var persistent real qc_old ( nVertLevels nCells ) 0 - qc_old mesh scalars_old moist_old
var persistent real qr_old ( nVertLevels nCells ) 0 - qr_old mesh scalars_old moist_old
-#var persistent real tracers_old ( nTracers nVertLevels nCells ) 0 - tracers_old mesh - -
+%var persistent real tracers_old ( nTracers nVertLevels nCells ) 0 - tracers_old mesh - -
-# Space needed for advection
+% Space needed for advection
var persistent real deriv_two ( FIFTEEN TWO nEdges ) 0 o deriv_two mesh - -
var persistent integer advCells ( TWENTYONE nCells ) 0 - advCells mesh - -
-# Arrays required for reconstruction of velocity field
+% Arrays required for reconstruction of velocity field
var persistent real coeffs_reconstruct ( R3 maxEdges nCells ) 0 - coeffs_reconstruct mesh - -
Modified: branches/ocean_projects/time_averaging/src/core_init_nhyd_atmos/Registry
===================================================================
--- branches/ocean_projects/time_averaging/src/core_init_nhyd_atmos/Registry        2012-01-06 15:28:01 UTC (rev 1305)
+++ branches/ocean_projects/time_averaging/src/core_init_nhyd_atmos/Registry        2012-01-06 18:02:59 UTC (rev 1306)
@@ -1,6 +1,6 @@
-#
-# namelist type namelist_record name default_value
-#
+%
+% namelist type namelist_record name default_value
+%
namelist integer nhyd_model config_test_case 5
namelist integer nhyd_model config_calendar_type MPAS_GREGORIAN
namelist character nhyd_model config_start_time none
@@ -35,9 +35,9 @@
namelist real restart config_restart_time 172800.0
-#
-# dim type name_in_file name_in_code
-#
+%
+% dim type name_in_file name_in_code
+%
dim nCells nCells
dim nEdges nEdges
dim maxEdges maxEdges
@@ -56,12 +56,12 @@
dim nVertLevelsP1 nVertLevels+1
dim nMonths 12
-#
-# var type name_in_file ( dims ) iro- name_in_code super-array array_class
-#
+%
+% var type name_in_file ( dims ) iro- name_in_code super-array array_class
+%
var persistent text xtime ( Time ) 2 so xtime state - -
-# horizontal grid structure
+% horizontal grid structure
var persistent real latCell ( nCells ) 0 io latCell mesh - -
var persistent real lonCell ( nCells ) 0 io lonCell mesh - -
@@ -112,14 +112,14 @@
var persistent real meshDensity ( nCells ) 0 iro meshDensity mesh - -
-# some solver scalar coefficients
+% some solver scalar coefficients
-# coefficients for vertical extrapolation to the surface
+% coefficients for vertical extrapolation to the surface
var persistent real cf1 ( ) 0 io cf1 mesh - -
var persistent real cf2 ( ) 0 io cf2 mesh - -
var persistent real cf3 ( ) 0 io cf3 mesh - -
-# static terrestrial fields
+% static terrestrial fields
var persistent real ter ( nCells ) 0 io ter mesh - -
var persistent integer landmask ( nCells ) 0 io landmask mesh - -
var persistent integer ivgtyp ( nCells ) 0 io lu_index mesh - -
@@ -132,7 +132,7 @@
var persistent real shdmax ( nCells ) 0 io shdmax mesh - -
var persistent real albedo12m ( nMonths nCells ) 0 io albedo12m mesh - -
-# description of the vertical grid structure
+% description of the vertical grid structure
var persistent real hx ( nVertLevelsP1 nCells ) 0 io hx mesh - -
var persistent real zgrid ( nVertLevelsP1 nCells ) 0 io zgrid mesh - -
@@ -148,11 +148,11 @@
var persistent real zb ( nVertLevelsP1 TWO nEdges ) 0 io zb mesh - -
var persistent real zb3 ( nVertLevelsP1 TWO nEdges ) 0 io zb3 mesh - -
-# W-Rayleigh-damping coefficient
+% W-Rayleigh-damping coefficient
var persistent real dss ( nVertLevels nCells ) 0 io dss mesh - -
-# Horizontally interpolated from first-guess data
+% Horizontally interpolated from first-guess data
var persistent real u_fg ( nFGLevels nEdges Time ) 1 - u fg - -
var persistent real v_fg ( nFGLevels nEdges Time ) 1 - v fg - -
var persistent real t_fg ( nFGLevels nCells Time ) 1 - t fg - -
@@ -163,15 +163,15 @@
var persistent real psfc_fg ( nCells Time ) 1 - psfc fg - -
var persistent real pmsl_fg ( nCells Time ) 1 - pmsl fg - -
-# Horizontally interpolated from first-guess data
+% Horizontally interpolated from first-guess data
var persistent real dz_fg ( nFGSoilLevels nCells Time ) 1 io dz_fg fg - -
var persistent real dzs_fg ( nFGSoilLevels nCells Time ) 1 io dzs_fg fg - -
var persistent real zs_fg ( nFGSoilLevels nCells Time ) 1 io zs_fg fg - -
var persistent real st_fg ( nFGSoilLevels nCells Time ) 1 io st_fg fg - -
var persistent real sm_fg ( nFGSoilLevels nCells Time ) 1 io sm_fg fg - -
-# Horizontally interpolated from first-guess data
-# and should be read in by model
+% Horizontally interpolated from first-guess data
+% and should be read in by model
var persistent real dz ( nSoilLevels nCells Time ) 1 io dz fg - -
var persistent real dzs ( nSoilLevels nCells Time ) 1 io dzs fg - -
var persistent real zs ( nSoilLevels nCells Time ) 1 io zs fg - -
@@ -191,7 +191,7 @@
var persistent real sfc_albbck ( nCells Time ) 1 io sfc_albbck fg - -
var persistent real xland ( nCells Time ) 1 io xland fg - -
-# Prognostic variables: read from input, saved in restart, and written to output
+% Prognostic variables: read from input, saved in restart, and written to output
var persistent real u ( nVertLevels nEdges Time ) 2 o u state - -
var persistent real w ( nVertLevelsP1 nCells Time ) 2 o w state - -
var persistent real rho_zz ( nVertLevels nCells Time ) 2 o rho_zz state - -
@@ -200,14 +200,14 @@
var persistent real qc ( nVertLevels nCells Time ) 2 o qc state scalars moist
var persistent real qr ( nVertLevels nCells Time ) 2 o qr state scalars moist
-# state variables diagnosed from prognostic state
+% state variables diagnosed from prognostic state
var persistent real pressure_p ( nVertLevels nCells Time ) 1 - pressure_p diag - -
var persistent real u_init ( nVertLevels ) 0 io u_init mesh - -
var persistent real t_init ( nVertLevels nCells ) 0 io t_init mesh - -
var persistent real qv_init ( nVertLevels ) 0 io qv_init mesh - -
-# Diagnostic fields: only written to output
+% Diagnostic fields: only written to output
var persistent real rho ( nVertLevels nCells Time ) 1 o rho diag - -
var persistent real theta ( nVertLevels nCells Time ) 1 o theta diag - -
var persistent real v ( nVertLevels nEdges Time ) 1 o v diag - -
@@ -229,20 +229,20 @@
var persistent real surface_pressure ( nCells Time ) 1 o surface_pressure diag - -
-# coupled variables needed by the solver, but not output...
+% coupled variables needed by the solver, but not output...
var persistent real ru ( nVertLevels nEdges Time ) 1 - ru diag - -
var persistent real rw ( nVertLevelsP1 nCells Time ) 1 - rw diag - -
var persistent real rtheta_p ( nVertLevels nCells Time ) 1 - rtheta_p diag - -
var persistent real rho_p ( nVertLevels nCells Time ) 1 - rho_p diag - -
-# Space needed for advection
+% Space needed for advection
var persistent real deriv_two ( FIFTEEN TWO nEdges ) 0 io deriv_two mesh - -
var persistent integer advCells ( TWENTYONE nCells ) 0 io advCells mesh - -
-# Space needed for deformation calculation weights
+% Space needed for deformation calculation weights
var persistent real defc_a ( maxEdges nCells ) 0 io defc_a mesh - -
var persistent real defc_b ( maxEdges nCells ) 0 io defc_b mesh - -
-# Arrays required for reconstruction of velocity field
+% Arrays required for reconstruction of velocity field
var persistent real coeffs_reconstruct ( R3 maxEdges nCells ) 0 io coeffs_reconstruct mesh - -
Modified: branches/ocean_projects/time_averaging/src/core_nhyd_atmos/Registry
===================================================================
--- branches/ocean_projects/time_averaging/src/core_nhyd_atmos/Registry        2012-01-06 15:28:01 UTC (rev 1305)
+++ branches/ocean_projects/time_averaging/src/core_nhyd_atmos/Registry        2012-01-06 18:02:59 UTC (rev 1306)
@@ -1,6 +1,6 @@
-#
-# namelist type namelist_record name default_value
-#
+%
+% namelist type namelist_record name default_value
+%
namelist integer nhyd_model config_test_case 5
namelist character nhyd_model config_time_integration SRK3
namelist real nhyd_model config_dt 172.8
@@ -50,9 +50,9 @@
namelist logical restart config_do_DAcycling false
namelist character restart config_restart_interval none
-#
-# dim type name_in_file name_in_code
-#
+%
+% dim type name_in_file name_in_code
+%
dim nCells nCells
dim nEdges nEdges
dim maxEdges maxEdges
@@ -67,12 +67,12 @@
dim nVertLevels namelist:config_nvertlevels
dim nVertLevelsP1 nVertLevels+1
-#
-# var type name_in_file ( dims ) iro- name_in_code super-array array_class
-#
+%
+% var type name_in_file ( dims ) iro- name_in_code super-array array_class
+%
var persistent text xtime ( Time ) 2 iro xtime state - -
-# horizontal grid structure
+% horizontal grid structure
var persistent real latCell ( nCells ) 0 iro latCell mesh - -
var persistent real lonCell ( nCells ) 0 iro lonCell mesh - -
@@ -125,9 +125,9 @@
var persistent real meshScalingDel2 ( nEdges ) 0 ro meshScalingDel2 mesh - -
var persistent real meshScalingDel4 ( nEdges ) 0 ro meshScalingDel4 mesh - -
-# some solver scalar coefficients
+% some solver scalar coefficients
-# coefficients for vertical extrapolation to the surface
+% coefficients for vertical extrapolation to the surface
var persistent real cf1 ( ) 0 iro cf1 mesh - -
var persistent real cf2 ( ) 0 iro cf2 mesh - -
var persistent real cf3 ( ) 0 iro cf3 mesh - -
@@ -135,7 +135,7 @@
var persistent real cpr ( THREE nEdges ) 0 ro cpr mesh - -
var persistent real cpl ( THREE nEdges ) 0 ro cpl mesh - -
-# description of the vertical grid structure
+% description of the vertical grid structure
var persistent real hx ( nVertLevelsP1 nCells ) 0 iro hx mesh - -
var persistent real zgrid ( nVertLevelsP1 nCells ) 0 iro zgrid mesh - -
@@ -151,8 +151,8 @@
var persistent real zb ( nVertLevelsP1 TWO nEdges ) 0 iro zb mesh - -
var persistent real zb3 ( nVertLevelsP1 TWO nEdges ) 0 iro zb3 mesh - -
-# coefficients for the vertical tridiagonal solve
-# Note: these could be local but...
+% coefficients for the vertical tridiagonal solve
+% Note: these could be local but...
var persistent real cofrz ( nVertLevels Time ) 1 - cofrz diag - -
var persistent real cofwr ( nVertLevels nCells Time ) 1 - cofwr diag - -
@@ -163,11 +163,11 @@
var persistent real alpha_tri ( nVertLevels nCells Time ) 1 - alpha_tri diag - -
var persistent real gamma_tri ( nVertLevels nCells Time ) 1 - gamma_tri diag - -
-# W-Rayleigh-damping coefficient
+% W-Rayleigh-damping coefficient
var persistent real dss ( nVertLevels nCells ) 0 iro dss mesh - -
-# Prognostic variables: read from input, saved in restart, and written to output
+% Prognostic variables: read from input, saved in restart, and written to output
var persistent real u ( nVertLevels nEdges Time ) 2 iro u state - -
var persistent real w ( nVertLevelsP1 nCells Time ) 2 iro w state - -
var persistent real rho_zz ( nVertLevels nCells Time ) 2 r rho_zz state - -
@@ -181,7 +181,7 @@
var persistent real qnr ( nVertLevels nCells Time ) 2 iro qnr state scalars number
var persistent real qni ( nVertLevels nCells Time ) 2 iro qni state scalars number
-# Tendency variables
+% Tendency variables
var persistent real tend_u ( nVertLevels nEdges Time ) 1 o u tend - -
var persistent real tend_w ( nVertLevelsP1 nCells Time ) 1 o w tend - -
var persistent real tend_rho ( nVertLevels nCells Time ) 1 o rho_zz tend - -
@@ -200,17 +200,17 @@
var persistent real euler_tend_w ( nVertLevelsP1 nCells Time ) 1 - w_euler tend - -
var persistent real euler_tend_theta ( nVertLevels nCells Time ) 1 - theta_euler tend - -
-# state variables diagnosed from prognostic state
+% state variables diagnosed from prognostic state
var persistent real pressure_p ( nVertLevels nCells Time ) 1 ro pressure_p diag - -
var persistent real u_init ( nVertLevels ) 0 iro u_init mesh - -
var persistent real t_init ( nVertLevels nCells ) 0 iro t_init mesh - -
var persistent real qv_init ( nVertLevels ) 0 iro qv_init mesh - -
-# Diagnostic fields: only written to output
-# NOTE: added the "r" option to rho,theta,uReconstructZonal,and uReconstructMeridional for use of the
-# non-hydrostatic dynamical core in a data assimilation framework. NOTE that the "r" option is not
-# needed for those 4 variables to get bit for bit restart capabilities, otherwise.
+% Diagnostic fields: only written to output
+% NOTE: added the "r" option to rho,theta,uReconstructZonal,and uReconstructMeridional for use of the
+% non-hydrostatic dynamical core in a data assimilation framework. NOTE that the "r" option is not
+% needed for those 4 variables to get bit for bit restart capabilities, otherwise.
var persistent real rho ( nVertLevels nCells Time ) 1 iro rho diag - -
var persistent real theta ( nVertLevels nCells Time ) 1 iro theta diag - -
var persistent real rh ( nVertLevels nCells Time ) 1 iro rh diag - -
@@ -228,7 +228,7 @@
var persistent real uReconstructZonal ( nVertLevels nCells Time ) 1 ro uReconstructZonal diag - -
var persistent real uReconstructMeridional ( nVertLevels nCells Time ) 1 ro uReconstructMeridional diag - -
-# Other diagnostic variables: neither read nor written to any files
+% Other diagnostic variables: neither read nor written to any files
var persistent real rv ( nVertLevels nEdges Time ) 1 r rv diag - -
var persistent real circulation ( nVertLevels nVertices Time ) 1 r circulation diag - -
var persistent real gradPVt ( nVertLevels nEdges Time ) 1 - gradPVt diag - -
@@ -248,7 +248,7 @@
var persistent real cqu ( nVertLevels nEdges Time ) 1 - cqu diag - -
var persistent real cqw ( nVertLevels nCells Time ) 1 - cqw diag - -
-# coupled variables needed by the solver, but not output...
+% coupled variables needed by the solver, but not output...
var persistent real ru ( nVertLevels nEdges Time ) 1 r ru diag - -
var persistent real ru_p ( nVertLevels nEdges Time ) 1 r ru_p diag - -
@@ -268,7 +268,7 @@
var persistent real rho_pp ( nVertLevels nCells Time ) 1 - rho_pp diag - -
var persistent real rho_p_save ( nVertLevels nCells Time ) 1 - rho_p_save diag - -
-# Space needed for advection
+% Space needed for advection
var persistent real deriv_two ( FIFTEEN TWO nEdges ) 0 ir deriv_two mesh - -
var persistent integer advCells ( TWENTYONE nCells ) 0 ir advCells mesh - -
var persistent real adv_coefs ( FIFTEEN nEdges ) 0 - adv_coefs mesh - -
@@ -277,43 +277,43 @@
var persistent integer nAdvCellsForEdge ( nEdges ) 0 - nAdvCellsForEdge mesh - -
-# Space needed for deformation calculation weights
+% Space needed for deformation calculation weights
var persistent real defc_a ( maxEdges nCells ) 0 iro defc_a mesh - -
var persistent real defc_b ( maxEdges nCells ) 0 iro defc_b mesh - -
var persistent real kdiff ( nVertLevels nCells Time ) 2 - kdiff diag - -
-# Arrays required for reconstruction of velocity field
+% Arrays required for reconstruction of velocity field
var persistent real coeffs_reconstruct ( R3 maxEdges nCells ) 0 iro coeffs_reconstruct mesh - -
-# ADDED DECLARATIONS MADE BY LDF:
+% ADDED DECLARATIONS MADE BY LDF:
var persistent real surface_pressure ( nCells Time ) 1 iro surface_pressure diag - -
var persistent real surface_temperature ( nCells Time ) 1 o surface_temperature diag - -
-#==================================================================================================
-# DECLARATIONS OF ALL PHYSICS VARIABLES (will need to be moved to a Physics Registry shared by the
-# hydrostatic and non-hydrostatic dynamical cores):
-#==================================================================================================
+%==================================================================================================
+% DECLARATIONS OF ALL PHYSICS VARIABLES (will need to be moved to a Physics Registry shared by the
+% hydrostatic and non-hydrostatic dynamical cores):
+%==================================================================================================
-#... NAMELIST VARIABLES ADDED FOR INITIALIZATION OF SURFACE CHARACTERISTICS:
+%... NAMELIST VARIABLES ADDED FOR INITIALIZATION OF SURFACE CHARACTERISTICS:
namelist character physics input_landuse_data USGS
namelist character physics input_soil_data STAS
namelist integer physics input_soil_temperature_lag 140
namelist integer physics num_soil_layers 4
namelist integer physics months 12
-#... NAMELIST VARIABLE NEEDED FOR THE TIME MANAGER:
+%... NAMELIST VARIABLE NEEDED FOR THE TIME MANAGER:
dim nMonths namelist:months
-#... DIMENSION NEEDED FOR NUMBER OF SOIL LAYERS:
+%... DIMENSION NEEDED FOR NUMBER OF SOIL LAYERS:
dim nSoilLevels namelist:num_soil_layers
-#... DIMENSION NEEDED FOR UPDATING THE DEEP SOIL TEMPERATURE:
+%... DIMENSION NEEDED FOR UPDATING THE DEEP SOIL TEMPERATURE:
dim nLags namelist:input_soil_temperature_lag
-#... DIMENSION NEEDED FOR OZONE AND AEROSOLS CONCENTRATIONS IN THE CAM LONGWAVE AND SHORTWAVE
-#... RADIATION PARAMETERIZATIONS.
-# noznlev : number of CAM radiation input ozone levels.
-# naerlev : number of CAM radiation input aerosol levels.
+%... DIMENSION NEEDED FOR OZONE AND AEROSOLS CONCENTRATIONS IN THE CAM LONGWAVE AND SHORTWAVE
+%... RADIATION PARAMETERIZATIONS.
+% noznlev : number of CAM radiation input ozone levels.
+% naerlev : number of CAM radiation input aerosol levels.
namelist integer physics noznlev 59
namelist integer physics naerlev 29
@@ -322,11 +322,11 @@
dim nAerLevels namelist:naerlev
dim cam_dim1 namelist:cam_dim1
-#... DIMENSION NEEDED FOR LONGWAVE AND SHORTWAVE RADIATION FLUXES TO INCLUDE AN ADDITIONAL LAYER
-#... BETWEEN THE TOP OF THE MODEL AND THE TOP OF THE ATMOSPHERE
+%... DIMENSION NEEDED FOR LONGWAVE AND SHORTWAVE RADIATION FLUXES TO INCLUDE AN ADDITIONAL LAYER
+%... BETWEEN THE TOP OF THE MODEL AND THE TOP OF THE ATMOSPHERE
dim nVertLevelsP2 nVertLevels+2
-#... NAMELIST VARIABLES ADDED FOR PHYSICS CONFIGURATION:
+%... NAMELIST VARIABLES ADDED FOR PHYSICS CONFIGURATION:
namelist logical physics config_frac_seaice false
namelist logical physics config_sfc_albedo false
namelist logical physics config_sst_update false
@@ -363,16 +363,16 @@
var persistent real east ( R3 nCells ) 0 r east mesh - -
var persistent real north ( R3 nCells ) 0 r north mesh - -
-#--------------------------------------------------------------------------------------------------
-#... ARRAYS AND VARIABLES FOR UPDATING THE DEEP SOIL TEMPERATURE:
-#--------------------------------------------------------------------------------------------------
+%--------------------------------------------------------------------------------------------------
+%... ARRAYS AND VARIABLES FOR UPDATING THE DEEP SOIL TEMPERATURE:
+%--------------------------------------------------------------------------------------------------
-# nsteps_accum: number of accumulated time-step in a day.
-# ndays_accum : number of accumulated days in a year.
-# tlag : daily mean surface temperature of prior days [K]
-# tday_accum : accumulated daily surface temperature for current day [K]
-# tyear_mean : annual mean surface temperature [K]
-# tyear_accum : accumulated yearly surface temperature for current year [K]
+% nsteps_accum: number of accumulated time-step in a day.
+% ndays_accum : number of accumulated days in a year.
+% tlag : daily mean surface temperature of prior days [K]
+% tday_accum : accumulated daily surface temperature for current day [K]
+% tyear_mean : annual mean surface temperature [K]
+% tyear_accum : accumulated yearly surface temperature for current year [K]
var persistent integer nsteps_accum ( nCells Time ) 1 r nsteps_accum diag_physics - -
var persistent integer ndays_accum ( nCells Time ) 1 r ndays_accum diag_physics - -
@@ -382,17 +382,17 @@
var persistent real tyear_mean ( nCells Time ) 1 r tyear_mean diag_physics - -
var persistent real tyear_accum ( nCells Time ) 1 r tyear_accum diag_physics - -
-#--------------------------------------------------------------------------------------------------
-#... PARAMETERIZATION OF CLOUD MICROPHYSICS:
-#--------------------------------------------------------------------------------------------------
+%--------------------------------------------------------------------------------------------------
+%... PARAMETERIZATION OF CLOUD MICROPHYSICS:
+%--------------------------------------------------------------------------------------------------
-# rainnc : accumulated total time-step grid-scale precipitation (mm)
-# rainncv : time-step total grid-scale precipitation (mm)
-# snownc : accumulated grid-scale precipitation of snow (mm)
-# snowncv : time-step grid-scale precipitation of snow (mm)
-# graupelnc : accumulated grid-scale precipitation of graupel (mm)
-# graupelncv: time-step grid-scale precipitation of graupel (mm)
-# sr : time-step ratio of frozen versus total grid-scale precipitation (-)
+% rainnc : accumulated total time-step grid-scale precipitation (mm)
+% rainncv : time-step total grid-scale precipitation (mm)
+% snownc : accumulated grid-scale precipitation of snow (mm)
+% snowncv : time-step grid-scale precipitation of snow (mm)
+% graupelnc : accumulated grid-scale precipitation of graupel (mm)
+% graupelncv: time-step grid-scale precipitation of graupel (mm)
+% sr : time-step ratio of frozen versus total grid-scale precipitation (-)
var persistent real sr ( nCells Time ) 1 ro sr diag_physics - -
var persistent real rainncv ( nCells Time ) 1 ro rainncv diag_physics - -
@@ -406,21 +406,21 @@
var persistent real qsat ( nVertLevels nCells Time ) 1 o qsat diag_physics - -
var persistent real relhum ( nVertLevels nCells Time ) 1 o relhum diag_physics - -
-#--------------------------------------------------------------------------------------------------
-#... PARAMETERIZATION OF CONVECTION:
-#--------------------------------------------------------------------------------------------------
+%--------------------------------------------------------------------------------------------------
+%... PARAMETERIZATION OF CONVECTION:
+%--------------------------------------------------------------------------------------------------
-# cubot : lowest level of convection (-)
-# cutop : highest level of convection (-)
-# cuprec : convective precipitation rate (mm/s)
-# rainc : accumulated time-step convective precipitation (mm)
-# raincv : time-step convective precipitation (mm)
-# rthcuten : tendency of potential temperature due to cumulus convection (K s-1)
-# rqvcuten : tendency of water vapor mixing ratio due to cumulus convection (kg/kg s-1)
-# rqccuten : tendency of cloud water mixing ratio due to cumulus convection (kg/kg s-1)
-# rqrcuten : tendency of rain mixing ratio due to cumulus convection (kg/kg s-1)
-# rqicuten : tendency of cloud ice mixing ratio due to cumulus convection (kg/kg s-1)
-# rqscuten : tendency of snow mixing ratio due to cumulus convection (kg/kg s-1)
+% cubot : lowest level of convection (-)
+% cutop : highest level of convection (-)
+% cuprec : convective precipitation rate (mm/s)
+% rainc : accumulated time-step convective precipitation (mm)
+% raincv : time-step convective precipitation (mm)
+% rthcuten : tendency of potential temperature due to cumulus convection (K s-1)
+% rqvcuten : tendency of water vapor mixing ratio due to cumulus convection (kg/kg s-1)
+% rqccuten : tendency of cloud water mixing ratio due to cumulus convection (kg/kg s-1)
+% rqrcuten : tendency of rain mixing ratio due to cumulus convection (kg/kg s-1)
+% rqicuten : tendency of cloud ice mixing ratio due to cumulus convection (kg/kg s-1)
+% rqscuten : tendency of snow mixing ratio due to cumulus convection (kg/kg s-1)
var persistent real cubot ( nCells Time ) 1 ro cubot diag_physics - -
var persistent real cutop ( nCells Time ) 1 ro cutop diag_physics - -
@@ -435,32 +435,32 @@
var persistent real rqicuten ( nVertLevels nCells Time ) 1 ro rqicuten tend_physics - -
var persistent real rqscuten ( nVertLevels nCells Time ) 1 ro rqscuten tend_physics - -
-#... KAIN_FRITSCH ONLY:
-# nca : relaxation time for KF parameterization of convection (s)
-# wavg0 : average vertical velocity (KF scheme only) (m s-1)
+%... KAIN_FRITSCH ONLY:
+% nca : relaxation time for KF parameterization of convection (s)
+% wavg0 : average vertical velocity (KF scheme only) (m s-1)
var persistent real nca ( nCells Time ) 1 ro nca diag_physics - -
var persistent real w0avg ( nVertLevels nCells Time ) 1 ro w0avg diag_physics - -
-#--------------------------------------------------------------------------------------------------
-#... PARAMETERIZATION OF PLANETARY BOUNDARY LAYER PROCESSES:
-#--------------------------------------------------------------------------------------------------
+%--------------------------------------------------------------------------------------------------
+%... PARAMETERIZATION OF PLANETARY BOUNDARY LAYER PROCESSES:
+%--------------------------------------------------------------------------------------------------
-# kpbl : index of PBL top (-)
-# hpbl : PBL height (m)
-# exch_h : exchange coefficient (-)
-# rublten : tendency of zonal wind due to pbl processes (m s-1)
-# rvblten : tendency of meridional wind due to pbl processes (m s-1)
-# rthblten : tendency of potential temperature due to pbl processes (K s-1)
-# rqvblten : tendency of water vapor mixing ratio due to pbl processes (kg/kg s-1)
-# rqcblten : tendency of cloud water mixing ratio due to pbl processes (kg/kg s-1)
-# rqiblten : tendency of cloud ice mixing ratio due to pbl processes (kg/kg s-1)
+% kpbl : index of PBL top (-)
+% hpbl : PBL height (m)
+% exch_h : exchange coefficient (-)
+% rublten : tendency of zonal wind due to pbl processes (m s-1)
+% rvblten : tendency of meridional wind due to pbl processes (m s-1)
+% rthblten : tendency of potential temperature due to pbl processes (K s-1)
+% rqvblten : tendency of water vapor mixing ratio due to pbl processes (kg/kg s-1)
+% rqcblten : tendency of cloud water mixing ratio due to pbl processes (kg/kg s-1)
+% rqiblten : tendency of cloud ice mixing ratio due to pbl processes (kg/kg s-1)
var persistent integer kpbl ( nCells Time ) 1 ro kpbl diag_physics - -
var persistent real hpbl ( nCells Time ) 1 ro hpbl diag_physics - -
var persistent real exch_h ( nVertLevels nCells Time ) 1 o exch_h diag_physics - -
-# TENDENCIES:
+% TENDENCIES:
var persistent real rublten ( nVertLevels nCells Time ) 1 ro rublten tend_physics - -
var persistent real rvblten ( nVertLevels nCells Time ) 1 ro rvblten tend_physics - -
var persistent real rthblten ( nVertLevels nCells Time ) 1 ro rthblten tend_physics - -
@@ -468,44 +468,44 @@
var persistent real rqcblten ( nVertLevels nCells Time ) 1 ro rqcblten tend_physics - -
var persistent real rqiblten ( nVertLevels nCells Time ) 1 ro rqiblten tend_physics - -
-#--------------------------------------------------------------------------------------------------
-#... PARAMETERIZATION OF SURFACE LAYER PROCESSES:
-#--------------------------------------------------------------------------------------------------
+%--------------------------------------------------------------------------------------------------
+%... PARAMETERIZATION OF SURFACE LAYER PROCESSES:
+%--------------------------------------------------------------------------------------------------
-# br :bulk richardson number [-]
-# cd :drag coefficient at 10m [-]
-# cda :drag coefficient at lowest model level [-]
-# chs :???
-# chs2 :???
-# cqs2 :???
-# ck :enthalpy exchange coefficient at 10 m [-]
-# cka :enthalpy exchange coefficient at lowest model level [-]
-# cpm :???
-# flhc :exchange coefficient for heat [-]
-# flqc :exchange coefficient for moisture [-]
-# gz1oz0 :log of z1 over z0 [-]
-# hfx :upward heat flux at the surface [W/m2/s]
-# lh :latent heat flux at the surface [W/m2]
-# mavail :surface moisture availability [-]
-# mol :T* in similarity theory [K]
-# psih :similarity theory for heat [-]
-# psim :similarity theory for momentum [-]
-# qfx :upward moisture flux at the surface [kg/m2/s]
-# qgh :???
-# qsfc :specific humidity at lower boundary [kg/kg]
-# regime :flag indicating PBL regime (stable_p,unstable_p,etc...) [-]
-# rmol :1 / Monin Ob length [-]
-# ust :u* in similarity theory [m/s]
-# ustm :u* in similarity theory without vconv [m/s]
-# zol :z/L height over Monin-Obukhov length [-]
-# znt :time-varying roughness length [m]
-# wspd :wind speed [m/s]
-# DIAGNOSTICS:
-# q2 :specific humidity at 2m [kg/kg]
-# u10 :u at 10 m [m/s]
-# v10 :v at 10 m [m/s]
-# t2m :temperature at 2m [K]
-# th2m :potential temperature at 2m [K]
+% br :bulk richardson number [-]
+% cd :drag coefficient at 10m [-]
+% cda :drag coefficient at lowest model level [-]
+% chs :???
+% chs2 :???
+% cqs2 :???
+% ck :enthalpy exchange coefficient at 10 m [-]
+% cka :enthalpy exchange coefficient at lowest model level [-]
+% cpm :???
+% flhc :exchange coefficient for heat [-]
+% flqc :exchange coefficient for moisture [-]
+% gz1oz0 :log of z1 over z0 [-]
+% hfx :upward heat flux at the surface [W/m2/s]
+% lh :latent heat flux at the surface [W/m2]
+% mavail :surface moisture availability [-]
+% mol :T* in similarity theory [K]
+% psih :similarity theory for heat [-]
+% psim :similarity theory for momentum [-]
+% qfx :upward moisture flux at the surface [kg/m2/s]
+% qgh :???
+% qsfc :specific humidity at lower boundary [kg/kg]
+% regime :flag indicating PBL regime (stable_p,unstable_p,etc...) [-]
+% rmol :1 / Monin Ob length [-]
+% ust :u* in similarity theory [m/s]
+% ustm :u* in similarity theory without vconv [m/s]
+% zol :z/L height over Monin-Obukhov length [-]
+% znt :time-varying roughness length [m]
+% wspd :wind speed [m/s]
+% DIAGNOSTICS:
+% q2 :specific humidity at 2m [kg/kg]
+% u10 :u at 10 m [m/s]
+% v10 :v at 10 m [m/s]
+% t2m :temperature at 2m [K]
+% th2m :potential temperature at 2m [K]
var persistent real hfx ( nCells Time ) 1 ro hfx diag_physics - -
var persistent real mavail ( nCells Time ) 1 ro mavail diag_physics - -
@@ -536,34 +536,34 @@
var persistent real regime ( nCells Time ) 1 ro regime diag_physics - -
var persistent real rmol ( nCells Time ) 1 ro rmol diag_physics - -
var persistent real wspd ( nCells Time ) 1 ro wspd diag_physics - -
-# DIAGNOSTICS:
+% DIAGNOSTICS:
var persistent real u10 ( nCells Time ) 1 ro u10 diag_physics - -
var persistent real v10 ( nCells Time ) 1 ro v10 diag_physics - -
var persistent real q2 ( nCells Time ) 1 ro q2 diag_physics - -
var persistent real t2m ( nCells Time ) 1 ro t2m diag_physics - -
var persistent real th2m ( nCells Time ) 1 ro th2m diag_physics - -
-#--------------------------------------------------------------------------------------------------
-#... PARAMETERIZATION OF SHORTWAVE RADIATION:
-#--------------------------------------------------------------------------------------------------
+%--------------------------------------------------------------------------------------------------
+%... PARAMETERIZATION OF SHORTWAVE RADIATION:
+%--------------------------------------------------------------------------------------------------
-# coszr :cosine of the solar zenith angle [-]
+% coszr :cosine of the solar zenith angle [-]
-# gsw :net shortwave flux at surface [W m-2]
-# swcf :shortwave cloud forcing at top-of-atmosphere [W m-2]
-# swdnb :all-sky downwelling shortwave flux at bottom-of-atmosphere [J m-2]
-# swdnbc :clear-sky downwelling shortwave flux at bottom-of-atmosphere [J m-2]
-# swdnt :all-sky downwelling shortwave flux at top-of-atmosphere [J m-2]
-# swdntc :clear-sky downwelling shortwave flux at top-of-atmosphere [J m-2]
-# swupb :all-sky upwelling shortwave flux at bottom-of-atmosphere [J m-2]
-# swupbc :clear-sky upwelling shortwave flux at bottom-of-atmosphere [J m-2]
-# swupt :all-sky upwelling shortwave flux at top-of-atmosphere [J m-2]
-# swuptc :clear-sky upwelling shortwave flux at top-of-atmosphere [J m-2]
-# swdnflx :
-# swdnflxc :
-# swupflx :
-# swupflxc :
-# rthratensw:uncoupled theta tendency due to shortwave radiation [K s-1]
+% gsw :net shortwave flux at surface [W m-2]
+% swcf :shortwave cloud forcing at top-of-atmosphere [W m-2]
+% swdnb :all-sky downwelling shortwave flux at bottom-of-atmosphere [J m-2]
+% swdnbc :clear-sky downwelling shortwave flux at bottom-of-atmosphere [J m-2]
+% swdnt :all-sky downwelling shortwave flux at top-of-atmosphere [J m-2]
+% swdntc :clear-sky downwelling shortwave flux at top-of-atmosphere [J m-2]
+% swupb :all-sky upwelling shortwave flux at bottom-of-atmosphere [J m-2]
+% swupbc :clear-sky upwelling shortwave flux at bottom-of-atmosphere [J m-2]
+% swupt :all-sky upwelling shortwave flux at top-of-atmosphere [J m-2]
+% swuptc :clear-sky upwelling shortwave flux at top-of-atmosphere [J m-2]
+% swdnflx :
+% swdnflxc :
+% swupflx :
+% swupflxc :
+% rthratensw:uncoupled theta tendency due to shortwave radiation [K s-1]
var persistent real coszr ( nCells Time ) 1 o coszr diag_physics - -
var persistent real swcf ( nCells Time ) 1 o swcf diag_physics - -
@@ -579,37 +579,37 @@
var persistent real rthratensw ( nVertLevels nCells Time ) 1 ro rthratensw tend_physics - -
-#... RRTMG SW ONLY:
+%... RRTMG SW ONLY:
var persistent real swdnflx ( nVertLevelsP2 nCells Time ) 1 o swdnflx diag_physics - -
var persistent real swdnflxc ( nVertLevelsP2 nCells Time ) 1 o swdnflxc diag_physics - -
var persistent real swupflx ( nVertLevelsP2 nCells Time ) 1 o swupflx diag_physics - -
var persistent real swupflxc ( nVertLevelsP2 nCells Time ) 1 o swupflxc diag_physics - -
-#--------------------------------------------------------------------------------------------------
-#... PARAMETERIZATION OF LONGWAVE RADIATION:
-#--------------------------------------------------------------------------------------------------
+%--------------------------------------------------------------------------------------------------
+%... PARAMETERIZATION OF LONGWAVE RADIATION:
+%--------------------------------------------------------------------------------------------------
-# note: glw is the same diagnostic as lwdnb and is used in the land-surface scheme for the calcula-
-# tion of the surface budget. glw is always an output argument to the subroutine rrtmg_lwrad.
-# in contrast,lwdnb is an optional ouput argument to the subroutine rrtmg_lwrad depending on
-# the presence of lwupt (or not).
+% note: glw is the same diagnostic as lwdnb and is used in the land-surface scheme for the calcula-
+% tion of the surface budget. glw is always an output argument to the subroutine rrtmg_lwrad.
+% in contrast,lwdnb is an optional ouput argument to the subroutine rrtmg_lwrad depending on
+% the presence of lwupt (or not).
-# glw :all-sky downwelling longwave flux at bottom-of-atmosphere [W m-2]
-# lwcf :longwave cloud forcing at top-of-atmosphere [W m-2]
-# lwdnb :all-sky downwelling longwave flux at bottom-of-atmosphere [W m-2]
-# lwdnbc :clear-sky downwelling longwave flux at bottom-of-atmosphere [W m-2]
-# lwdnt :all-sky downwelling longwave flux at top-of-atmosphere [W m-2]
-# lwdntc :clear-sky downwelling longwave flux at top-of-atmosphere [W m-2]
-# lwupb :all-sky upwelling longwave flux at bottom-of-atmosphere [W m-2]
-# lwupbc :clear-sky upwelling longwave flux at bottom-of-atmosphere [W m-2]
-# lwupt :all-sky upwelling longwave flux at top-of-atmosphere [W m-2]
-# lwuptc :clear-sky upwelling longwave flux at top-of-atmosphere [W m-2]
-# lwdnflx :
-# lwdnflxc :
-# lwupflx :
-# lwupflxc :
-# olrtoa :outgoing longwave radiation at top-of-the-atmosphere [W m-2]
-# rthratenlw:uncoupled theta tendency due to longwave radiation [K s-1]
+% glw :all-sky downwelling longwave flux at bottom-of-atmosphere [W m-2]
+% lwcf :longwave cloud forcing at top-of-atmosphere [W m-2]
+% lwdnb :all-sky downwelling longwave flux at bottom-of-atmosphere [W m-2]
+% lwdnbc :clear-sky downwelling longwave flux at bottom-of-atmosphere [W m-2]
+% lwdnt :all-sky downwelling longwave flux at top-of-atmosphere [W m-2]
+% lwdntc :clear-sky downwelling longwave flux at top-of-atmosphere [W m-2]
+% lwupb :all-sky upwelling longwave flux at bottom-of-atmosphere [W m-2]
+% lwupbc :clear-sky upwelling longwave flux at bottom-of-atmosphere [W m-2]
+% lwupt :all-sky upwelling longwave flux at top-of-atmosphere [W m-2]
+% lwuptc :clear-sky upwelling longwave flux at top-of-atmosphere [W m-2]
+% lwdnflx :
+% lwdnflxc :
+% lwupflx :
+% lwupflxc :
+% olrtoa :outgoing longwave radiation at top-of-the-atmosphere [W m-2]
+% rthratenlw:uncoupled theta tendency due to longwave radiation [K s-1]
var persistent real lwcf ( nCells Time ) 1 o lwcf diag_physics - -
var persistent real lwdnb ( nCells Time ) 1 o lwdnb diag_physics - -
@@ -625,30 +625,30 @@
var persistent real rthratenlw ( nVertLevels nCells Time ) 1 ro rthratenlw tend_physics - -
-#... RRTMG LW ONLY:
-#var persistent real lwdnflx ( nVertLevelsP2 nCells Time ) 1 o lwdnflx diag_physics - -
-#var persistent real lwdnflxc ( nVertLevelsP2 nCells Time ) 1 o lwdnflxc diag_physics - -
-#var persistent real lwupflx ( nVertLevelsP2 nCells Time ) 1 o lwupflx diag_physics - -
-#var persistent real lwupflxc ( nVertLevelsP2 nCells Time ) 1 o lwupflxc diag_physics - -
+%... RRTMG LW ONLY:
+%var persistent real lwdnflx ( nVertLevelsP2 nCells Time ) 1 o lwdnflx diag_physics - -
+%var persistent real lwdnflxc ( nVertLevelsP2 nCells Time ) 1 o lwdnflxc diag_physics - -
+%var persistent real lwupflx ( nVertLevelsP2 nCells Time ) 1 o lwupflx diag_physics - -
+%var persistent real lwupflxc ( nVertLevelsP2 nCells Time ) 1 o lwupflxc diag_physics - -
-#--------------------------------------------------------------------------------------------------
-#... ADDITIONAL "RADIATION" ARRAYS NEEDED ONLY IN THE "CAM" LW AND SW RADIATION CODES:
-#--------------------------------------------------------------------------------------------------
+%--------------------------------------------------------------------------------------------------
+%... ADDITIONAL "RADIATION" ARRAYS NEEDED ONLY IN THE "CAM" LW AND SW RADIATION CODES:
+%--------------------------------------------------------------------------------------------------
-#INFRARED ABSORPTION:
+%INFRARED ABSORPTION:
var persistent real absnxt ( nVertLevels cam_dim1 nCells Time ) 1 - absnxt diag_physics - -
var persistent real abstot ( nVertLevelsP1 nVertLevelsP1 nCells Time ) 1 - abstot diag_physics - -
var persistent real emstot ( nVertLevelsP1 nCells Time ) 1 - emstot diag_physics - -
-# OZONE:
+% OZONE:
var persistent real pin ( nOznLevels nCells ) 0 - pin mesh - -
var persistent real ozmixm ( nMonths nOznLevels nCells ) 0 - ozmixm mesh - -
-# AEROSOLS:
+% AEROSOLS:
var persistent real m_hybi ( nAerLevels nCells ) 0 - m_hybi mesh - -
var persistent real m_ps ( nCells Time ) 2 - m_ps state - -
-#var persistent real dummy ( nAerLevels nCells Time ) 2 - dummy state aerosols aer_cam
+%var persistent real dummy ( nAerLevels nCells Time ) 2 - dummy state aerosols aer_cam
var persistent real sul ( nAerLevels nCells Time ) 2 - sul state aerosols aer_cam
var persistent real sslt ( nAerLevels nCells Time ) 2 - sslt state aerosols aer_cam
var persistent real dust1 ( nAerLevels nCells Time ) 2 - dust1 state aerosols aer_cam
@@ -662,43 +662,43 @@
var persistent real bg ( nAerLevels nCells Time ) 2 - bg state aerosols aer_cam
var persistent real volc ( nAerLevels nCells Time ) 2 - volc state aerosols aer_cam
-#--------------------------------------------------------------------------------------------------
-#... PARAMERIZATION OF CLOUDINESS:
-#--------------------------------------------------------------------------------------------------
+%--------------------------------------------------------------------------------------------------
+%... PARAMERIZATION OF CLOUDINESS:
+%--------------------------------------------------------------------------------------------------
-# cldfrac :cloud fraction [-]
+% cldfrac :cloud fraction [-]
var persistent real cldfrac ( nVertLevels nCells Time ) 1 o cldfrac diag_physics - -
-#--------------------------------------------------------------------------------------------------
-#... PARAMETERIZATION OF LAND-SURFACE SCHEME:
-#--------------------------------------------------------------------------------------------------
+%--------------------------------------------------------------------------------------------------
+%... PARAMETERIZATION OF LAND-SURFACE SCHEME:
+%--------------------------------------------------------------------------------------------------
-# acsnom :accumulated melted snow [kg m-2]
-# acsnow :accumulated snow [kg m-2]
-# canwat :canopy water [kg m-2]
-# chklowq :surface saturation flag [-]
-# grdflx :ground heat flux [W m-2]
-# lai :leaf area index [-]
-# noahres :residual of the noah land-surface scheme energy budget [W m-2]
-# potevp :potential evaporation [W m-2]
-# qz0 :specific humidity at znt [kg kg-1]
-# rib :??
-# sfc_albedo :surface albedo [-]
-# sfc_embck :background emissivity [-]
-# sfc_emiss :surface emissivity [-]
-# sfcrunoff :surface runoff [m s-1]
-# smstav :moisture availability [-]
-# smstot :total moisture [m3 m-3]
-# snopcx :snow phase change heat flux [W m-2]
-# snotime :??
-# sstsk : skin sea-surface temperature [K]
-# sstsk_diur : skin sea-surface temperature difference [K]
-# thc :thermal inertia [Cal cm-1 K-1 s-0.5]
-# udrunoff :sub-surface runoff [m s-1]
-# xicem :ice mask from previous time-step [-]
-# z0 :background roughness length [m]
-# zs :depth of centers of soil layers [m]
+% acsnom :accumulated melted snow [kg m-2]
+% acsnow :accumulated snow [kg m-2]
+% canwat :canopy water [kg m-2]
+% chklowq :surface saturation flag [-]
+% grdflx :ground heat flux [W m-2]
+% lai :leaf area index [-]
+% noahres :residual of the noah land-surface scheme energy budget [W m-2]
+% potevp :potential evaporation [W m-2]
+% qz0 :specific humidity at znt [kg kg-1]
+% rib :??
+% sfc_albedo :surface albedo [-]
+% sfc_embck :background emissivity [-]
+% sfc_emiss :surface emissivity [-]
+% sfcrunoff :surface runoff [m s-1]
+% smstav :moisture availability [-]
+% smstot :total moisture [m3 m-3]
+% snopcx :snow phase change heat flux [W m-2]
+% snotime :??
+% sstsk : skin sea-surface temperature [K]
+% sstsk_diur : skin sea-surface temperature difference [K]
+% thc :thermal inertia [Cal cm-1 K-1 s-0.5]
+% udrunoff :sub-surface runoff [m s-1]
+% xicem :ice mask from previous time-step [-]
+% z0 :background roughness length [m]
+% zs :depth of centers of soil layers [m]
var persistent real acsnom ( nCells Time ) 1 ro acsnom diag_physics - -
var persistent real acsnow ( nCells Time ) 1 ro acsnow diag_physics - -
@@ -726,36 +726,36 @@
var persistent real z0 ( nCells Time ) 1 ro z0 diag_physics - -
var persistent real zs ( nCells Time ) 1 ro zs diag_physics - -
-#--------------------------------------------------------------------------------------------------
-#... SURFACE CHARACTERISTICS THAT NEED TO BE READ FROM GRID.NC:
-#--------------------------------------------------------------------------------------------------
+%--------------------------------------------------------------------------------------------------
+%... SURFACE CHARACTERISTICS THAT NEED TO BE READ FROM GRID.NC:
+%--------------------------------------------------------------------------------------------------
-# albedo12m :monthly climatological albedo [-]
-# greenfrac :monthly climatological greeness fraction [-]
-# isltyp :dominant soil category [-]
-# ivgtyp :dominant vegetation category [-]
-# landmask :=0 for ocean;=1 for land [-]
-# sfc_albbck :background albedo [-]
-# shdmin :minimum areal fractional coverage of annual green vegetation [-]
-# shdmax :maximum areal fractional coverage of annual green vegetation [-]
-# skintemp :skin temperature [K]
-# snoalb :annual max snow albedo [-]
-# snow :snow water equivalent [kg m-2]
-# sst :sea-surface temperature [K]
-# snowc :flag indicating snow coverage (1 for snow cover) [-]
-# snowh :physical snow depth [m]
-# ter :terrain height [-]
-# tmn :soil temperature at lower boundary [K]
-# vegfra :vegetation fraction [-]
-# seaice :sea-ice mask (=1 when xice is greater than 0; =0 otherwise) [-]
-# xice :fractional sea-ice coverage [-]
-# xland :land mask (1 for land; 2 for water) [-]
+% albedo12m :monthly climatological albedo [-]
+% greenfrac :monthly climatological greeness fraction [-]
+% isltyp :dominant soil category [-]
+% ivgtyp :dominant vegetation category [-]
+% landmask :=0 for ocean;=1 for land [-]
+% sfc_albbck :background albedo [-]
+% shdmin :minimum areal fractional coverage of annual green vegetation [-]
+% shdmax :maximum areal fractional coverage of annual green vegetation [-]
+% skintemp :skin temperature [K]
+% snoalb :annual max snow albedo [-]
+% snow :snow water equivalent [kg m-2]
+% sst :sea-surface temperature [K]
+% snowc :flag indicating snow coverage (1 for snow cover) [-]
+% snowh :physical snow depth [m]
+% ter :terrain height [-]
+% tmn :soil temperature at lower boundary [K]
+% vegfra :vegetation fraction [-]
+% seaice :sea-ice mask (=1 when xice is greater than 0; =0 otherwise) [-]
+% xice :fractional sea-ice coverage [-]
+% xland :land mask (1 for land; 2 for water) [-]
-# dzs :thickness of soil layers [m]
-# smcrel :soil moisture threshold below which transpiration begins to stress [-]
-# sh2o :soil liquid water [m3 m-3]
-# smois :soil moisture [m3 m-3]
-# tslb :soil temperature [K]
+% dzs :thickness of soil layers [m]
+% smcrel :soil moisture threshold below which transpiration begins to stress [-]
+% sh2o :soil liquid water [m3 m-3]
+% smois :soil moisture [m3 m-3]
+% tslb :soil temperature [K]
var persistent integer isltyp ( nCells ) 0 iro isltyp sfc_input - -
var persistent integer ivgtyp ( nCells ) 0 iro ivgtyp sfc_input - -
@@ -785,4 +785,4 @@
var persistent real smois ( nSoilLevels nCells Time ) 1 iro smois sfc_input - -
var persistent real tslb ( nSoilLevels nCells Time ) 1 iro tslb sfc_input - -
-#==================================================================================================
+%==================================================================================================
Modified: branches/ocean_projects/time_averaging/src/core_ocean/Registry
===================================================================
--- branches/ocean_projects/time_averaging/src/core_ocean/Registry        2012-01-06 15:28:01 UTC (rev 1305)
+++ branches/ocean_projects/time_averaging/src/core_ocean/Registry        2012-01-06 18:02:59 UTC (rev 1306)
@@ -1,6 +1,6 @@
-#
-# namelist type namelist_record name default_value
-#
+%
+% namelist type namelist_record name default_value
+%
namelist integer sw_model config_test_case 5
namelist character sw_model config_time_integration RK4
namelist logical sw_model config_rk_filter_btr_mode false
@@ -78,9 +78,9 @@
namelist real restore config_restoreT_timescale 90.0
namelist real restore config_restoreS_timescale 90.0
-#
-# dim type name_in_file name_in_code
-#
+%
+% dim type name_in_file name_in_code
+%
dim nCells nCells
dim nEdges nEdges
dim maxEdges maxEdges
@@ -94,9 +94,9 @@
dim nVertLevels nVertLevels
dim nVertLevelsP1 nVertLevels+1
-#
-# var persistence type name_in_file ( dims ) time_levs iro- name_in_code struct super-array array_class
-#
+%
+% var persistence type name_in_file ( dims ) time_levs iro- name_in_code struct super-array array_class
+%
var persistent text xtime ( Time ) 2 ro xtime state - -
var persistent real latCell ( nCells ) 0 iro latCell mesh - -
@@ -151,21 +151,21 @@
var persistent real fVertex ( nVertices ) 0 iro fVertex mesh - -
var persistent real h_s ( nCells ) 0 iro h_s mesh - -
-# Space needed for advection
+% Space needed for advection
var persistent real deriv_two ( FIFTEEN TWO nEdges ) 0 - deriv_two mesh - -
var persistent integer advCells ( TWENTYONE nCells ) 0 - advCells mesh - -
-# !! NOTE: the following arrays are needed to allow the use
-# !! of the module_advection.F w/o alteration
-# Space needed for deformation calculation weights
+% !! NOTE: the following arrays are needed to allow the use
+% !! of the module_advection.F w/o alteration
+% Space needed for deformation calculation weights
var persistent real defc_a ( maxEdges nCells ) 0 - defc_a mesh - -
var persistent real defc_b ( maxEdges nCells ) 0 - defc_b mesh - -
var persistent real kdiff ( nVertLevels nCells Time ) 0 - kdiff mesh - -
-# Arrays required for reconstruction of velocity field
+% Arrays required for reconstruction of velocity field
var persistent real coeffs_reconstruct ( R3 maxEdges nCells ) 0 - coeffs_reconstruct mesh - -
-# Arrays for z-level version of mpas-ocean
+% Arrays for z-level version of mpas-ocean
var persistent integer maxLevelCell ( nCells ) 0 iro maxLevelCell mesh - -
var persistent integer maxLevelEdgeTop ( nEdges ) 0 - maxLevelEdgeTop mesh - -
var persistent integer maxLevelEdgeBot ( nEdges ) 0 - maxLevelEdgeBot mesh - -
@@ -178,7 +178,7 @@
var persistent real hRatioZLevelK ( nVertLevels ) 0 - hRatioZLevelK mesh - -
var persistent real hRatioZLevelKm1 ( nVertLevels ) 0 - hRatioZLevelKm1 mesh - -
-# Boundary conditions: read from input, saved in restart and written to output
+% Boundary conditions: read from input, saved in restart and written to output
var persistent integer boundaryEdge ( nVertLevels nEdges ) 0 iro boundaryEdge mesh - -
var persistent integer boundaryVertex ( nVertLevels nVertices ) 0 iro boundaryVertex mesh - -
var persistent integer boundaryCell ( nVertLevels nCells ) 0 iro boundaryCell mesh - -
@@ -186,7 +186,7 @@
var persistent real temperatureRestore ( nCells ) 0 ir temperatureRestore mesh - -
var persistent real salinityRestore ( nCells ) 0 ir salinityRestore mesh - -
-# Prognostic variables: read from input, saved in restart, and written to output
+% Prognostic variables: read from input, saved in restart, and written to output
var persistent real u ( nVertLevels nEdges Time ) 2 ir u state - -
var persistent real h ( nVertLevels nCells Time ) 2 ir h state - -
var persistent real rho ( nVertLevels nCells Time ) 2 iro rho state - -
@@ -194,7 +194,7 @@
var persistent real salinity ( nVertLevels nCells Time ) 2 iro salinity state tracers dynamics
var persistent real tracer1 ( nVertLevels nCells Time ) 2 iro tracer1 state tracers testing
-# Tendency variables: neither read nor written to any files
+% Tendency variables: neither read nor written to any files
var persistent real tend_u ( nVertLevels nEdges Time ) 1 - u tend - -
var persistent real tend_h ( nVertLevels nCells Time ) 1 - h tend - -
var persistent real tend_ssh ( nCells Time ) 1 - ssh tend - -
@@ -202,7 +202,7 @@
var persistent real tend_salinity ( nVertLevels nCells Time ) 1 - salinity tend tracers dynamics
var persistent real tend_tracer1 ( nVertLevels nCells Time ) 1 - tracer1 tend tracers testing
-# state variables for Split Explicit timesplitting
+% state variables for Split Explicit timesplitting
var persistent real uBtr ( nEdges Time ) 2 - uBtr state - -
var persistent real ssh ( nCells Time ) 2 o ssh state - -
var persistent real uBtrSubcycle ( nEdges Time ) 2 - uBtrSubcycle state - -
@@ -215,7 +215,7 @@
var persistent real vorticityBtr ( nVertices Time ) 1 - vorticityBtr state - -
var persistent real u_diffusionBtr ( nEdges Time ) 1 - u_diffusionBtr state - -
-# Diagnostic fields: only written to output
+% Diagnostic fields: only written to output
var persistent real v ( nVertLevels nEdges Time ) 2 - v state - -
var persistent real divergence ( nVertLevels nCells Time ) 2 o divergence state - -
var persistent real vorticity ( nVertLevels nVertices Time ) 2 o vorticity state - -
@@ -238,13 +238,13 @@
var persistent real wTop ( nVertLevelsP1 nCells Time ) 2 - wTop state - -
var persistent real rhoDisplaced ( nVertLevels nCells Time ) 2 - rhoDisplaced state - -
-# Other diagnostic variables: neither read nor written to any files
+% Other diagnostic variables: neither read nor written to any files
var persistent real vh ( nVertLevels nEdges Time ) 2 - vh state - -
var persistent real circulation ( nVertLevels nVertices Time ) 2 - circulation state - -
var persistent real gradPVt ( nVertLevels nEdges Time ) 2 - gradPVt state - -
var persistent real gradPVn ( nVertLevels nEdges Time ) 2 - gradPVn state - -
-# Globally reduced diagnostic variables: only written to output
+% Globally reduced diagnostic variables: only written to output
var persistent real areaCellGlobal ( Time ) 2 o areaCellGlobal state - -
var persistent real areaEdgeGlobal ( Time ) 2 o areaEdgeGlobal state - -
var persistent real areaTriangleGlobal ( Time ) 2 o areaTriangleGlobal state - -
@@ -253,7 +253,7 @@
var persistent real volumeEdgeGlobal ( Time ) 2 o volumeEdgeGlobal state - -
var persistent real CFLNumberGlobal ( Time ) 2 o CFLNumberGlobal state - -
-# Diagnostics fields, only one time level required
+% Diagnostics fields, only one time level required
var persistent real RiTopOfCell ( nVertLevelsP1 nCells Time ) 1 - RiTopOfCell diagnostics - -
var persistent real RiTopOfEdge ( nVertLevelsP1 nEdges Time ) 1 - RiTopOfEdge diagnostics - -
var persistent real vertViscTopOfEdge ( nVertLevelsP1 nEdges Time ) 1 - vertViscTopOfEdge diagnostics - -
Modified: branches/ocean_projects/time_averaging/src/core_ocean/mpas_ocn_mpas_core.F
===================================================================
--- branches/ocean_projects/time_averaging/src/core_ocean/mpas_ocn_mpas_core.F        2012-01-06 15:28:01 UTC (rev 1305)
+++ branches/ocean_projects/time_averaging/src/core_ocean/mpas_ocn_mpas_core.F        2012-01-06 18:02:59 UTC (rev 1306)
@@ -3,10 +3,10 @@
use mpas_framework
use mpas_timekeeping
use mpas_dmpar
+ use mpas_timer
+
use ocn_test_cases
-
use ocn_time_integration
-
use ocn_tendency
use ocn_vel_pressure_grad
@@ -81,6 +81,8 @@
call ocn_equation_of_state_init(err_tmp)
err = ior(err, err_tmp)
+ call mpas_timer_init(domain)
+
if(err.eq.1) then
call mpas_dmpar_abort(dminfo)
endif
Modified: branches/ocean_projects/time_averaging/src/core_ocean/mpas_ocn_time_integration_rk4.F
===================================================================
--- branches/ocean_projects/time_averaging/src/core_ocean/mpas_ocn_time_integration_rk4.F        2012-01-06 15:28:01 UTC (rev 1305)
+++ branches/ocean_projects/time_averaging/src/core_ocean/mpas_ocn_time_integration_rk4.F        2012-01-06 18:02:59 UTC (rev 1306)
@@ -317,6 +317,7 @@
!
call ocn_tracer_vmix_tend_implicit(block % mesh, dt, vertdifftopofcell, h, tracers, err)
+ call mpas_timer_stop("RK4-implicit vert mix")
end if
! mrp 110725 momentum decay term
Modified: branches/ocean_projects/time_averaging/src/core_sw/Registry
===================================================================
--- branches/ocean_projects/time_averaging/src/core_sw/Registry        2012-01-06 15:28:01 UTC (rev 1305)
+++ branches/ocean_projects/time_averaging/src/core_sw/Registry        2012-01-06 18:02:59 UTC (rev 1306)
@@ -1,6 +1,6 @@
-#
-# namelist type namelist_record name default_value
-#
+%
+% namelist type namelist_record name default_value
+%
namelist integer sw_model config_test_case 5
namelist character sw_model config_time_integration RK4
namelist real sw_model config_dt 172.8
@@ -30,9 +30,9 @@
namelist logical restart config_do_restart false
namelist character restart config_restart_interval none
-#
-# dim type name_in_file name_in_code
-#
+%
+% dim type name_in_file name_in_code
+%
dim nCells nCells
dim nEdges nEdges
dim maxEdges maxEdges
@@ -46,9 +46,9 @@
dim nVertLevels nVertLevels
dim nTracers nTracers
-#
-# var persistence type name_in_file ( dims ) time_levs iro- name_in_code struct super-array array_class
-#
+%
+% var persistence type name_in_file ( dims ) time_levs iro- name_in_code struct super-array array_class
+%
var persistent text xtime ( Time ) 2 ro xtime state - -
var persistent real latCell ( nCells ) 0 iro latCell mesh - -
@@ -104,37 +104,37 @@
var persistent real fCell ( nCells ) 0 iro fCell mesh - -
var persistent real h_s ( nCells ) 0 iro h_s mesh - -
-# Space needed for advection
+% Space needed for advection
var persistent real deriv_two ( FIFTEEN TWO nEdges ) 0 o deriv_two mesh - -
var persistent integer advCells ( TWENTYONE nCells ) 0 - advCells mesh - -
-# !! NOTE: the following arrays are needed to allow the use
-# !! of the module_advection.F w/o alteration
-# Space needed for deformation calculation weights
+% !! NOTE: the following arrays are needed to allow the use
+% !! of the module_advection.F w/o alteration
+% Space needed for deformation calculation weights
var persistent real defc_a ( maxEdges nCells ) 0 - defc_a mesh - -
var persistent real defc_b ( maxEdges nCells ) 0 - defc_b mesh - -
var persistent real kdiff ( nVertLevels nCells Time ) 0 - kdiff mesh - -
-# Arrays required for reconstruction of velocity field
+% Arrays required for reconstruction of velocity field
var persistent real coeffs_reconstruct ( R3 maxEdges nCells ) 0 - coeffs_reconstruct mesh - -
-# Boundary conditions: read from input, saved in restart and written to output
+% Boundary conditions: read from input, saved in restart and written to output
var persistent integer boundaryEdge ( nVertLevels nEdges ) 0 iro boundaryEdge mesh - -
var persistent integer boundaryVertex ( nVertLevels nVertices ) 0 iro boundaryVertex mesh - -
var persistent integer boundaryCell ( nVertLevels nCells ) 0 iro boundaryCell mesh - -
var persistent real u_src ( nVertLevels nEdges ) 0 iro u_src mesh - -
-# Prognostic variables: read from input, saved in restart, and written to output
+% Prognostic variables: read from input, saved in restart, and written to output
var persistent real u ( nVertLevels nEdges Time ) 2 iro u state - -
var persistent real h ( nVertLevels nCells Time ) 2 iro h state - -
var persistent real tracers ( nTracers nVertLevels nCells Time ) 2 iro tracers state - -
-# Tendency variables
+% Tendency variables
var persistent real tend_u ( nVertLevels nEdges Time ) 1 - u tend - -
var persistent real tend_h ( nVertLevels nCells Time ) 1 - h tend - -
var persistent real tend_tracers ( nTracers nVertLevels nCells Time ) 1 - tracers tend - -
-# Diagnostic fields: only written to output
+% Diagnostic fields: only written to output
var persistent real v ( nVertLevels nEdges Time ) 2 o v state - -
var persistent real divergence ( nVertLevels nCells Time ) 2 o divergence state - -
var persistent real vorticity ( nVertLevels nVertices Time ) 2 o vorticity state - -
@@ -150,7 +150,7 @@
var persistent real uReconstructZonal ( nVertLevels nCells Time ) 2 o uReconstructZonal state - -
var persistent real uReconstructMeridional ( nVertLevels nCells Time ) 2 o uReconstructMeridional state - -
-# Other diagnostic variables: neither read nor written to any files
+% Other diagnostic variables: neither read nor written to any files
var persistent real vh ( nVertLevels nEdges Time ) 2 - vh state - -
var persistent real circulation ( nVertLevels nVertices Time ) 2 - circulation state - -
var persistent real gradPVt ( nVertLevels nEdges Time ) 2 - gradPVt state - -
Modified: branches/ocean_projects/time_averaging/src/driver/mpas_subdriver.F
===================================================================
--- branches/ocean_projects/time_averaging/src/driver/mpas_subdriver.F        2012-01-06 15:28:01 UTC (rev 1305)
+++ branches/ocean_projects/time_averaging/src/driver/mpas_subdriver.F        2012-01-06 18:02:59 UTC (rev 1306)
@@ -19,15 +19,13 @@
real (kind=RKIND) :: dt
character(len=32) :: timeStamp
- call mpas_timer_start("total time")
- call mpas_timer_start("initialize")
-
-
!
! Initialize infrastructure
!
call mpas_framework_init(dminfo, domain)
+ call mpas_timer_start("total time")
+ call mpas_timer_start("initialize")
call mpas_input_state_for_domain(domain)
Modified: branches/ocean_projects/time_averaging/src/framework/mpas_timer.F
===================================================================
--- branches/ocean_projects/time_averaging/src/framework/mpas_timer.F        2012-01-06 15:28:01 UTC (rev 1305)
+++ branches/ocean_projects/time_averaging/src/framework/mpas_timer.F        2012-01-06 18:02:59 UTC (rev 1306)
@@ -1,6 +1,7 @@
module mpas_timer
- use mpas_kind_types
+ use mpas_grid_types
+ use mpas_dmpar
implicit none
save
@@ -10,9 +11,9 @@
include 'f90papi.h'
#endif
-#ifdef _MPI
- include 'mpif.h'
-#endif
+!#ifdef _MPI
+! include 'mpif.h'
+!#endif
type timer_node
character (len=72) :: timer_name
@@ -20,15 +21,19 @@
integer :: levels, calls
real (kind=RKIND) :: start_time, end_time, total_time
real (kind=RKIND) :: max_time, min_time, avg_time
+ real (kind=RKIND) :: efficiency
type (timer_node), pointer :: next
end type timer_node
type (timer_node), pointer :: all_timers
- integer :: levels
+ integer :: levels, synced
+ type (dm_info), pointer :: domain_info
+
public :: mpas_timer_start, &
mpas_timer_stop, &
- mpas_timer_write
+ mpas_timer_write, &
+ mpas_timer_init
contains
@@ -87,6 +92,7 @@
current%min_time = 100000000.0
current%avg_time = 0.0
current%calls = 0
+ current%efficiency = 0.0
else
current => timer_ptr
endif
@@ -114,6 +120,7 @@
current%min_time = 100000000.0
current%avg_time = 0.0
current%calls = 0
+ current%efficiency = 0.0
endif
if((timer_added .or. timer_found) .and. (.not.current%running)) then
@@ -232,6 +239,10 @@
total_found = .false.
+ if(associated(domain_info) .and. synced == 0) then
+ call mpas_timer_sync()
+ endif
+
if(present(timer_ptr) .and. (.not.present(total_ptr))) then
print *,'timer_write :: timer_ptr valid, but total_ptr is not assigned.'
stop
@@ -253,7 +264,7 @@
percent = timer_ptr%total_time/total_ptr%total_time
endif
- write(*,'(i2, 1x, a35, f15.5, i10, 3f15.5, f8.2)') timer_ptr%levels, tname(1:timer_ptr%levels)//timer_ptr%timer_name, timer_ptr%total_time, timer_ptr%calls, timer_ptr%min_time, timer_ptr%max_time, timer_ptr%avg_time, percent
+ write(*,'(i2, 1x, a35, f15.5, i10, 3f15.5, 2f8.2)') timer_ptr%levels, tname(1:timer_ptr%levels)//timer_ptr%timer_name, timer_ptr%total_time, timer_ptr%calls, timer_ptr%min_time, timer_ptr%max_time, timer_ptr%avg_time, percent, timer_ptr%efficiency
return
endif
@@ -273,7 +284,7 @@
stop
end if
- write(*,'(3x, a10, 24x, a15, a10, a13, a15, a15, a15)') 'timer_name', 'total', 'calls', 'min', 'max', 'avg', 'percent'
+ write(*,'(3x, a10, 24x, a15, a10, a13, a15, a15, a12, a12)') 'timer_name', 'total', 'calls', 'min', 'max', 'avg', 'percent', 'efficiency'
write(*,'(i2, 1x, a35, f15.5, i10, 3f15.5)') total%levels, total%timer_name, total%total_time, total%calls, total%min_time, total%max_time, total%avg_time
current => all_timers
@@ -292,6 +303,57 @@
end subroutine mpas_timer_write!}}}
+ subroutine mpas_timer_init(domain)!{{{
+ type (domain_type), intent(in), optional :: domain
+
+ if( present(domain) ) then
+ domain_info => domain % dminfo
+ endif
+
+ synced = 0
+
+ end subroutine mpas_timer_init!}}}
+
+ subroutine mpas_timer_sync()!{{{
+ type (timer_node), pointer :: current
+ real (kind=RKIND) :: all_total_time, all_max_time, all_min_time, all_ave_time
+
+ current => all_timers
+
+ sync_timers: do while(associated(current))
+ all_total_time = 0.0
+ all_ave_time = 0.0
+ all_max_time = 0.0
+ all_min_time = 0.0
+
+ call mpas_dmpar_max_real(domain_info, current % total_time, all_total_time)
+ call mpas_dmpar_sum_real(domain_info, current % total_time, all_ave_time)
+
+ all_ave_time = all_ave_time / domain_info % nprocs
+
+ current % total_time = all_total_time
+
+#ifdef _MPI
+ current % efficiency = all_ave_time / all_total_time
+#else
+ current % efficiency = 1.0
+#endif
+
+ current % avg_time = current % total_time / current % calls
+
+ call mpas_dmpar_max_real(domain_info, current % max_time, all_max_time)
+ current % max_time = all_max_time
+
+ call mpas_dmpar_min_real(domain_info, current % min_time, all_min_time)
+ current % min_time = all_min_time
+
+ current => current % next
+ end do sync_timers
+
+ synced = 1
+
+ end subroutine mpas_timer_sync!}}}
+
end module mpas_timer
! vim: foldmethod=marker et ts=2
Modified: branches/ocean_projects/time_averaging/src/registry/parse.c
===================================================================
--- branches/ocean_projects/time_averaging/src/registry/parse.c        2012-01-06 15:28:01 UTC (rev 1305)
+++ branches/ocean_projects/time_averaging/src/registry/parse.c        2012-01-06 18:02:59 UTC (rev 1306)
@@ -19,23 +19,21 @@
struct group_list * groups;
if (argc != 2) {
- fprintf(stderr,"</font>
<font color="black">Usage: %s filename</font>
<font color="black"></font>
<font color="red">", argv[0]);
- return 1;
+ fprintf(stderr,"Reading registry file from standard input</font>
<font color="red">");
+ regfile = stdin;
}
-
- if (regfile = fopen(argv[1], "r")) {
- nls = NULL;
- dims = NULL;
- vars = NULL;
- if (parse_reg(regfile, &nls, &dims, &vars, &groups)) {
- return 1;
- }
- }
- else {
+ else if (!(regfile = fopen(argv[1], "r"))) {
fprintf(stderr,"</font>
<font color="black">Error: Could not open file %s for reading.</font>
<font color="black"></font>
<font color="gray">", argv[1]);
return 1;
}
+ nls = NULL;
+ dims = NULL;
+ vars = NULL;
+ if (parse_reg(regfile, &nls, &dims, &vars, &groups)) {
+ return 1;
+ }
+
sort_vars(vars);
sort_group_vars(groups);
@@ -244,6 +242,7 @@
dimlist_ptr = dimlist_ptr->next;
}
}
+ fprintf(stdout,"</font>
<font color="gray">");
}
nls_ptr = *nls;
@@ -274,18 +273,19 @@
do { c = getc(regfile); } while (((char)c == ' ' || (char)c == '</font>
<font color="red">' || (char)c == '\t') && c != EOF);
- while ((char)c == '#') {
+ while ((char)c == '%') {
do { c = getc(regfile); } while ((char)c != '</font>
<font color="black">' && c != EOF);
do { c = getc(regfile); } while (((char)c == ' ' || (char)c == '</font>
<font color="red">' || (char)c == '\t') && c != EOF);
};
- while((char)c != ' ' && (char)c != '</font>
<font color="blue">' && (char)c != '\t' && c != EOF && (char)c != '#') {
+ while((char)c != ' ' && (char)c != '</font>
<font color="red">' && (char)c != '\t' && c != EOF && (char)c != '%') {
word[i++] = (char)c;
c = (char)getc(regfile);
}
word[i] = '\0';
- if ((char)c == '#') do { c = getc(regfile); } while ((char)c != '</font>
<font color="blue">' && c != EOF);
+ if ((char)c == '%') do { c = getc(regfile); } while ((char)c != '</font>
<font color="blue">' && c != EOF);
+ fprintf(stdout,"%s ",word);
return c;
}
</font>
</pre>