eat_filter_pdaf Program

Uses

  • program~~eat_filter_pdaf~~UsesGraph program~eat_filter_pdaf eat_filter_pdaf mpi mpi program~eat_filter_pdaf->mpi module~pdaf_wrapper pdaf_wrapper program~eat_filter_pdaf->module~pdaf_wrapper iso_fortran_env iso_fortran_env program~eat_filter_pdaf->iso_fortran_env module~eat_config eat_config program~eat_filter_pdaf->module~eat_config module~pdaf_wrapper->iso_fortran_env module~pdaf_wrapper->module~eat_config iso_c_binding iso_c_binding module~pdaf_wrapper->iso_c_binding pdaf_mod_filter pdaf_mod_filter module~pdaf_wrapper->pdaf_mod_filter PDAF_interfaces_module PDAF_interfaces_module module~pdaf_wrapper->PDAF_interfaces_module module~eat_config->mpi module~eat_config->iso_fortran_env

A wrapper around the 'off_line PDAF' implmentation to keep it alive during ensemble simulations


Calls

program~~eat_filter_pdaf~~CallsGraph program~eat_filter_pdaf eat_filter_pdaf proc~eat_init_pdaf eat_init_pdaf program~eat_filter_pdaf->proc~eat_init_pdaf proc~eat_do_pdaf eat_do_pdaf program~eat_filter_pdaf->proc~eat_do_pdaf proc~eat_finish_pdaf eat_finish_pdaf program~eat_filter_pdaf->proc~eat_finish_pdaf proc~init_pdaf init_pdaf proc~eat_init_pdaf->proc~init_pdaf mpi_abort mpi_abort proc~eat_init_pdaf->mpi_abort mpi_recv mpi_recv proc~eat_init_pdaf->mpi_recv proc~init_eat_config init_eat_config proc~eat_init_pdaf->proc~init_eat_config mpi_waitall mpi_waitall proc~eat_do_pdaf->mpi_waitall mpi_irecv mpi_irecv proc~eat_do_pdaf->mpi_irecv mpi_isend mpi_isend proc~eat_do_pdaf->mpi_isend proc~eat_do_pdaf->mpi_abort proc~assimilation_pdaf assimilation_pdaf proc~eat_do_pdaf->proc~assimilation_pdaf proc~eat_do_pdaf->mpi_recv mpi_finalize mpi_finalize proc~eat_finish_pdaf->mpi_finalize proc~finish_pdaf finish_pdaf proc~eat_finish_pdaf->proc~finish_pdaf pdaf_get_state pdaf_get_state proc~init_pdaf->pdaf_get_state pdaf_set_ens_pointer pdaf_set_ens_pointer proc~init_pdaf->pdaf_set_ens_pointer pdaf_set_comm_pdaf pdaf_set_comm_pdaf proc~init_pdaf->pdaf_set_comm_pdaf pdaf_init pdaf_init proc~init_pdaf->pdaf_init proc~assimilation_pdaf->pdaf_get_state pdaf_put_state_3dvar pdaf_put_state_3dvar proc~assimilation_pdaf->pdaf_put_state_3dvar pdaf_put_state_letkf pdaf_put_state_letkf proc~assimilation_pdaf->pdaf_put_state_letkf pdaf_put_state_enkf pdaf_put_state_enkf proc~assimilation_pdaf->pdaf_put_state_enkf pdaf_put_state_etkf pdaf_put_state_etkf proc~assimilation_pdaf->pdaf_put_state_etkf pdaf_force_analysis pdaf_force_analysis proc~assimilation_pdaf->pdaf_force_analysis pdaf_put_state_seik pdaf_put_state_seik proc~assimilation_pdaf->pdaf_put_state_seik pdaf_put_state_estkf pdaf_put_state_estkf proc~assimilation_pdaf->pdaf_put_state_estkf pdaf_put_state_lseik pdaf_put_state_lseik proc~assimilation_pdaf->pdaf_put_state_lseik pdaf_put_state_lestkf pdaf_put_state_lestkf proc~assimilation_pdaf->pdaf_put_state_lestkf proc~init_eat_config->mpi_abort mpi_comm_rank mpi_comm_rank proc~init_eat_config->mpi_comm_rank mpi_comm_size mpi_comm_size proc~init_eat_config->mpi_comm_size mpi_barrier mpi_barrier proc~init_eat_config->mpi_barrier mpi_get_processor_name mpi_get_processor_name proc~init_eat_config->mpi_get_processor_name mpi_comm_split mpi_comm_split proc~init_eat_config->mpi_comm_split mpi_init mpi_init proc~init_eat_config->mpi_init

Contents


Variables

Type AttributesNameInitial
integer :: nobs =0
logical :: have_obs =.true.
logical :: have_model =.true.
integer :: state_size
integer :: ensemble_size
integer, allocatable:: reqs(:)
integer, allocatable:: stats(:,:)
real(kind=real64), pointer, contiguous:: model_states(:,:)
integer, parameter:: stderr =error_unit
integer, parameter:: stdout =output_unit
integer :: verbosity =info

Subroutines

subroutine eat_init_pdaf()

Initialize EAT/PDAF component

Arguments

None

subroutine eat_do_pdaf()

Get observations and states and do the PDAF/assimilation step

Arguments

None

subroutine eat_finish_pdaf()

Cleanup and finalize the EAT/PDAF component

Arguments

None