!------------------------------------------------------------------------------------------- !Copyright (c) 2013-2016 by Wolfgang Kurtz and Guowei He (Forschungszentrum Juelich GmbH) ! !This file is part of TSMP-PDAF ! !TSMP-PDAF is free software: you can redistribute it and/or modify !it under the terms of the GNU Lesser General Public License as published by !the Free Software Foundation, either version 3 of the License, or !(at your option) any later version. ! !TSMP-PDAF is distributed in the hope that it will be useful, !but WITHOUT ANY WARRANTY; without even the implied warranty of !MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the !GNU LesserGeneral Public License for more details. ! !You should have received a copy of the GNU Lesser General Public License !along with TSMP-PDAF. If not, see <http://www.gnu.org/licenses/>. !------------------------------------------------------------------------------------------- ! ! !------------------------------------------------------------------------------------------- !init_obs_pdaf.F90: TSMP-PDAF implementation of routine ! 'init_obs_pdaf' (PDAF online coupling) !------------------------------------------------------------------------------------------- !$Id: init_obs_pdaf.F90 1441 2013-10-04 10:33:42Z lnerger $ !BOP ! ! !ROUTINE: init_obs_pdaf --- Initialize observation vector ! ! !INTERFACE: SUBROUTINE init_obs_pdaf(step, dim_obs_p, observation_p) ! !DESCRIPTION: ! User-supplied routine for PDAF. ! Used in the filters: SEIK/EnKF/ETKF/ESTKF ! ! The routine is called during the analysis step. ! It has to provide the PE-local observation vector ! for the current time step. ! ! !REVISION HISTORY: ! 2013-02 - Lars Nerger - Initial code ! Later revisions - see svn log ! ! !USES: USE mod_assimilation, & ONLY: obs_p IMPLICIT NONE ! !ARGUMENTS: INTEGER, INTENT(in) :: step ! Current time step INTEGER, INTENT(in) :: dim_obs_p ! PE-local dimension of obs. vector REAL, INTENT(out) :: observation_p(dim_obs_p) ! PE-local observation vector ! !CALLING SEQUENCE: ! Called by: PDAF_seik_analysis, PDAF_seik_analysis_newT (as U_init_obs) ! Called by: PDAF_enkf_obs_ensemble ! Called by: PDAF_etkf_analysis, PDAF_etkf_analysis_T ! Called by: PDAF_estkf_analysis !EOP ! *************************************************************** ! *** Initialize observation vector for PE-local model domain *** ! *************************************************************** observation_p = obs_p END SUBROUTINE init_obs_pdaf