ocean_da_core.F90
1! This file is part of MOM6, the Modular Ocean Model version 6.
2! See the LICENSE file for licensing information.
3! SPDX-License-Identifier: Apache-2.0
4
5!> A set of dummy interfaces for compiling the MOM6 DA driver code.
6module ocean_da_core_mod
7 ! MOM modules
8 use mom_domains, only : mom_domain_type, domain2d
9 use mom_time_manager, only : time_type, set_time, get_date
10 ! ODA_tools modules
11 use ocean_da_types_mod, only : ocean_profile_type, grid_type
13
14 implicit none
15 private
16 public :: ocean_da_core_init
17 public :: get_profiles
18
19contains
20
21 !> Initializes the MOM6 DA driver code.
22 subroutine ocean_da_core_init(Domain, global_grid, Profiles, model_time)
23 type(domain2d), pointer, intent(in) :: domain !< A MOM domain type
24 type(grid_type), pointer, intent(in) :: global_grid !< The global ODA horizontal grid type
25 type(ocean_profile_type), pointer :: profiles !< This is an unstructured recursive list of profiles
26 !! which are either within the localized domain corresponding
27 !! to the Domain argument, or the global profile list (type).
28 type(time_type), intent(in) :: model_time !< The current model time type.
29
30
31
32 profiles=>null()
33 return
34 end subroutine ocean_da_core_init
35
36
37 !> Get profiles obs within the current analysis interval
38 subroutine get_profiles(model_time, Profiles, Current_profiles)
39 type(time_type), intent(in) :: model_time !< The current analysis time.
40 type(ocean_profile_type), pointer :: profiles !< The full recursive list of profiles.
41 type(ocean_profile_type), pointer :: current_profiles !< A returned list of profiles for the
42 !! current analysis step.
43
44 profiles=>null()
45 current_profiles=>null()
46
47 return
48 end subroutine get_profiles
49
50
51end module ocean_da_core_mod