[Dart-dev] DART/branches Revision: 12126
dart at ucar.edu
dart at ucar.edu
Mon Nov 20 14:30:32 MST 2017
nancy at ucar.edu
2017-11-20 14:30:32 -0700 (Mon, 20 Nov 2017)
215
add a forward operator to return the obs value raised
to a power for any of the 1d models. add the additional
obs types to the 'assimilate these obs types' namelist so
they appear in the create_obs_sequence menu.
Modified: DART/branches/rma_trunk/assimilation_code/modules/observations/DEFAULT_obs_kind_mod.F90
===================================================================
--- DART/branches/rma_trunk/assimilation_code/modules/observations/DEFAULT_obs_kind_mod.F90 2017-11-20 21:29:07 UTC (rev 12125)
+++ DART/branches/rma_trunk/assimilation_code/modules/observations/DEFAULT_obs_kind_mod.F90 2017-11-20 21:30:32 UTC (rev 12126)
@@ -307,7 +307,8 @@
QTY_SFCO = 170, &
QTY_SFCO01 = 171, &
QTY_SFCO02 = 172, &
- QTY_SFCO03 = 173
+ QTY_SFCO03 = 173, &
+ QTY_STATE_VAR_POWER = 174
integer, parameter, public :: &
@@ -735,6 +736,7 @@
obs_kind_names(171) = obs_kind_type(QTY_SFCO01, 'QTY_SFCO01')
obs_kind_names(172) = obs_kind_type(QTY_SFCO02, 'QTY_SFCO02')
obs_kind_names(173) = obs_kind_type(QTY_SFCO03, 'QTY_SFCO03')
+obs_kind_names(174) = obs_kind_type(QTY_STATE_VAR_POWER,'QTY_STATE_VAR_POWER')
obs_kind_names(200) = obs_kind_type(QTY_AOD, 'QTY_AOD')
obs_kind_names(201) = obs_kind_type(QTY_CB1, 'QTY_CB1')
Modified: DART/branches/rma_trunk/models/lorenz_96/work/input.nml
===================================================================
--- DART/branches/rma_trunk/models/lorenz_96/work/input.nml 2017-11-20 21:29:07 UTC (rev 12125)
+++ DART/branches/rma_trunk/models/lorenz_96/work/input.nml 2017-11-20 21:30:32 UTC (rev 12126)
@@ -126,6 +126,8 @@
&obs_kind_nml
assimilate_these_obs_types = 'RAW_STATE_VARIABLE',
+ 'RAW_STATE_1D_INTEGRAL',
+ 'RAW_STATE_VAR_POWER'
/
&model_nml
Modified: DART/branches/rma_trunk/observations/forward_operators/obs_def_1d_state_mod.f90
===================================================================
--- DART/branches/rma_trunk/observations/forward_operators/obs_def_1d_state_mod.f90 2017-11-20 21:29:07 UTC (rev 12125)
+++ DART/branches/rma_trunk/observations/forward_operators/obs_def_1d_state_mod.f90 2017-11-20 21:30:32 UTC (rev 12126)
@@ -7,6 +7,7 @@
! BEGIN DART PREPROCESS KIND LIST
! RAW_STATE_VARIABLE, QTY_STATE_VARIABLE, COMMON_CODE
! RAW_STATE_1D_INTEGRAL, QTY_1D_INTEGRAL
+! RAW_STATE_VAR_POWER, QTY_STATE_VAR_POWER
! LARGE_SCALE_STATE, QTY_LARGE_SCALE_STATE, COMMON_CODE
! SMALL_SCALE_STATE, QTY_SMALL_SCALE_STATE, COMMON_CODE
! END DART PREPROCESS KIND LIST
@@ -13,27 +14,36 @@
! BEGIN DART PREPROCESS USE OF SPECIAL OBS_DEF MODULE
! use obs_def_1d_state_mod, only : write_1d_integral, read_1d_integral, &
-! interactive_1d_integral, get_expected_1d_integral
+! interactive_1d_integral, get_expected_1d_integral, &
+ write_power, read_power, interactive_power, get_expected_power
! END DART PREPROCESS USE OF SPECIAL OBS_DEF MODULE
! BEGIN DART PREPROCESS GET_EXPECTED_OBS_FROM_DEF
! case(RAW_STATE_1D_INTEGRAL)
! call get_expected_1d_integral(state_handle, ens_size, location, obs_def%key, expected_obs, istatus)
+! case(RAW_STATE_VAR_POWER)
+! call get_expected_power(state_handle, ens_size, location, obs_def%key, expected_obs, istatus)
! END DART PREPROCESS GET_EXPECTED_OBS_FROM_DEF
! BEGIN DART PREPROCESS READ_OBS_DEF
! case(RAW_STATE_1D_INTEGRAL)
! call read_1d_integral(obs_def%key, ifile, fform)
+! case(RAW_STATE_VAR_POWER)
+! call read_power(obs_def%key, ifile, fform)
! END DART PREPROCESS READ_OBS_DEF
! BEGIN DART PREPROCESS WRITE_OBS_DEF
! case(RAW_STATE_1D_INTEGRAL)
! call write_1d_integral(obs_def%key, ifile, fform)
+! case(RAW_STATE_VAR_POWER)
+! call write_power(obs_def%key, ifile, fform)
! END DART PREPROCESS WRITE_OBS_DEF
! BEGIN DART PREPROCESS INTERACTIVE_OBS_DEF
! case(RAW_STATE_1D_INTEGRAL)
! call interactive_1d_integral(obs_def%key)
+! case(RAW_STATE_VAR_POWER)
+! call interactive_power(obs_def%key)
! END DART PREPROCESS INTERACTIVE_OBS_DEF
! BEGIN DART PREPROCESS MODULE CODE
@@ -49,6 +59,7 @@
! nmlfileunit, do_nml_file, do_nml_term
!! Routines only needed for namelist support. NML1
use location_mod, only : location_type, set_location, get_location
+use obs_kind_mod, only : QTY_STATE_VARIABLE
use assim_model_mod, only : interpolate
use cov_cutoff_mod, only : comp_cov_factor
use ensemble_manager_mod, only : ensemble_type
@@ -59,16 +70,22 @@
! These are the required interfaces for an obs_def module.
public :: write_1d_integral, read_1d_integral, &
interactive_1d_integral, get_expected_1d_integral, &
- set_1d_integral
+ set_1d_integral, &
More information about the Dart-dev
mailing list