[Dart-dev] DART/branches Revision: 11027
dart at ucar.edu
dart at ucar.edu
Wed Feb 8 09:21:47 MST 2017
hendric at ucar.edu
2017-02-08 09:21:46 -0700 (Wed, 08 Feb 2017)
78
adding domain from spec, so that the bgrid can run at different
resolutions.
Modified: DART/branches/rma_single_file/models/bgrid_solo/model_mod.f90
===================================================================
--- DART/branches/rma_single_file/models/bgrid_solo/model_mod.f90 2017-02-08 16:11:13 UTC (rev 11026)
+++ DART/branches/rma_single_file/models/bgrid_solo/model_mod.f90 2017-02-08 16:21:46 UTC (rev 11027)
@@ -96,6 +96,8 @@
get_dart_vector_index, get_index_start, get_index_end, &
state_structure_info
+use dart_time_io_mod, only : read_model_time, write_model_time
+
implicit none
private
@@ -2122,73 +2124,72 @@
print*, 'state_variables ', trim(state_variables(1,i)), ' ',trim(state_variables(2,i))
end do
-dom_id = add_domain('bgrid_template.nc', numrows, state_variables(1,1:numrows), &
- kind_list=state_kinds_list(:))
+dom_id = add_domain(numrows, state_variables(1,1:numrows), state_kinds_list(:))
-!#! call state_structure_info(dom_id)
+call state_structure_info(dom_id)
kub = Var_dt%kub
klb = Var_dt%klb
-!#! do i = 1, numrows
-!#!
-!#! ! add each variable to the domain structure, with fixed
-!#! ! dimension names because we know what they should be.
-!#!
-!#! thiskind = state_kinds_list(i)
-!#!
-!#! if (thiskind == KIND_U_WIND_COMPONENT .or. thiskind == KIND_V_WIND_COMPONENT) then
-!#! ! the velocity grid is staggered compared to the temperature grid
-!#! vis = Dynam%Hgrid%Vel%is; vie = Dynam%Hgrid%Vel%ie
-!#! vjs = Dynam%Hgrid%Vel%js; vje = Dynam%Hgrid%Vel%je
-!#! nVelI = vie - vis + 1
-!#! nVelJ = vje - vjs + 1
-!#! nlev = Var_dt%kub - Var_dt%klb + 1
-!#!
-!#! call add_dimension_to_variable(dom_id, i, "slon", nVelI)
-!#! call add_dimension_to_variable(dom_id, i, "slat", nVelJ)
-!#! call add_dimension_to_variable(dom_id, i, "lev", nlev)
-!#!
-!#! else if (thiskind == KIND_TEMPERATURE .or. thiskind == KIND_PRESSURE) then
-!#! tis = Dynam%Hgrid%Tmp%is; tie = Dynam%Hgrid%Tmp%ie
-!#! tjs = Dynam%Hgrid%Tmp%js; tje = Dynam%Hgrid%Tmp%je
-!#! nTmpI = tie - tis + 1
-!#! nTmpJ = tje - tjs + 1
-!#! nlev = Var_dt%kub - Var_dt%klb + 1
-!#!
-!#! call add_dimension_to_variable(dom_id, i, "lon", nTmpI)
-!#! call add_dimension_to_variable(dom_id, i, "lat", nTmpJ)
-!#! call add_dimension_to_variable(dom_id, i, "lev", nlev)
-!#!
-!#! else if (thiskind == KIND_SURFACE_PRESSURE) then
-!#! tis = Dynam%Hgrid%Tmp%is; tie = Dynam%Hgrid%Tmp%ie
-!#! tjs = Dynam%Hgrid%Tmp%js; tje = Dynam%Hgrid%Tmp%je
-!#! nTmpI = tie - tis + 1
-!#! nTmpJ = tje - tjs + 1
-!#! nlev = 1
-!#!
-!#! call add_dimension_to_variable(dom_id, i, "lon", nTmpI)
-!#! call add_dimension_to_variable(dom_id, i, "lat", nTmpJ)
-!#!
-!#! else ! is tracer, Q, CO, etc
-!#! tis = Dynam%Hgrid%Tmp%is; tie = Dynam%Hgrid%Tmp%ie
-!#! tjs = Dynam%Hgrid%Tmp%js; tje = Dynam%Hgrid%Tmp%je
-!#! nTmpI = tie - tis + 1
-!#! nTmpJ = tje - tjs + 1
-!#! !ntracer = Var_dt%ntrace
-!#! nlev = Var_dt%kub - Var_dt%klb + 1
-!#!
-!#! call add_dimension_to_variable(dom_id, i, "lon", nTmpI)
-!#! call add_dimension_to_variable(dom_id, i, "lat", nTmpJ)
-!#! call add_dimension_to_variable(dom_id, i, "lev", nlev)
-!#!
-!#! endif
-!#!
-!#! end do
-!#!
-!#!
-!#! call finished_adding_domain(dom_id)
+do i = 1, numrows
+ ! add each variable to the domain structure, with fixed
+ ! dimension names because we know what they should be.
+
+ thiskind = state_kinds_list(i)
+
+ if (thiskind == KIND_U_WIND_COMPONENT .or. thiskind == KIND_V_WIND_COMPONENT) then
+ ! the velocity grid is staggered compared to the temperature grid
+ vis = Dynam%Hgrid%Vel%is; vie = Dynam%Hgrid%Vel%ie
+ vjs = Dynam%Hgrid%Vel%js; vje = Dynam%Hgrid%Vel%je
+ nVelI = vie - vis + 1
+ nVelJ = vje - vjs + 1
+ nlev = Var_dt%kub - Var_dt%klb + 1
+
+ call add_dimension_to_variable(dom_id, i, "slon", nVelI)
More information about the Dart-dev
mailing list