[Dart-dev] DART/branches Revision: 11184
dart at ucar.edu
dart at ucar.edu
Thu Mar 2 13:26:41 MST 2017
mizzi at ucar.edu
2017-03-02 13:26:40 -0700 (Thu, 02 Mar 2017)
96
Fix bugs in model_mod, airnow, iasi_ascii_to_obs, and more cleanoing of the real_time drivers.
Modified: DART/branches/mizzi/models/wrf_chem/model_mod.f90
===================================================================
--- DART/branches/mizzi/models/wrf_chem/model_mod.f90 2017-03-02 16:30:41 UTC (rev 11183)
+++ DART/branches/mizzi/models/wrf_chem/model_mod.f90 2017-03-02 20:26:40 UTC (rev 11184)
@@ -520,7 +520,7 @@
if(debug) write(*,*) ' ncid is ',ncid
!
! LXL/APM +++
-! if ( add_emiss ) then
+ if ( add_emiss ) then
!
! WRFCHEMI emissions
@@ -542,7 +542,7 @@
'Please put "'//trim(fire_filename)//'" in the work directory.', source, revision,revdate)
endif
if(debug) write(*,*) ' ncid_emiss_firechemi is ',ncid_emiss_firechemi
-! endif
+ endif
! LXL/APM ---
!
!-------------------------------------------------------
@@ -558,7 +558,7 @@
!-------------------------------------------------------
! read EMISS dimensions
!-------------------------------------------------------
-! if ( add_emiss ) then
+ if ( add_emiss ) then
call read_emiss_dimensions(ncid_emiss_chemi, chem_filename, &
wrf%dom(id)%e_bt_chemi, &
wrf%dom(id)%e_sn, &
@@ -568,7 +568,7 @@
wrf%dom(id)%e_bt_firechemi, &
wrf%dom(id)%e_sn, &
wrf%dom(id)%e_we)
-! endif
+ endif
! LXL/APM ---
!-------------------------------------------------------
! read WRF file attributes
@@ -600,21 +600,25 @@
!
! LXL/APM +++
! get the number of conc/emiss variables wanted in this domain's state
- wrf%dom(id)%number_of_conc_variables = get_number_of_wrf_variables(id,conc_state_variables,var_element_list, var_update_list)
+ if ( add_emiss ) then
+ wrf%dom(id)%number_of_conc_variables = get_number_of_wrf_variables(id,conc_state_variables,var_element_list, var_update_list)
!
- wrf%dom(id)%number_of_emiss_chemi_variables = get_number_of_wrf_variables(id,emiss_chemi_variables,var_element_list, var_update_list)
+ wrf%dom(id)%number_of_emiss_chemi_variables = get_number_of_wrf_variables(id,emiss_chemi_variables,var_element_list, var_update_list)
!
- wrf%dom(id)%number_of_emiss_firechemi_variables = get_number_of_wrf_variables(id,emiss_firechemi_variables,var_element_list, var_update_list)
+ wrf%dom(id)%number_of_emiss_firechemi_variables = get_number_of_wrf_variables(id,emiss_firechemi_variables,var_element_list, var_update_list)
+ endif
! LXL/APM ---
!
! get the number of wrf variables wanted in this domain's state (must follow mods because var_element_list is needed and overwritten with each call)
wrf%dom(id)%number_of_wrf_variables = get_number_of_wrf_variables(id,wrf_state_variables,var_element_list, var_update_list)
!
! LXL/APM +++
- if(debug) write(*,*) ' number of wrf variables is',wrf%dom(id)%number_of_wrf_variables
- if(debug) write(*,*) ' number of conc variables is',wrf%dom(id)%number_of_conc_variables
- if(debug) write(*,*) ' number of emiss chemi variables is',wrf%dom(id)%number_of_emiss_chemi_variables
- if(debug) write(*,*) ' number of emiss firechemi variables is',wrf%dom(id)%number_of_emiss_firechemi_variables
+ if ( add_emiss ) then
+ if(debug) write(*,*) ' number of wrf variables is',wrf%dom(id)%number_of_wrf_variables
+ if(debug) write(*,*) ' number of conc variables is',wrf%dom(id)%number_of_conc_variables
+ if(debug) write(*,*) ' number of emiss chemi variables is',wrf%dom(id)%number_of_emiss_chemi_variables
+ if(debug) write(*,*) ' number of emiss firechemi variables is',wrf%dom(id)%number_of_emiss_firechemi_variables
+ endif
! LXL/APM ---
!
! allocate and store the table locations of the variables valid on this domain
@@ -653,63 +657,65 @@
! this accounts for the fact that some variables might not be on all domains
!
! LXL/APM +++
- do ind = 1,wrf%dom(id)%number_of_conc_variables
+ if (add_emiss ) then
+ do ind = 1,wrf%dom(id)%number_of_conc_variables
! LXL/APM ---
!
! actual location in state variable table
- my_index = wrf%dom(id)%var_index_list(ind)
+ my_index = wrf%dom(id)%var_index_list(ind)
- wrf%dom(id)%var_type(ind) = ind ! types are just the order for this domain
- wrf%dom(id)%dart_kind(ind) = get_raw_obs_kind_index(trim(wrf_state_variables(2,my_index)))
+ wrf%dom(id)%var_type(ind) = ind ! types are just the order for this domain
+ wrf%dom(id)%dart_kind(ind) = get_raw_obs_kind_index(trim(wrf_state_variables(2,my_index)))
- if ( debug ) then
- print*,'dart kind identified: ',trim(wrf_state_variables(2,my_index)),' ',wrf%dom(id)%dart_kind(ind)
- endif
+ if ( debug ) then
+ print*,'dart kind identified: ',trim(wrf_state_variables(2,my_index)),' ',wrf%dom(id)%dart_kind(ind)
+ endif
! get stagger and variable size
- call get_variable_size_from_file(ncid,id, &
More information about the Dart-dev
mailing list