MODULE module_fddaobs_rtfdda CONTAINS SUBROUTINE fddaobs_init(nudge_opt, maxdom, inest, parid, & idynin, dtramp, fdaend, restart, & twindo_cg, twindo, itimestep, & no_pbl_nudge_uv, & no_pbl_nudge_t, & no_pbl_nudge_q, & sfc_scheme_horiz, sfc_scheme_vert, & maxsnd_gap, & sfcfact, sfcfacr, dpsmx, & nudge_wind, nudge_temp, nudge_mois, & nudgezfullr1_uv, nudgezrampr1_uv, & nudgezfullr2_uv, nudgezrampr2_uv, & nudgezfullr4_uv, nudgezrampr4_uv, & nudgezfullr1_t, nudgezrampr1_t, & nudgezfullr2_t, nudgezrampr2_t, & nudgezfullr4_t, nudgezrampr4_t, & nudgezfullr1_q, nudgezrampr1_q, & nudgezfullr2_q, nudgezrampr2_q, & nudgezfullr4_q, nudgezrampr4_q, & nudgezfullmin, nudgezrampmin, nudgezmax, & xlat, xlong, & start_year, start_month, start_day, & start_hour, start_minute, start_second, & p00, t00, tlp, & znu, p_top, & iprt, & ids,ide, jds,jde, kds,kde, & ims,ime, jms,jme, kms,kme, & its,ite, jts,jte, kts,kte) USE module_model_constants, ONLY : g, r_d USE module_domain USE module_dm, ONLY : wrf_dm_min_real IMPLICIT NONE INTEGER, intent(in) :: maxdom INTEGER, intent(in) :: nudge_opt(maxdom) INTEGER, intent(in) :: ids,ide, jds,jde, kds,kde, & ims,ime, jms,jme, kms,kme, & its,ite, jts,jte, kts,kte INTEGER, intent(in) :: inest INTEGER, intent(in) :: parid(maxdom) INTEGER, intent(in) :: idynin REAL, intent(in) :: dtramp REAL, intent(in) :: fdaend(maxdom) LOGICAL, intent(in) :: restart REAL, intent(in) :: twindo_cg REAL, intent(in) :: twindo INTEGER, intent(in) :: itimestep INTEGER , INTENT(IN) :: no_pbl_nudge_uv(maxdom) INTEGER , INTENT(IN) :: no_pbl_nudge_t(maxdom) INTEGER , INTENT(IN) :: no_pbl_nudge_q(maxdom) INTEGER , INTENT(IN) :: sfc_scheme_horiz INTEGER , INTENT(IN) :: sfc_scheme_vert REAL , INTENT(IN) :: maxsnd_gap REAL, intent(in) :: sfcfact REAL, intent(in) :: sfcfacr REAL, intent(in) :: dpsmx INTEGER , INTENT(IN) :: nudge_wind(maxdom) INTEGER , INTENT(IN) :: nudge_temp(maxdom) INTEGER , INTENT(IN) :: nudge_mois(maxdom) REAL, INTENT(IN) :: nudgezfullr1_uv REAL, INTENT(IN) :: nudgezrampr1_uv REAL, INTENT(IN) :: nudgezfullr2_uv REAL, INTENT(IN) :: nudgezrampr2_uv REAL, INTENT(IN) :: nudgezfullr4_uv REAL, INTENT(IN) :: nudgezrampr4_uv REAL, INTENT(IN) :: nudgezfullr1_t REAL, INTENT(IN) :: nudgezrampr1_t REAL, INTENT(IN) :: nudgezfullr2_t REAL, INTENT(IN) :: nudgezrampr2_t REAL, INTENT(IN) :: nudgezfullr4_t REAL, INTENT(IN) :: nudgezrampr4_t REAL, INTENT(IN) :: nudgezfullr1_q REAL, INTENT(IN) :: nudgezrampr1_q REAL, INTENT(IN) :: nudgezfullr2_q REAL, INTENT(IN) :: nudgezrampr2_q REAL, INTENT(IN) :: nudgezfullr4_q REAL, INTENT(IN) :: nudgezrampr4_q REAL, INTENT(IN) :: nudgezfullmin REAL, INTENT(IN) :: nudgezrampmin REAL, INTENT(IN) :: nudgezmax REAL, INTENT(IN) :: xlat ( ims:ime, jms:jme ) REAL, INTENT(IN) :: xlong( ims:ime, jms:jme ) INTEGER, intent(in) :: start_year INTEGER, intent(in) :: start_month INTEGER, intent(in) :: start_day INTEGER, intent(in) :: start_hour INTEGER, intent(in) :: start_minute INTEGER, intent(in) :: start_second REAL, INTENT(IN) :: p00 REAL, INTENT(IN) :: t00 REAL, INTENT(IN) :: tlp REAL, INTENT(IN) :: p_top REAL, INTENT(IN) :: znu( kms:kme ) LOGICAL, intent(in) :: iprt logical :: nudge_flag integer :: ktau integer :: nest integer :: idom integer :: parent real :: conv real :: tl1 real :: tl2 real :: xn1 real :: known_lat real :: known_lon character(len=200) :: msg real :: z_at_p( kms:kme ) integer :: i,j,k END SUBROUTINE fddaobs_init END MODULE module_fddaobs_rtfdda