<HTML> <BODY BGCOLOR=#ccccdd LINK=#0000aa VLINK=#0000ff ALINK=#ff0000 ><BASE TARGET="bottom_target"><PRE>
<A NAME='DA_4DVAR'><A href='../../html_code/4dvar/da_4dvar.f90.html#DA_4DVAR' TARGET='top_target'><IMG SRC="../../gif/bar_purple.gif" border=0></A>
module da_4dvar 6,3
use da_tracing
, only : da_trace_entry, da_trace_exit
use da_reporting
, only : da_error
use da_control
, only : comm, var4d_bin, var4d_lbc, trace_use_dull, num_fgat_time, multi_inc
#ifdef VAR4D
use module_streams, only : MAX_WRF_ALARMS
use module_wrf_top, only : domain, head_grid, model_config_rec, config_flags, &
wrf_init, wrf_run, wrf_run_tl, wrf_run_ad, wrf_finalize, &
Setup_Timekeeping, gradient_out
use mediation_pertmod_io, only : xtraj_io_initialize, adtl_initialize, &
save_ad_forcing, read_ad_forcing, read_nl_xtraj, save_tl_pert, &
read_tl_pert, swap_ad_forcing
use module_configure, only : model_to_grid_config_rec, grid_config_rec_type
use module_domain, only : wrfu_timeinterval
use module_utility
use module_big_step_utilities_em, only : calc_mu_uv
use g_module_big_step_utilities_em, only : g_calc_mu_uv
use a_module_big_step_utilities_em, only : a_calc_mu_uv
#ifdef DM_PARALLEL
use module_dm, only : local_communicator
#endif
type (domain), pointer :: model_grid
type (grid_config_rec_type) :: model_config_flags
character*256 :: timestr
! Define some variables to save the NL physical option
integer :: original_mp_physics, original_ra_lw_physics, original_ra_sw_physics, &
original_sf_sfclay_physics, original_bl_pbl_physics, original_cu_physics, &
original_ifsnow, original_icloud, original_cudt, original_mp_physics_ad
REAL , DIMENSION(:,:,:) , ALLOCATABLE :: ubdy3dtemp1 , vbdy3dtemp1 , tbdy3dtemp1 , pbdy3dtemp1 , qbdy3dtemp1
REAL , DIMENSION(:,:,:) , ALLOCATABLE :: ubdy3dtemp2 , vbdy3dtemp2 , tbdy3dtemp2 , pbdy3dtemp2 , qbdy3dtemp2
REAL , DIMENSION(:,:,:) , ALLOCATABLE :: mbdy2dtemp1, mbdy2dtemp2 , wbdy3dtemp1 , wbdy3dtemp2
REAL , DIMENSION(:,:,:) , ALLOCATABLE :: u6_2, v6_2, w6_2, t6_2, ph6_2, p6
REAL , DIMENSION(:,:,:,:) , ALLOCATABLE :: moist6
REAL , DIMENSION(:,:) , ALLOCATABLE :: mu6_2, psfc6
contains
#include "da_nl_model.inc"
#include "da_tl_model.inc"
#include "da_ad_model.inc"
#include "da_finalize_model.inc"
#include "da_4dvar_io.inc"
#include "da_4dvar_lbc.inc"
#endif
end module da_4dvar