From f9b7ecd3737caa0c6d0d6e0900c2bf7af5c9a4b8 Mon Sep 17 00:00:00 2001 From: Timofey Mukha Date: Wed, 20 Dec 2023 15:15:28 +0100 Subject: [PATCH 01/11] WIP scalar simcomp --- src/.depends | 3 +- src/Makefile.am | 1 + src/scalar/scalar_pnpn.f90 | 4 +- src/scalar/scalar_scheme.f90 | 4 +- src/simulation.f90 | 6 +- src/simulation_components/scalar.f90 | 137 ++++++++++++++++++ .../simulation_component.f90 | 1 + .../simulation_component_factory.f90 | 4 + 8 files changed, 152 insertions(+), 8 deletions(-) create mode 100644 src/simulation_components/scalar.f90 diff --git a/src/.depends b/src/.depends index f317031cba2..20126a04309 100644 --- a/src/.depends +++ b/src/.depends @@ -233,7 +233,8 @@ simulation_components/simulation_component.o : simulation_components/simulation_ simulation_components/simulation_component_global.o : simulation_components/simulation_component_global.f90 case.o simulation_components/simulation_component_factory.o simulation_components/simulation_component.o simulation_components/vorticity.o : simulation_components/vorticity.f90 case.o math/operators.o field/field.o field/field_registry.o simulation_components/simulation_component.o config/num_types.o simulation_components/lambda2.o : simulation_components/lambda2.f90 device/device.o case.o math/operators.o field/field.o field/field_registry.o simulation_components/simulation_component.o config/num_types.o -simulation_components/simulation_component_factory.o : simulation_components/simulation_component_factory.f90 common/json_utils.o case.o simulation_components/probes.o simulation_components/lambda2.o simulation_components/vorticity.o simulation_components/simulation_component.o +simulation_components/scalar.o : simulation_components/scalar.f90 common/log.o scalar/scalar_pnpn.o case.o math/operators.o field/field.o field/field_registry.o simulation_components/simulation_component.o config/num_types.o +simulation_components/simulation_component_factory.o : simulation_components/simulation_component_factory.f90 common/json_utils.o case.o simulation_components/probes.o simulation_components/scalar.o simulation_components/lambda2.o simulation_components/vorticity.o simulation_components/simulation_component.o source_terms/source_term.o : source_terms/source_term.f90 field/field_list.o sem/coef.o config/num_types.o config/neko_config.o source_terms/const_source_term.o : source_terms/const_source_term.f90 source_terms/bcknd/device/const_source_term_device.o source_terms/bcknd/cpu/const_source_term_cpu.o common/utils.o config/neko_config.o sem/coef.o source_terms/source_term.o common/json_utils.o field/field_list.o config/num_types.o source_terms/bcknd/cpu/const_source_term_cpu.o : source_terms/bcknd/cpu/const_source_term_cpu.f90 math/math.o field/field_list.o config/num_types.o diff --git a/src/Makefile.am b/src/Makefile.am index d5b68ca9cd4..81a49f11dfa 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -236,6 +236,7 @@ neko_fortran_SOURCES = \ simulation_components/simulation_component_global.f90\ simulation_components/vorticity.f90\ simulation_components/lambda2.f90\ + simulation_components/scalar.f90\ simulation_components/simulation_component_factory.f90\ source_terms/source_term.f90\ source_terms/const_source_term.f90\ diff --git a/src/scalar/scalar_pnpn.f90 b/src/scalar/scalar_pnpn.f90 index 6560d9a72f9..0317f2b05bf 100644 --- a/src/scalar/scalar_pnpn.f90 +++ b/src/scalar/scalar_pnpn.f90 @@ -281,8 +281,8 @@ end subroutine scalar_pnpn_free subroutine scalar_pnpn_step(this, t, tstep, dt, ext_bdf) class(scalar_pnpn_t), intent(inout) :: this - real(kind=rp), intent(inout) :: t - integer, intent(inout) :: tstep + real(kind=rp), intent(in) :: t + integer, intent(in) :: tstep real(kind=rp), intent(in) :: dt type(time_scheme_controller_t), intent(inout) :: ext_bdf ! Number of degrees of freedom diff --git a/src/scalar/scalar_scheme.f90 b/src/scalar/scalar_scheme.f90 index aece08c2991..a8bfadc3e17 100644 --- a/src/scalar/scalar_scheme.f90 +++ b/src/scalar/scalar_scheme.f90 @@ -182,8 +182,8 @@ subroutine scalar_scheme_step_intrf(this, t, tstep, dt, ext_bdf) import time_scheme_controller_t import rp class(scalar_scheme_t), intent(inout) :: this - real(kind=rp), intent(inout) :: t - integer, intent(inout) :: tstep + real(kind=rp), intent(in) :: t + integer, intent(in) :: tstep real(kind=rp), intent(in) :: dt type(time_scheme_controller_t), intent(inout) :: ext_bdf end subroutine scalar_scheme_step_intrf diff --git a/src/simulation.f90 b/src/simulation.f90 index 02342575d26..2ce28e897b1 100644 --- a/src/simulation.f90 +++ b/src/simulation.f90 @@ -32,12 +32,12 @@ ! !> Simulation driver module simulation - use case + use case, only : case_t use gather_scatter - use time_scheme_controller + use time_scheme_controller, only : time_scheme_controller_t use file use math - use logger + use logger, only : neko_log, LOG_SIZE use device use device_math use jobctrl diff --git a/src/simulation_components/scalar.f90 b/src/simulation_components/scalar.f90 new file mode 100644 index 00000000000..f7220a051f5 --- /dev/null +++ b/src/simulation_components/scalar.f90 @@ -0,0 +1,137 @@ +! Copyright (c) 2023, The Neko Authors +! All rights reserved. +! +! Redistribution and use in source and binary forms, with or without +! modification, are permitted provided that the following conditions +! are met: +! +! * Redistributions of source code must retain the above copyright +! notice, this list of conditions and the following disclaimer. +! +! * Redistributions in binary form must reproduce the above +! copyright notice, this list of conditions and the following +! disclaimer in the documentation and/or other materials provided +! with the distribution. +! +! * Neither the name of the authors nor the names of its +! contributors may be used to endorse or promote products derived +! from this software without specific prior written permission. +! +! THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +! "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +! LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +! FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +! COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +! INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +! BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +! LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +! CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +! LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +! ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +! POSSIBILITY OF SUCH DAMAGE. +! +! +!> Implements the `scalar_t` type. + +module scalar + use num_types, only : rp, dp + use json_module, only : json_file + use simulation_component, only : simulation_component_t + use field_registry, only : neko_field_registry + use field, only : field_t + use operators, only : curl + use case, only : case_t + use scalar_pnpn, only : scalar_pnpn_t + use logger, only : neko_log, LOG_SIZE + implicit none + private + + !> A simulation component that solves a scalar transport equation. + type, public, extends(simulation_component_t) :: scalar_t + !> X velocity component. + type(field_t), pointer :: u + !> Y velocity component. + type(field_t), pointer :: v + !> Z velocity component. + type(field_t), pointer :: w + + !> The scalar scheme. + type(scalar_pnpn_t), allocatable :: scheme + + contains + !> Constructor from json, wrapping the actual constructor. + procedure, pass(this) :: init => scalar_init_from_json + !> Actual constructor. + procedure, pass(this) :: init_from_attributes => & + scalar_init_from_attributes + !> Destructor. + procedure, pass(this) :: free => scalar_free + !> Compute the scalar field. + procedure, pass(this) :: compute_ => scalar_compute + end type scalar_t + +contains + + !> Constructor from json. + subroutine scalar_init_from_json(this, json, case) + class(scalar_t), intent(inout) :: this + type(json_file), intent(inout) :: json + class(case_t), intent(inout), target :: case + + call this%init_base(json, case) + + call scalar_init_from_attributes(this) + end subroutine scalar_init_from_json + + !> Actual constructor. + subroutine scalar_init_from_attributes(this) + class(scalar_t), intent(inout) :: this + + allocate(this%scheme) + + call this%case%scalar%init(this%case%msh, this%case%fluid%c_Xh, & + this%case%fluid%gs_Xh, this%case%params, this%case%usr, & + this%case%material_properties) + + call this%scheme%set_user_bc(this%case%usr%scalar_user_bc) + + call this%scheme%slag%set(this%scheme%s) + call this%scheme%validate() + + !call this%case%fluid%chkp%add_scalar(this%scheme%s) + !this%case%fluid%chkp%abs1 => this%scheme%abx1 + !this%case%fluid%chkp%abs2 => this%scheme%abx2 + !this%case%fluid%chkp%slag => this%scheme%slag + + end subroutine scalar_init_from_attributes + + !> Destructor. + subroutine scalar_free(this) + class(scalar_t), intent(inout) :: this + call this%free_base() + + call this%scheme%free() + deallocate(this%scheme) + end subroutine scalar_free + + !> Solve the scalar equation. + !! @param t The time value. + !! @param tstep The current time-step. + subroutine scalar_compute(this, t, tstep) + class(scalar_t), intent(inout) :: this + real(kind=rp), intent(in) :: t + integer, intent(in) :: tstep + real(kind=dp) :: start_time, end_time + character(len=LOG_SIZE) :: log_buf + + + ! start_time = MPI_WTIME() + call neko_log%section('Scalar simcomp') + call this%scheme%step(t, tstep, this%case%dt, this%case%ext_bdf) + !end_time = MPI_WTIME() + !write(log_buf, '(A,E15.7)') 'Step time:', end_time-start_time + call neko_log%end_section(log_buf) + + end subroutine scalar_compute + +end module scalar diff --git a/src/simulation_components/simulation_component.f90 b/src/simulation_components/simulation_component.f90 index 897b4e7f325..5cb1fde2544 100644 --- a/src/simulation_components/simulation_component.f90 +++ b/src/simulation_components/simulation_component.f90 @@ -118,6 +118,7 @@ subroutine simulation_component_init_base(this, json, case) character(len=:), allocatable :: compute_control, output_control real(kind=rp) :: compute_value, output_value + call this%free_base() this%case => case call json_get_or_default(json, "compute_control", compute_control, & "tsteps") diff --git a/src/simulation_components/simulation_component_factory.f90 b/src/simulation_components/simulation_component_factory.f90 index f2d02b2ad19..d663cf116e2 100644 --- a/src/simulation_components/simulation_component_factory.f90 +++ b/src/simulation_components/simulation_component_factory.f90 @@ -36,6 +36,7 @@ module simulation_component_fctry use simulation_component, only : simulation_component_t use vorticity, only : vorticity_t use lambda2, only : lambda2_t + use scalar, only : scalar_t use probes, only : probes_t use json_module, only : json_file use case, only : case_t @@ -66,6 +67,9 @@ subroutine simulation_component_factory(simcomp, json, case) if (trim(simcomp_type) .eq. "probes") then allocate(probes_t::simcomp) end if + if (trim(simcomp_type) .eq. "scalar") then + allocate(scalar_t::simcomp) + end if ! Initialize call simcomp%init(json, case) From 4b044bd7a9d885cfddf5e9a581c626ea76e65cd2 Mon Sep 17 00:00:00 2001 From: Timofey Mukha Date: Mon, 22 Jan 2024 10:52:19 +0300 Subject: [PATCH 02/11] Proof of concept --- src/.depends | 490 +++++++++--------- src/case.f90 | 59 +-- src/simulation.f90 | 22 +- src/simulation_components/scalar.f90 | 41 +- .../simulation_component_factory.f90 | 5 +- 5 files changed, 291 insertions(+), 326 deletions(-) diff --git a/src/.depends b/src/.depends index 92537c689c1..36cd50fc19b 100644 --- a/src/.depends +++ b/src/.depends @@ -1,245 +1,245 @@ -config/num_types.o : config/num_types.f90 -common/structs.o : common/structs.f90 config/num_types.o -io/format/nmsh.o : io/format/nmsh.f90 config/num_types.o -io/format/re2.o : io/format/re2.f90 config/num_types.o -io/format/map.o : io/format/map.f90 mesh/mesh.o -io/format/stl.o : io/format/stl.f90 config/num_types.o -common/log.o : common/log.f90 config/num_types.o comm/comm.o -comm/comm.o : comm/comm.F90 config/neko_config.o common/utils.o -mesh/curve.o : mesh/curve.f90 common/utils.o adt/stack.o common/structs.o config/num_types.o -comm/mpi_types.o : comm/mpi_types.f90 io/format/stl.o io/format/nmsh.o io/format/re2.o comm/comm.o -common/datadist.o : common/datadist.f90 -common/distdata.o : common/distdata.f90 adt/uset.o adt/tuple.o adt/stack.o -common/utils.o : common/utils.f90 -common/json_utils.o : common/json_utils.f90 common/utils.o config/num_types.o -common/system.o : common/system.f90 -math/mxm_wrapper.o : math/mxm_wrapper.F90 common/utils.o config/num_types.o -sem/speclib.o : sem/speclib.f90 common/utils.o config/num_types.o -sem/local_interpolation.o : sem/local_interpolation.f90 config/neko_config.o math/bcknd/device/device_math.o device/device.o field/field_list.o field/field.o common/utils.o math/fast3d.o math/math.o mesh/point.o config/num_types.o sem/space.o math/tensor.o -math/math.o : math/math.f90 comm/comm.o config/num_types.o -math/mathops.o : math/mathops.f90 config/num_types.o -math/fast3d.o : math/fast3d.f90 math/math.o sem/speclib.o config/num_types.o -sem/space.o : sem/space.f90 math/mxm_wrapper.o math/tensor.o math/math.o math/fast3d.o common/utils.o device/device.o sem/speclib.o config/num_types.o config/neko_config.o -sem/dofmap.o : sem/dofmap.f90 mesh/hex.o mesh/quad.o mesh/element.o math/math.o device/device.o math/tensor.o math/fast3d.o common/utils.o config/num_types.o adt/tuple.o sem/space.o mesh/mesh.o config/neko_config.o -sem/coef.o : sem/coef.f90 device/device.o math/mxm_wrapper.o sem/bcknd/device/device_coef.o math/bcknd/device/device_math.o mesh/mesh.o math/math.o sem/space.o sem/dofmap.o config/num_types.o config/neko_config.o gs/gs_ops.o gs/gather_scatter.o -sem/cpr.o : sem/cpr.f90 sem/dofmap.o common/log.o math/mxm_wrapper.o math/tensor.o sem/coef.o mesh/mesh.o math/math.o sem/space.o field/field.o config/num_types.o config/neko_config.o gs/gather_scatter.o -sem/spectral_error_indicator.o : sem/spectral_error_indicator.f90 common/utils.o comm/comm.o device/device.o config/neko_config.o gs/gather_scatter.o math/bcknd/device/device_math.o math/tensor.o io/file.o math/math.o field/field_list.o sem/coef.o field/field.o config/num_types.o -common/time_interpolator.o : common/time_interpolator.f90 common/utils.o math/math.o math/bcknd/device/device_math.o config/neko_config.o field/field.o config/num_types.o -sem/interpolation.o : sem/interpolation.f90 sem/space.o math/bcknd/cpu/tensor_cpu.o math/tensor.o math/fast3d.o device/device.o config/num_types.o config/neko_config.o -sem/point_interpolator.o : sem/point_interpolator.f90 config/neko_config.o math/bcknd/device/device_math.o device/device.o common/utils.o math/fast3d.o math/math.o mesh/point.o config/num_types.o sem/space.o math/tensor.o -sem/bcknd/device/device_coef.o : sem/bcknd/device/device_coef.F90 common/utils.o config/num_types.o -gs/gs_bcknd.o : gs/gs_bcknd.f90 config/num_types.o -gs/bcknd/cpu/gs_cpu.o : gs/bcknd/cpu/gs_cpu.f90 gs/gs_ops.o gs/gs_bcknd.o config/num_types.o -gs/bcknd/sx/gs_sx.o : gs/bcknd/sx/gs_sx.f90 gs/gs_ops.o gs/gs_bcknd.o config/num_types.o -gs/bcknd/device/gs_device.o : gs/bcknd/device/gs_device.F90 common/utils.o gs/gs_ops.o device/device.o gs/gs_bcknd.o config/num_types.o config/neko_config.o -gs/gs_ops.o : gs/gs_ops.f90 -gs/gs_comm.o : gs/gs_comm.f90 adt/stack.o comm/comm.o config/num_types.o -gs/gs_mpi.o : gs/gs_mpi.f90 comm/comm.o adt/stack.o gs/gs_ops.o gs/gs_comm.o config/num_types.o config/neko_config.o -gs/bcknd/device/gs_device_mpi.o : gs/bcknd/device/gs_device_mpi.F90 common/utils.o device/device.o adt/htable.o comm/comm.o adt/stack.o gs/gs_ops.o gs/gs_comm.o config/num_types.o -gs/gather_scatter.o : gs/gather_scatter.f90 device/device.o common/profiler.o common/log.o common/utils.o adt/stack.o adt/htable.o config/num_types.o field/field.o sem/dofmap.o comm/comm.o mesh/mesh.o gs/bcknd/device/gs_device_mpi.o gs/gs_mpi.o gs/gs_comm.o gs/gs_ops.o gs/bcknd/cpu/gs_cpu.o gs/bcknd/sx/gs_sx.o gs/bcknd/device/gs_device.o gs/gs_bcknd.o config/neko_config.o -mesh/entity.o : mesh/entity.f90 -mesh/point.o : mesh/point.f90 mesh/entity.o math/math.o config/num_types.o -mesh/element.o : mesh/element.f90 mesh/point.o adt/tuple.o mesh/entity.o config/num_types.o -math/ax.o : math/ax.f90 mesh/mesh.o sem/space.o sem/coef.o config/num_types.o -mesh/quad.o : mesh/quad.f90 mesh/point.o adt/tuple.o mesh/element.o config/num_types.o -mesh/hex.o : mesh/hex.f90 mesh/point.o adt/tuple.o mesh/element.o config/num_types.o -mesh/tet.o : mesh/tet.f90 mesh/point.o adt/tuple.o mesh/element.o config/num_types.o -mesh/tri.o : mesh/tri.f90 mesh/point.o adt/tuple.o mesh/element.o config/num_types.o -adt/htable.o : adt/htable.f90 math/math.o adt/tuple.o mesh/point.o common/utils.o config/num_types.o -adt/uset.o : adt/uset.f90 adt/htable.o config/num_types.o common/utils.o -adt/stack.o : adt/stack.f90 adt/tuple.o math/math.o common/structs.o mesh/point.o common/utils.o io/format/nmsh.o config/num_types.o -adt/tuple.o : adt/tuple.f90 config/num_types.o math/math.o -mesh/facet_zone.o : mesh/facet_zone.f90 common/utils.o adt/stack.o adt/tuple.o -mesh/point_zone.o : mesh/point_zone.f90 device/device.o config/neko_config.o sem/dofmap.o common/utils.o config/num_types.o adt/stack.o -mesh/point_zones/sphere_point_zone.o : mesh/point_zones/sphere_point_zone.f90 math/math.o common/json_utils.o config/num_types.o mesh/point_zone.o -mesh/point_zones/box_point_zone.o : mesh/point_zones/box_point_zone.f90 math/math.o common/json_utils.o config/num_types.o mesh/point_zone.o -mesh/point_zone_factory.o : mesh/point_zone_factory.f90 common/utils.o sem/dofmap.o common/json_utils.o mesh/point_zones/sphere_point_zone.o mesh/point_zones/box_point_zone.o mesh/point_zone.o -mesh/point_zone_registry.o : mesh/point_zone_registry.f90 common/json_utils.o common/utils.o sem/dofmap.o mesh/point_zone_factory.o mesh/point_zone.o -mesh/mesh.o : mesh/mesh.f90 mesh/curve.o adt/uset.o math/math.o mesh/facet_zone.o comm/comm.o common/distdata.o common/datadist.o adt/htable.o adt/tuple.o adt/stack.o common/utils.o mesh/quad.o mesh/hex.o mesh/element.o mesh/point.o config/num_types.o -mesh/octree.o : mesh/octree.f90 common/utils.o mesh/point.o config/num_types.o -mesh/tet_mesh.o : mesh/tet_mesh.f90 common/utils.o mesh/point.o mesh/tet.o mesh/mesh.o -mesh/tri_mesh.o : mesh/tri_mesh.f90 mesh/point.o mesh/tri.o -field/field_registry.o : field/field_registry.f90 adt/htable.o common/utils.o sem/dofmap.o field/field.o -field/scratch_registry.o : field/scratch_registry.f90 sem/dofmap.o field/field.o -field/field.o : field/field.f90 sem/dofmap.o sem/space.o mesh/mesh.o math/math.o device/device.o config/num_types.o math/bcknd/device/device_math.o config/neko_config.o -field/field_list.o : field/field_list.f90 field/field.o -field/field_series.o : field/field_series.f90 field/field.o config/num_types.o -field/mesh_field.o : field/mesh_field.f90 mesh/mesh.o -field/mean_field.o : field/mean_field.f90 math/bcknd/device/device_math.o math/math.o field/field.o config/num_types.o common/stats_quant.o config/neko_config.o -field/mean_sqr_field.o : field/mean_sqr_field.f90 math/math.o math/bcknd/device/device_math.o field/mean_field.o config/neko_config.o config/num_types.o -io/format/rea.o : io/format/rea.f90 mesh/mesh.o config/num_types.o -math/bcknd/cpu/cdtp.o : math/bcknd/cpu/cdtp.f90 config/num_types.o -math/bcknd/cpu/conv1.o : math/bcknd/cpu/conv1.f90 config/num_types.o -math/bcknd/cpu/dudxyz.o : math/bcknd/cpu/dudxyz.f90 config/num_types.o -math/bcknd/cpu/opgrad.o : math/bcknd/cpu/opgrad.f90 config/num_types.o -math/bcknd/sx/sx_cdtp.o : math/bcknd/sx/sx_cdtp.f90 math/math.o config/num_types.o -math/bcknd/sx/sx_conv1.o : math/bcknd/sx/sx_conv1.f90 config/num_types.o -math/bcknd/sx/sx_dudxyz.o : math/bcknd/sx/sx_dudxyz.f90 math/math.o config/num_types.o -math/bcknd/sx/sx_opgrad.o : math/bcknd/sx/sx_opgrad.f90 config/num_types.o -math/bcknd/sx/sx_cfl.o : math/bcknd/sx/sx_cfl.f90 config/num_types.o -math/operators.o : math/operators.f90 math/bcknd/device/device_math.o device/device.o comm/comm.o math/math.o field/field.o sem/coef.o sem/space.o math/bcknd/device/opr_device.o math/bcknd/xsmm/opr_xsmm.o math/bcknd/sx/opr_sx.o math/bcknd/cpu/opr_cpu.o config/num_types.o config/neko_config.o -math/bcknd/cpu/opr_cpu.o : math/bcknd/cpu/opr_cpu.f90 math/mathops.o gs/gather_scatter.o field/field.o math/math.o sem/coef.o sem/space.o config/num_types.o math/bcknd/cpu/conv1.o math/bcknd/cpu/cdtp.o math/bcknd/cpu/opgrad.o math/bcknd/cpu/dudxyz.o -math/bcknd/sx/opr_sx.o : math/bcknd/sx/opr_sx.f90 math/mathops.o field/field.o math/math.o sem/coef.o sem/space.o config/num_types.o gs/gather_scatter.o math/bcknd/sx/sx_cfl.o math/bcknd/sx/sx_cdtp.o math/bcknd/sx/sx_conv1.o math/bcknd/sx/sx_opgrad.o math/bcknd/sx/sx_dudxyz.o -math/bcknd/xsmm/opr_xsmm.o : math/bcknd/xsmm/opr_xsmm.F90 math/mathops.o gs/gather_scatter.o field/field.o mesh/mesh.o math/math.o sem/coef.o sem/space.o math/mxm_wrapper.o config/num_types.o -math/bcknd/device/opr_device.o : math/bcknd/device/opr_device.F90 comm/comm.o common/utils.o field/field.o mesh/mesh.o sem/coef.o sem/space.o device/device.o math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o config/num_types.o gs/gather_scatter.o -math/tensor.o : math/tensor.f90 device/device.o config/neko_config.o math/mxm_wrapper.o config/num_types.o math/bcknd/device/tensor_device.o math/bcknd/sx/tensor_sx.o math/bcknd/cpu/tensor_cpu.o math/bcknd/xsmm/tensor_xsmm.o -math/bcknd/cpu/tensor_cpu.o : math/bcknd/cpu/tensor_cpu.f90 math/mxm_wrapper.o config/num_types.o -math/bcknd/sx/tensor_sx.o : math/bcknd/sx/tensor_sx.f90 math/mxm_wrapper.o config/num_types.o -math/bcknd/xsmm/tensor_xsmm.o : math/bcknd/xsmm/tensor_xsmm.F90 math/mxm_wrapper.o config/num_types.o -math/fdm.o : math/fdm.f90 comm/comm.o common/utils.o device/device.o math/bcknd/device/fdm_device.o math/bcknd/cpu/fdm_cpu.o math/bcknd/xsmm/fdm_xsmm.o math/bcknd/sx/fdm_sx.o math/tensor.o math/fast3d.o gs/gather_scatter.o sem/dofmap.o sem/space.o mesh/mesh.o math/math.o sem/speclib.o config/num_types.o config/neko_config.o -math/bcknd/cpu/fdm_cpu.o : math/bcknd/cpu/fdm_cpu.f90 math/bcknd/cpu/tensor_cpu.o config/num_types.o -math/bcknd/sx/fdm_sx.o : math/bcknd/sx/fdm_sx.f90 math/bcknd/sx/tensor_sx.o config/num_types.o -math/bcknd/xsmm/fdm_xsmm.o : math/bcknd/xsmm/fdm_xsmm.f90 math/bcknd/xsmm/tensor_xsmm.o config/num_types.o -math/schwarz.o : math/schwarz.f90 config/neko_config.o device/device.o math/fdm.o math/bcknd/device/device_math.o math/bcknd/device/device_schwarz.o gs/gather_scatter.o bc/bc.o sem/dofmap.o sem/space.o mesh/mesh.o math/math.o config/num_types.o -math/vector.o : math/vector.f90 common/utils.o math/bcknd/device/device_math.o device/device.o config/num_types.o config/neko_config.o -math/matrix.o : math/matrix.f90 common/utils.o math/bcknd/device/device_math.o device/device.o config/num_types.o config/neko_config.o -common/checkpoint.o : common/checkpoint.f90 mesh/mesh.o common/utils.o field/field.o device/device.o sem/space.o field/field_series.o config/num_types.o config/neko_config.o -io/generic_file.o : io/generic_file.f90 config/num_types.o -io/map_file.o : io/map_file.f90 io/format/map.o comm/comm.o common/utils.o io/generic_file.o -io/re2_file.o : io/re2_file.f90 common/log.o adt/htable.o io/map_file.o io/format/map.o io/format/re2.o common/datadist.o comm/mpi_types.o comm/comm.o mesh/point.o mesh/mesh.o common/utils.o config/num_types.o io/generic_file.o -io/rea_file.o : io/rea_file.f90 common/log.o adt/htable.o common/datadist.o comm/comm.o io/map_file.o io/re2_file.o io/format/rea.o io/format/map.o mesh/point.o mesh/mesh.o common/utils.o config/num_types.o io/generic_file.o -io/fld_file.o : io/fld_file.f90 comm/mpi_types.o math/math.o common/datadist.o comm/comm.o common/utils.o mesh/mesh.o fluid/mean_sqr_flow.o fluid/mean_flow.o io/fld_file_data.o math/vector.o common/structs.o sem/space.o sem/dofmap.o field/field_list.o field/field.o io/generic_file.o -io/fld_file_data.o : io/fld_file_data.f90 math/vector.o math/math.o config/num_types.o -io/vtk_file.o : io/vtk_file.f90 comm/comm.o common/log.o mesh/tri_mesh.o mesh/tet_mesh.o field/mesh_field.o sem/dofmap.o field/field.o mesh/mesh.o common/utils.o io/generic_file.o config/num_types.o -io/stl_file.o : io/stl_file.f90 io/format/stl.o comm/comm.o comm/mpi_types.o mesh/point.o common/log.o mesh/tri_mesh.o io/generic_file.o config/num_types.o -io/nmsh_file.o : io/nmsh_file.f90 common/log.o comm/mpi_types.o common/datadist.o mesh/element.o io/format/nmsh.o adt/tuple.o mesh/point.o common/utils.o mesh/mesh.o comm/comm.o io/generic_file.o -io/chkp_file.o : io/chkp_file.f90 common/global_interpolation.o comm/comm.o comm/mpi_types.o sem/interpolation.o math/math.o mesh/mesh.o sem/space.o common/utils.o math/bcknd/device/device_math.o sem/dofmap.o field/field.o config/num_types.o common/checkpoint.o field/field_series.o io/generic_file.o -io/csv_file.o : io/csv_file.f90 comm/comm.o common/log.o config/num_types.o common/utils.o io/generic_file.o math/matrix.o math/vector.o -io/file.o : io/file.f90 io/csv_file.o io/stl_file.o io/vtk_file.o io/fld_file_data.o io/fld_file.o io/re2_file.o io/rea_file.o io/map_file.o io/chkp_file.o io/nmsh_file.o io/generic_file.o common/utils.o -io/output.o : io/output.f90 io/file.o config/num_types.o -io/fluid_output.o : io/fluid_output.f90 io/output.o device/device.o config/neko_config.o field/field_list.o scalar/scalar_scheme.o fluid/fluid_scheme.o -io/chkp_output.o : io/chkp_output.f90 config/num_types.o io/output.o common/checkpoint.o -io/mean_flow_output.o : io/mean_flow_output.f90 io/output.o device/device.o config/num_types.o fluid/mean_flow.o -io/fluid_stats_output.o : io/fluid_stats_output.f90 io/output.o device/device.o config/num_types.o config/neko_config.o fluid/fluid_stats.o -io/mean_sqr_flow_output.o : io/mean_sqr_flow_output.f90 io/output.o config/num_types.o fluid/mean_sqr_flow.o -io/data_streamer.o : io/data_streamer.F90 config/neko_config.o comm/mpi_types.o comm/comm.o device/device.o common/utils.o sem/coef.o field/field.o config/num_types.o -common/sampler.o : common/sampler.f90 common/time_based_controller.o config/num_types.o common/profiler.o common/utils.o common/log.o comm/comm.o io/fld_file.o io/output.o -common/global_interpolation.o : common/global_interpolation.F90 comm/mpi_types.o math/math.o comm/comm.o sem/local_interpolation.o common/utils.o common/log.o mesh/mesh.o sem/dofmap.o sem/space.o config/num_types.o -common/profiler.o : common/profiler.F90 common/craypat.o device/hip/roctx.o device/cuda/nvtx.o device/device.o config/neko_config.o -common/craypat.o : common/craypat.F90 common/utils.o adt/stack.o -bc/bc.o : bc/bc.f90 common/utils.o adt/tuple.o adt/stack.o mesh/facet_zone.o mesh/mesh.o sem/space.o sem/dofmap.o device/device.o config/num_types.o config/neko_config.o -bc/dirichlet.o : bc/dirichlet.f90 bc/bc.o config/num_types.o bc/bcknd/device/device_dirichlet.o -bc/dong_outflow.o : bc/dong_outflow.f90 bc/bcknd/device/device_dong_outflow.o common/utils.o sem/coef.o sem/dofmap.o field/field.o bc/bc.o config/num_types.o device/device.o bc/dirichlet.o config/neko_config.o -bc/wall.o : bc/wall.f90 bc/dirichlet.o config/num_types.o bc/bcknd/device/device_wall.o -bc/inflow.o : bc/inflow.f90 bc/dirichlet.o config/num_types.o bc/bcknd/device/device_inflow.o -bc/usr_inflow.o : bc/usr_inflow.f90 common/utils.o bc/bcknd/device/device_inhom_dirichlet.o device/device.o bc/inflow.o sem/coef.o config/num_types.o -bc/usr_scalar.o : bc/usr_scalar.f90 common/utils.o bc/bcknd/device/device_inhom_dirichlet.o device/device.o bc/dirichlet.o sem/coef.o config/num_types.o -bc/facet_normal.o : bc/facet_normal.f90 common/utils.o bc/dirichlet.o sem/coef.o math/math.o config/num_types.o bc/bcknd/device/device_facet_normal.o -bc/symmetry.o : bc/symmetry.f90 adt/tuple.o adt/stack.o common/utils.o math/math.o sem/coef.o bc/bc.o bc/dirichlet.o config/num_types.o config/neko_config.o bc/bcknd/device/device_symmetry.o -bc/non_normal.o : bc/non_normal.f90 adt/stack.o common/utils.o math/math.o sem/coef.o device/device.o adt/tuple.o bc/dirichlet.o config/num_types.o config/neko_config.o bc/symmetry.o -bc/blasius.o : bc/blasius.f90 fluid/flow_profile.o bc/bcknd/device/device_inhom_dirichlet.o device/device.o bc/inflow.o common/utils.o sem/coef.o config/num_types.o -krylov/precon.o : krylov/precon.f90 config/num_types.o -krylov/krylov.o : krylov/krylov.f90 config/neko_config.o krylov/bcknd/device/pc_identity_device.o krylov/pc_identity.o bc/bc.o common/utils.o field/field.o mesh/mesh.o sem/coef.o krylov/precon.o config/num_types.o math/ax.o gs/gather_scatter.o -krylov/pc_identity.o : krylov/pc_identity.f90 config/num_types.o krylov/precon.o math/math.o -krylov/precon_fctry.o : krylov/precon_fctry.f90 config/neko_config.o common/utils.o krylov/pc_hsmg.o krylov/bcknd/device/pc_jacobi_device.o krylov/bcknd/sx/pc_jacobi_sx.o krylov/bcknd/cpu/pc_jacobi.o krylov/bcknd/device/pc_identity_device.o krylov/pc_identity.o krylov/precon.o -krylov/krylov_fctry.o : krylov/krylov_fctry.f90 config/neko_config.o common/utils.o krylov/precon.o krylov/krylov.o config/num_types.o krylov/bcknd/device/gmres_device.o krylov/bcknd/sx/gmres_sx.o krylov/bcknd/cpu/gmres.o krylov/bcknd/cpu/bicgstab.o krylov/bcknd/device/fusedcg_device.o krylov/bcknd/device/pipecg_device.o krylov/bcknd/sx/pipecg_sx.o krylov/bcknd/cpu/pipecg.o krylov/bcknd/cpu/cacg.o krylov/bcknd/device/cg_device.o krylov/bcknd/sx/cg_sx.o krylov/bcknd/cpu/cg.o -krylov/bcknd/cpu/cg.o : krylov/bcknd/cpu/cg.f90 comm/comm.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o math/ax.o krylov/precon.o krylov/krylov.o config/num_types.o -krylov/bcknd/cpu/cacg.o : krylov/bcknd/cpu/cacg.f90 math/mxm_wrapper.o comm/comm.o common/utils.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o math/ax.o krylov/precon.o krylov/krylov.o config/num_types.o -krylov/bcknd/cpu/pipecg.o : krylov/bcknd/cpu/pipecg.f90 comm/comm.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o -krylov/bcknd/cpu/bicgstab.o : krylov/bcknd/cpu/bicgstab.f90 common/utils.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o math/ax.o krylov/precon.o krylov/krylov.o config/num_types.o -krylov/bcknd/cpu/gmres.o : krylov/bcknd/cpu/gmres.f90 comm/comm.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o -krylov/bcknd/cpu/pc_jacobi.o : krylov/bcknd/cpu/pc_jacobi.f90 gs/gather_scatter.o sem/dofmap.o config/num_types.o sem/coef.o krylov/precon.o math/math.o -krylov/bcknd/sx/cg_sx.o : krylov/bcknd/sx/cg_sx.f90 math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o math/ax.o krylov/precon.o krylov/krylov.o config/num_types.o -krylov/bcknd/sx/pipecg_sx.o : krylov/bcknd/sx/pipecg_sx.f90 comm/comm.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o -krylov/bcknd/sx/gmres_sx.o : krylov/bcknd/sx/gmres_sx.f90 comm/comm.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o -krylov/bcknd/sx/pc_jacobi_sx.o : krylov/bcknd/sx/pc_jacobi_sx.f90 gs/gather_scatter.o config/num_types.o sem/dofmap.o sem/coef.o krylov/precon.o math/math.o -krylov/bcknd/device/cg_device.o : krylov/bcknd/device/cg_device.f90 math/bcknd/device/device_math.o device/device.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o math/ax.o krylov/precon.o krylov/krylov.o config/num_types.o -krylov/bcknd/device/pipecg_device.o : krylov/bcknd/device/pipecg_device.F90 comm/comm.o device/device.o math/bcknd/device/device_math.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o -krylov/bcknd/device/fusedcg_device.o : krylov/bcknd/device/fusedcg_device.F90 comm/comm.o device/device.o math/bcknd/device/device_math.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o -krylov/bcknd/device/gmres_device.o : krylov/bcknd/device/gmres_device.F90 comm/comm.o device/device.o math/bcknd/device/device_math.o math/math.o krylov/bcknd/device/pc_identity_device.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o -krylov/bcknd/device/pc_jacobi_device.o : krylov/bcknd/device/pc_jacobi_device.F90 gs/gather_scatter.o device/device.o math/bcknd/device/device_math.o config/num_types.o sem/dofmap.o sem/coef.o krylov/precon.o -krylov/bcknd/device/pc_identity_device.o : krylov/bcknd/device/pc_identity_device.f90 config/num_types.o krylov/precon.o math/bcknd/device/device_math.o device/device.o -time_schemes/time_scheme.o : time_schemes/time_scheme.f90 config/num_types.o config/neko_config.o -time_schemes/bdf_time_scheme.o : time_schemes/bdf_time_scheme.f90 common/utils.o math/math.o time_schemes/time_scheme.o config/num_types.o config/neko_config.o -time_schemes/ext_time_scheme.o : time_schemes/ext_time_scheme.f90 common/utils.o math/math.o time_schemes/time_scheme.o config/num_types.o config/neko_config.o -time_schemes/ab_time_scheme.o : time_schemes/ab_time_scheme.f90 common/utils.o math/math.o time_schemes/time_scheme.o config/num_types.o config/neko_config.o -time_schemes/time_scheme_controller.o : time_schemes/time_scheme_controller.f90 device/device.o time_schemes/ab_time_scheme.o time_schemes/ext_time_scheme.o time_schemes/bdf_time_scheme.o config/num_types.o config/neko_config.o -common/time_based_controller.o : common/time_based_controller.f90 common/utils.o config/num_types.o -common/stats_quant.o : common/stats_quant.f90 config/num_types.o -common/statistics.o : common/statistics.f90 comm/comm.o common/log.o common/stats_quant.o config/num_types.o -common/rhs_maker.o : common/rhs_maker.f90 field/field.o field/field_series.o config/num_types.o -common/rhs_maker_fctry.o : common/rhs_maker_fctry.f90 config/neko_config.o common/bcknd/device/rhs_maker_device.o common/bcknd/sx/rhs_maker_sx.o common/bcknd/cpu/rhs_maker_cpu.o common/rhs_maker.o -simulation_components/probes.o : simulation_components/probes.F90 case.o io/csv_file.o io/file.o device/device.o comm/comm.o math/tensor.o common/global_interpolation.o common/json_utils.o sem/dofmap.o field/field_registry.o simulation_components/simulation_component.o field/field_list.o common/utils.o common/log.o math/matrix.o config/num_types.o -common/bcknd/cpu/rhs_maker_cpu.o : common/bcknd/cpu/rhs_maker_cpu.f90 field/scratch_registry.o config/num_types.o field/field.o field/field_series.o common/rhs_maker.o -common/bcknd/sx/rhs_maker_sx.o : common/bcknd/sx/rhs_maker_sx.f90 field/scratch_registry.o config/num_types.o field/field.o field/field_series.o common/rhs_maker.o -common/bcknd/device/rhs_maker_device.o : common/bcknd/device/rhs_maker_device.F90 config/num_types.o field/field.o field/field_series.o common/utils.o device/device.o common/rhs_maker.o -common/material_properties.o : common/material_properties.f90 comm/comm.o common/utils.o common/user_intf.o common/log.o common/json_utils.o config/num_types.o -config/neko_config.o : config/neko_config.f90 -case.o : case.f90 common/material_properties.o mesh/point_zone_registry.o field/scratch_registry.o common/json_utils.o scalar/scalar_pnpn.o common/user_intf.o common/jobctrl.o common/log.o time_schemes/time_scheme_controller.o comm/comm.o mesh/mesh.o common/utils.o io/file.o common/statistics.o scalar/scalar_ic.o fluid/flow_ic.o common/sampler.o comm/redist.o comm/parmetis.o field/mesh_field.o io/fluid_stats_output.o io/mean_flow_output.o io/mean_sqr_flow_output.o io/chkp_output.o io/fluid_output.o fluid/fluid_fctry.o config/num_types.o -common/user_intf.o : common/user_intf.f90 common/utils.o config/num_types.o bc/usr_scalar.o bc/usr_inflow.o mesh/mesh.o sem/coef.o scalar/scalar_user_source_term.o fluid/fluid_user_source_term.o field/field.o -fluid/fluid_scheme.o : fluid/fluid_scheme.f90 common/material_properties.o common/utils.o common/user_intf.o field/scratch_registry.o common/json_utils.o field/field_registry.o common/log.o math/operators.o math/mathops.o time_schemes/time_scheme_controller.o math/math.o mesh/mesh.o bc/bc.o fluid/fluid_stats.o krylov/precon_fctry.o krylov/krylov_fctry.o bc/non_normal.o bc/symmetry.o bc/dong_outflow.o bc/dirichlet.o bc/blasius.o bc/usr_inflow.o bc/inflow.o bc/wall.o sem/coef.o krylov/krylov.o sem/dofmap.o sem/space.o field/field.o field/field_list.o fluid/fluid_source_term.o fluid/fluid_user_source_term.o config/num_types.o fluid/mean_flow.o common/checkpoint.o config/neko_config.o fluid/mean_sqr_flow.o gs/gather_scatter.o -fluid/fluid_aux.o : fluid/fluid_aux.f90 krylov/krylov.o config/num_types.o common/log.o -fluid/fluid_pnpn.o : fluid/fluid_pnpn.f90 common/material_properties.o common/json_utils.o common/profiler.o fluid/advection.o common/log.o device/device.o common/projection.o time_schemes/time_scheme_controller.o fluid/fluid_aux.o math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o bc/facet_normal.o field/field_series.o fluid/fluid_scheme.o fluid/fluid_volflow.o common/rhs_maker_fctry.o math/ax_helm_fctry.o fluid/pnpn_res_fctry.o -fluid/fluid_fctry.o : fluid/fluid_fctry.f90 config/neko_config.o common/utils.o fluid/fluid_pnpn.o fluid/fluid_scheme.o -fluid/fluid_volflow.o : fluid/fluid_volflow.f90 math/ax.o bc/bc.o field/scratch_registry.o common/json_utils.o gs/gather_scatter.o math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o config/neko_config.o comm/comm.o math/math.o time_schemes/time_scheme_controller.o sem/coef.o field/field.o sem/dofmap.o krylov/precon.o krylov/krylov.o math/mathops.o config/num_types.o math/operators.o -fluid/pnpn_res.o : fluid/pnpn_res.f90 config/num_types.o mesh/mesh.o sem/space.o bc/facet_normal.o sem/coef.o field/field.o math/ax.o gs/gather_scatter.o -fluid/pnpn_res_fctry.o : fluid/pnpn_res_fctry.f90 fluid/bcknd/sx/pnpn_res_sx.o fluid/bcknd/cpu/pnpn_res_cpu.o fluid/bcknd/device/pnpn_res_device.o fluid/pnpn_res.o common/utils.o config/neko_config.o -fluid/mean_flow.o : fluid/mean_flow.f90 field/field.o field/mean_field.o -fluid/fluid_stats.o : fluid/fluid_stats.f90 common/utils.o config/neko_config.o device/device.o common/stats_quant.o gs/gather_scatter.o field/field_list.o field/field_registry.o field/field.o sem/coef.o math/operators.o math/math.o math/mathops.o math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o field/mean_field.o -fluid/mean_sqr_flow.o : fluid/mean_sqr_flow.f90 field/field.o field/mean_sqr_field.o -fluid/flow_profile.o : fluid/flow_profile.f90 config/num_types.o -fluid/flow_ic.o : fluid/flow_ic.f90 common/json_utils.o common/user_intf.o math/math.o sem/coef.o common/utils.o field/field.o device/device.o math/bcknd/device/device_math.o fluid/flow_profile.o config/neko_config.o gs/gather_scatter.o -fluid/advection.o : fluid/advection.f90 device/device.o sem/interpolation.o math/operators.o config/neko_config.o math/bcknd/device/device_math.o sem/coef.o field/field.o sem/space.o common/utils.o math/math.o config/num_types.o -fluid/bcknd/cpu/pnpn_res_cpu.o : fluid/bcknd/cpu/pnpn_res_cpu.f90 sem/space.o config/num_types.o mesh/mesh.o field/scratch_registry.o fluid/pnpn_res.o bc/facet_normal.o sem/coef.o math/ax.o field/field.o math/operators.o gs/gather_scatter.o -fluid/bcknd/sx/pnpn_res_sx.o : fluid/bcknd/sx/pnpn_res_sx.f90 sem/space.o config/num_types.o mesh/mesh.o field/scratch_registry.o fluid/pnpn_res.o bc/facet_normal.o sem/coef.o math/ax.o field/field.o math/operators.o gs/gather_scatter.o -fluid/bcknd/device/pnpn_res_device.o : fluid/bcknd/device/pnpn_res_device.F90 field/scratch_registry.o fluid/pnpn_res.o math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o sem/space.o config/num_types.o mesh/mesh.o bc/facet_normal.o sem/coef.o math/ax.o field/field.o math/operators.o gs/gather_scatter.o -fluid/fluid_user_source_term.o : fluid/fluid_user_source_term.f90 sem/dofmap.o math/math.o math/bcknd/device/device_math.o device/device.o sem/coef.o field/field_list.o source_terms/source_term.o common/utils.o config/num_types.o config/neko_config.o -fluid/fluid_source_term.o : fluid/fluid_source_term.f90 common/user_intf.o sem/coef.o common/json_utils.o field/field_list.o field/field.o source_terms/source_term_factory.o source_terms/source_term.o fluid/fluid_user_source_term.o config/num_types.o config/neko_config.o -simulation.o : simulation.f90 common/json_utils.o simulation_components/simulation_component_global.o common/profiler.o field/field.o common/jobctrl.o math/bcknd/device/device_math.o device/device.o common/log.o math/math.o io/file.o time_schemes/time_scheme_controller.o gs/gather_scatter.o case.o -math/ax_helm_fctry.o : math/ax_helm_fctry.f90 math/bcknd/cpu/ax_helm.o math/bcknd/sx/ax_helm_sx.o math/bcknd/xsmm/ax_helm_xsmm.o math/bcknd/device/ax_helm_device.o math/ax.o config/neko_config.o -math/bcknd/cpu/ax_helm.o : math/bcknd/cpu/ax_helm.f90 math/math.o mesh/mesh.o sem/space.o sem/coef.o config/num_types.o math/ax.o -math/bcknd/sx/ax_helm_sx.o : math/bcknd/sx/ax_helm_sx.f90 math/math.o mesh/mesh.o sem/space.o sem/coef.o config/num_types.o math/ax.o -math/bcknd/xsmm/ax_helm_xsmm.o : math/bcknd/xsmm/ax_helm_xsmm.F90 math/mxm_wrapper.o mesh/mesh.o sem/space.o sem/coef.o config/num_types.o math/ax.o -math/bcknd/device/ax_helm_device.o : math/bcknd/device/ax_helm_device.F90 device/device.o math/bcknd/device/device_math.o mesh/mesh.o sem/space.o sem/coef.o config/num_types.o math/ax.o -common/projection.o : common/projection.f90 common/log.o common/profiler.o common/bcknd/device/device_projection.o math/bcknd/device/device_math.o device/device.o config/neko_config.o gs/gather_scatter.o comm/comm.o bc/bc.o math/ax.o sem/coef.o math/math.o config/num_types.o -common/bcknd/device/device_projection.o : common/bcknd/device/device_projection.F90 common/utils.o config/num_types.o -comm/parmetis.o : comm/parmetis.F90 mesh/mesh.o field/mesh_field.o config/num_types.o common/utils.o mesh/point.o comm/comm.o -comm/redist.o : comm/redist.f90 mesh/element.o mesh/facet_zone.o io/format/nmsh.o mesh/mesh.o comm/comm.o mesh/curve.o adt/stack.o mesh/point.o adt/htable.o comm/mpi_types.o field/mesh_field.o -krylov/pc_hsmg.o : krylov/pc_hsmg.f90 krylov/krylov_fctry.o krylov/krylov.o mesh/mesh.o sem/coef.o field/field.o sem/dofmap.o sem/space.o common/profiler.o math/bcknd/device/device_math.o device/device.o krylov/bcknd/device/pc_jacobi_device.o krylov/bcknd/sx/pc_jacobi_sx.o krylov/bcknd/cpu/pc_jacobi.o math/schwarz.o bc/dirichlet.o bc/bc.o sem/interpolation.o gs/gather_scatter.o math/ax_helm_fctry.o math/ax.o krylov/precon.o common/utils.o math/math.o config/num_types.o config/neko_config.o -common/signal.o : common/signal.f90 common/utils.o -common/jobctrl.o : common/jobctrl.f90 common/log.o comm/comm.o common/utils.o common/signal.o config/num_types.o -device/cuda_intf.o : device/cuda_intf.F90 common/utils.o -device/hip_intf.o : device/hip_intf.F90 common/utils.o -device/cuda/nvtx.o : device/cuda/nvtx.F90 -device/hip/roctx.o : device/hip/roctx.F90 -device/opencl_intf.o : device/opencl_intf.F90 common/utils.o config/num_types.o -device/opencl/prgm_lib.o : device/opencl/prgm_lib.F90 common/utils.o device/opencl_intf.o -device/dummy_device.o : device/dummy_device.F90 -device/device.o : device/device.F90 device/opencl/prgm_lib.o device/dummy_device.o common/utils.o adt/htable.o device/hip_intf.o device/cuda_intf.o device/opencl_intf.o config/num_types.o -math/bcknd/device/device_math.o : math/bcknd/device/device_math.F90 config/num_types.o common/utils.o comm/comm.o -math/bcknd/device/device_schwarz.o : math/bcknd/device/device_schwarz.F90 device/device.o common/utils.o config/num_types.o -math/bcknd/device/tensor_device.o : math/bcknd/device/tensor_device.F90 common/utils.o -math/bcknd/device/fdm_device.o : math/bcknd/device/fdm_device.F90 device/device.o common/utils.o config/num_types.o -math/bcknd/device/device_mathops.o : math/bcknd/device/device_mathops.F90 common/utils.o config/num_types.o -bc/bcknd/device/device_dirichlet.o : bc/bcknd/device/device_dirichlet.F90 common/utils.o config/num_types.o -bc/bcknd/device/device_inflow.o : bc/bcknd/device/device_inflow.F90 common/utils.o config/num_types.o -bc/bcknd/device/device_wall.o : bc/bcknd/device/device_wall.F90 common/utils.o -bc/bcknd/device/device_symmetry.o : bc/bcknd/device/device_symmetry.F90 common/utils.o config/num_types.o -bc/bcknd/device/device_facet_normal.o : bc/bcknd/device/device_facet_normal.F90 common/utils.o -bc/bcknd/device/device_inhom_dirichlet.o : bc/bcknd/device/device_inhom_dirichlet.F90 common/utils.o config/num_types.o -bc/bcknd/device/device_dong_outflow.o : bc/bcknd/device/device_dong_outflow.F90 common/utils.o config/num_types.o -scalar/bcknd/device/scalar_residual_device.o : scalar/bcknd/device/scalar_residual_device.F90 math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o math/operators.o gs/gather_scatter.o scalar/scalar_residual.o -scalar/scalar_scheme.o : scalar/scalar_scheme.f90 scalar/scalar_source_term.o common/utils.o common/material_properties.o common/user_intf.o common/json_utils.o bc/usr_scalar.o field/field_registry.o common/log.o time_schemes/time_scheme_controller.o mesh/facet_zone.o mesh/mesh.o bc/bc.o krylov/precon_fctry.o krylov/pc_hsmg.o krylov/bcknd/sx/pc_jacobi_sx.o krylov/bcknd/device/pc_jacobi_device.o krylov/bcknd/cpu/pc_jacobi.o krylov/krylov_fctry.o bc/dirichlet.o sem/coef.o krylov/krylov.o sem/dofmap.o sem/space.o field/field.o config/num_types.o common/checkpoint.o gs/gather_scatter.o -scalar/scalar_pnpn.o : scalar/scalar_pnpn.f90 config/neko_config.o common/material_properties.o common/user_intf.o common/json_utils.o common/profiler.o fluid/advection.o common/log.o math/math.o common/projection.o time_schemes/time_scheme_controller.o scalar/scalar_aux.o math/bcknd/device/device_math.o krylov/krylov.o bc/facet_normal.o field/field_series.o math/ax.o scalar/scalar_residual.o gs/gather_scatter.o device/device.o sem/coef.o common/checkpoint.o mesh/mesh.o bc/bc.o field/field.o bc/dirichlet.o scalar/scalar_scheme.o common/rhs_maker_fctry.o math/ax_helm_fctry.o scalar/scalar_residual_fctry.o config/num_types.o -scalar/scalar_aux.o : scalar/scalar_aux.f90 krylov/krylov.o config/num_types.o common/log.o -scalar/scalar_residual.o : scalar/scalar_residual.f90 config/num_types.o mesh/mesh.o sem/space.o bc/facet_normal.o scalar/source_scalar.o sem/coef.o field/field.o math/ax.o gs/gather_scatter.o -scalar/scalar_residual_fctry.o : scalar/scalar_residual_fctry.f90 scalar/bcknd/sx/scalar_residual_sx.o scalar/bcknd/cpu/scalar_residual_cpu.o scalar/bcknd/device/scalar_residual_device.o scalar/scalar_residual.o config/neko_config.o -scalar/scalar_ic.o : scalar/scalar_ic.f90 common/json_utils.o common/user_intf.o math/math.o sem/coef.o common/utils.o field/field.o device/device.o math/bcknd/device/device_math.o config/num_types.o config/neko_config.o gs/gather_scatter.o -scalar/scalar_source_term.o : scalar/scalar_source_term.f90 common/user_intf.o sem/coef.o common/json_utils.o field/field_list.o field/field.o source_terms/source_term_factory.o source_terms/source_term.o scalar/scalar_user_source_term.o config/num_types.o config/neko_config.o -scalar/scalar_user_source_term.o : scalar/scalar_user_source_term.f90 sem/dofmap.o math/math.o math/bcknd/device/device_math.o device/device.o sem/coef.o field/field_list.o source_terms/source_term.o common/utils.o config/num_types.o config/neko_config.o -scalar/bcknd/cpu/scalar_residual_cpu.o : scalar/bcknd/cpu/scalar_residual_cpu.f90 math/operators.o scalar/scalar_residual.o gs/gather_scatter.o -scalar/bcknd/sx/scalar_residual_sx.o : scalar/bcknd/sx/scalar_residual_sx.f90 math/operators.o scalar/scalar_residual.o gs/gather_scatter.o -scalar/source_scalar.o : scalar/source_scalar.f90 math/bcknd/device/device_math.o device/device.o common/utils.o sem/dofmap.o config/num_types.o config/neko_config.o -simulation_components/simulation_component.o : simulation_components/simulation_component.f90 common/json_utils.o common/time_based_controller.o case.o config/num_types.o -simulation_components/simcomp_executor.o : simulation_components/simcomp_executor.f90 case.o common/json_utils.o simulation_components/simulation_component_factory.o simulation_components/simulation_component.o config/num_types.o -simulation_components/vorticity.o : simulation_components/vorticity.f90 case.o math/operators.o field/field.o field/field_registry.o simulation_components/simulation_component.o config/num_types.o -simulation_components/lambda2.o : simulation_components/lambda2.f90 device/device.o case.o math/operators.o field/field.o field/field_registry.o simulation_components/simulation_component.o config/num_types.o -simulation_components/scalar.o : simulation_components/scalar.f90 common/log.o scalar/scalar_pnpn.o case.o math/operators.o field/field.o field/field_registry.o simulation_components/simulation_component.o config/num_types.o -simulation_components/simulation_component_factory.o : simulation_components/simulation_component_factory.f90 common/json_utils.o case.o simulation_components/probes.o simulation_components/scalar.o simulation_components/lambda2.o simulation_components/vorticity.o simulation_components/simulation_component.o -source_terms/source_term.o : source_terms/source_term.f90 field/field_list.o sem/coef.o config/num_types.o config/neko_config.o -source_terms/const_source_term.o : source_terms/const_source_term.f90 source_terms/bcknd/device/const_source_term_device.o source_terms/bcknd/cpu/const_source_term_cpu.o common/utils.o config/neko_config.o sem/coef.o source_terms/source_term.o common/json_utils.o field/field_list.o config/num_types.o -source_terms/bcknd/cpu/const_source_term_cpu.o : source_terms/bcknd/cpu/const_source_term_cpu.f90 math/math.o field/field_list.o config/num_types.o -source_terms/bcknd/device/const_source_term_device.o : source_terms/bcknd/device/const_source_term_device.f90 math/bcknd/device/device_math.o field/field_list.o config/num_types.o -source_terms/source_term_factory.o : source_terms/source_term_factory.f90 sem/coef.o common/utils.o field/field_list.o common/json_utils.o source_terms/const_source_term.o source_terms/source_term.o -neko.o : neko.f90 mesh/point_zone_registry.o mesh/point_zones/sphere_point_zone.o mesh/point_zones/box_point_zone.o mesh/point_zone.o sem/point_interpolator.o common/time_interpolator.o io/data_streamer.o simulation_components/simcomp_executor.o field/scratch_registry.o field/field_registry.o common/system.o sem/spectral_error_indicator.o simulation_components/probes.o simulation_components/simulation_component.o math/tensor.o math/vector.o fluid/fluid_user_source_term.o field/field_list.o fluid/fluid_stats.o sem/cpr.o math/bcknd/device/device_math.o device/device.o common/jobctrl.o common/signal.o comm/parmetis.o common/user_intf.o common/projection.o math/mathops.o math/operators.o simulation.o io/output.o common/sampler.o case.o config/neko_config.o math/ax.o math/ax_helm_fctry.o krylov/precon_fctry.o krylov/krylov_fctry.o bc/dirichlet.o bc/wall.o bc/bc.o sem/coef.o gs/gather_scatter.o comm/mpi_types.o field/field.o io/file.o common/global_interpolation.o math/mxm_wrapper.o io/format/map.o field/mesh_field.o mesh/point.o mesh/mesh.o adt/tuple.o adt/stack.o adt/uset.o adt/htable.o sem/space.o sem/dofmap.o sem/speclib.o math/math.o common/log.o common/utils.o comm/comm.o config/num_types.o -driver.o : driver.f90 neko.o +config/num_types.o : config/num_types.f90 +common/structs.o : common/structs.f90 config/num_types.o +io/format/nmsh.o : io/format/nmsh.f90 config/num_types.o +io/format/re2.o : io/format/re2.f90 config/num_types.o +io/format/map.o : io/format/map.f90 mesh/mesh.o +io/format/stl.o : io/format/stl.f90 config/num_types.o +common/log.o : common/log.f90 config/num_types.o comm/comm.o +comm/comm.o : comm/comm.F90 config/neko_config.o common/utils.o +mesh/curve.o : mesh/curve.f90 common/utils.o adt/stack.o common/structs.o config/num_types.o +comm/mpi_types.o : comm/mpi_types.f90 io/format/stl.o io/format/nmsh.o io/format/re2.o comm/comm.o +common/datadist.o : common/datadist.f90 +common/distdata.o : common/distdata.f90 adt/uset.o adt/tuple.o adt/stack.o +common/utils.o : common/utils.f90 +common/json_utils.o : common/json_utils.f90 common/utils.o config/num_types.o +common/system.o : common/system.f90 +math/mxm_wrapper.o : math/mxm_wrapper.F90 common/utils.o config/num_types.o +sem/speclib.o : sem/speclib.f90 common/utils.o config/num_types.o +sem/local_interpolation.o : sem/local_interpolation.f90 config/neko_config.o math/bcknd/device/device_math.o device/device.o field/field_list.o field/field.o common/utils.o math/fast3d.o math/math.o mesh/point.o config/num_types.o sem/space.o math/tensor.o +math/math.o : math/math.f90 comm/comm.o config/num_types.o +math/mathops.o : math/mathops.f90 config/num_types.o +math/fast3d.o : math/fast3d.f90 math/math.o sem/speclib.o config/num_types.o +sem/space.o : sem/space.f90 math/mxm_wrapper.o math/tensor.o math/math.o math/fast3d.o common/utils.o device/device.o sem/speclib.o config/num_types.o config/neko_config.o +sem/dofmap.o : sem/dofmap.f90 mesh/hex.o mesh/quad.o mesh/element.o math/math.o device/device.o math/tensor.o math/fast3d.o common/utils.o config/num_types.o adt/tuple.o sem/space.o mesh/mesh.o config/neko_config.o +sem/coef.o : sem/coef.f90 device/device.o math/mxm_wrapper.o sem/bcknd/device/device_coef.o math/bcknd/device/device_math.o mesh/mesh.o math/math.o sem/space.o sem/dofmap.o config/num_types.o config/neko_config.o gs/gs_ops.o gs/gather_scatter.o +sem/cpr.o : sem/cpr.f90 sem/dofmap.o common/log.o math/mxm_wrapper.o math/tensor.o sem/coef.o mesh/mesh.o math/math.o sem/space.o field/field.o config/num_types.o config/neko_config.o gs/gather_scatter.o +sem/spectral_error_indicator.o : sem/spectral_error_indicator.f90 common/utils.o comm/comm.o device/device.o config/neko_config.o gs/gather_scatter.o math/bcknd/device/device_math.o math/tensor.o io/file.o math/math.o field/field_list.o sem/coef.o field/field.o config/num_types.o +common/time_interpolator.o : common/time_interpolator.f90 common/utils.o math/math.o math/bcknd/device/device_math.o config/neko_config.o field/field.o config/num_types.o +sem/interpolation.o : sem/interpolation.f90 sem/space.o math/bcknd/cpu/tensor_cpu.o math/tensor.o math/fast3d.o device/device.o config/num_types.o config/neko_config.o +sem/point_interpolator.o : sem/point_interpolator.f90 config/neko_config.o math/bcknd/device/device_math.o device/device.o common/utils.o math/fast3d.o math/math.o mesh/point.o config/num_types.o sem/space.o math/tensor.o +sem/bcknd/device/device_coef.o : sem/bcknd/device/device_coef.F90 common/utils.o config/num_types.o +gs/gs_bcknd.o : gs/gs_bcknd.f90 config/num_types.o +gs/bcknd/cpu/gs_cpu.o : gs/bcknd/cpu/gs_cpu.f90 gs/gs_ops.o gs/gs_bcknd.o config/num_types.o +gs/bcknd/sx/gs_sx.o : gs/bcknd/sx/gs_sx.f90 gs/gs_ops.o gs/gs_bcknd.o config/num_types.o +gs/bcknd/device/gs_device.o : gs/bcknd/device/gs_device.F90 common/utils.o gs/gs_ops.o device/device.o gs/gs_bcknd.o config/num_types.o config/neko_config.o +gs/gs_ops.o : gs/gs_ops.f90 +gs/gs_comm.o : gs/gs_comm.f90 adt/stack.o comm/comm.o config/num_types.o +gs/gs_mpi.o : gs/gs_mpi.f90 comm/comm.o adt/stack.o gs/gs_ops.o gs/gs_comm.o config/num_types.o config/neko_config.o +gs/bcknd/device/gs_device_mpi.o : gs/bcknd/device/gs_device_mpi.F90 common/utils.o device/device.o adt/htable.o comm/comm.o adt/stack.o gs/gs_ops.o gs/gs_comm.o config/num_types.o +gs/gather_scatter.o : gs/gather_scatter.f90 device/device.o common/profiler.o common/log.o common/utils.o adt/stack.o adt/htable.o config/num_types.o field/field.o sem/dofmap.o comm/comm.o mesh/mesh.o gs/bcknd/device/gs_device_mpi.o gs/gs_mpi.o gs/gs_comm.o gs/gs_ops.o gs/bcknd/cpu/gs_cpu.o gs/bcknd/sx/gs_sx.o gs/bcknd/device/gs_device.o gs/gs_bcknd.o config/neko_config.o +mesh/entity.o : mesh/entity.f90 +mesh/point.o : mesh/point.f90 mesh/entity.o math/math.o config/num_types.o +mesh/element.o : mesh/element.f90 mesh/point.o adt/tuple.o mesh/entity.o config/num_types.o +math/ax.o : math/ax.f90 mesh/mesh.o sem/space.o sem/coef.o config/num_types.o +mesh/quad.o : mesh/quad.f90 mesh/point.o adt/tuple.o mesh/element.o config/num_types.o +mesh/hex.o : mesh/hex.f90 mesh/point.o adt/tuple.o mesh/element.o config/num_types.o +mesh/tet.o : mesh/tet.f90 mesh/point.o adt/tuple.o mesh/element.o config/num_types.o +mesh/tri.o : mesh/tri.f90 mesh/point.o adt/tuple.o mesh/element.o config/num_types.o +adt/htable.o : adt/htable.f90 math/math.o adt/tuple.o mesh/point.o common/utils.o config/num_types.o +adt/uset.o : adt/uset.f90 adt/htable.o config/num_types.o common/utils.o +adt/stack.o : adt/stack.f90 adt/tuple.o math/math.o common/structs.o mesh/point.o common/utils.o io/format/nmsh.o config/num_types.o +adt/tuple.o : adt/tuple.f90 config/num_types.o math/math.o +mesh/facet_zone.o : mesh/facet_zone.f90 common/utils.o adt/stack.o adt/tuple.o +mesh/point_zone.o : mesh/point_zone.f90 device/device.o config/neko_config.o sem/dofmap.o common/utils.o config/num_types.o adt/stack.o +mesh/point_zones/sphere_point_zone.o : mesh/point_zones/sphere_point_zone.f90 math/math.o common/json_utils.o config/num_types.o mesh/point_zone.o +mesh/point_zones/box_point_zone.o : mesh/point_zones/box_point_zone.f90 math/math.o common/json_utils.o config/num_types.o mesh/point_zone.o +mesh/point_zone_factory.o : mesh/point_zone_factory.f90 common/utils.o sem/dofmap.o common/json_utils.o mesh/point_zones/sphere_point_zone.o mesh/point_zones/box_point_zone.o mesh/point_zone.o +mesh/point_zone_registry.o : mesh/point_zone_registry.f90 common/json_utils.o common/utils.o sem/dofmap.o mesh/point_zone_factory.o mesh/point_zone.o +mesh/mesh.o : mesh/mesh.f90 mesh/curve.o adt/uset.o math/math.o mesh/facet_zone.o comm/comm.o common/distdata.o common/datadist.o adt/htable.o adt/tuple.o adt/stack.o common/utils.o mesh/quad.o mesh/hex.o mesh/element.o mesh/point.o config/num_types.o +mesh/octree.o : mesh/octree.f90 common/utils.o mesh/point.o config/num_types.o +mesh/tet_mesh.o : mesh/tet_mesh.f90 common/utils.o mesh/point.o mesh/tet.o mesh/mesh.o +mesh/tri_mesh.o : mesh/tri_mesh.f90 mesh/point.o mesh/tri.o +field/field_registry.o : field/field_registry.f90 adt/htable.o common/utils.o sem/dofmap.o field/field.o +field/scratch_registry.o : field/scratch_registry.f90 sem/dofmap.o field/field.o +field/field.o : field/field.f90 sem/dofmap.o sem/space.o mesh/mesh.o math/math.o device/device.o config/num_types.o math/bcknd/device/device_math.o config/neko_config.o +field/field_list.o : field/field_list.f90 field/field.o +field/field_series.o : field/field_series.f90 field/field.o config/num_types.o +field/mesh_field.o : field/mesh_field.f90 mesh/mesh.o +field/mean_field.o : field/mean_field.f90 math/bcknd/device/device_math.o math/math.o field/field.o config/num_types.o common/stats_quant.o config/neko_config.o +field/mean_sqr_field.o : field/mean_sqr_field.f90 math/math.o math/bcknd/device/device_math.o field/mean_field.o config/neko_config.o config/num_types.o +io/format/rea.o : io/format/rea.f90 mesh/mesh.o config/num_types.o +math/bcknd/cpu/cdtp.o : math/bcknd/cpu/cdtp.f90 config/num_types.o +math/bcknd/cpu/conv1.o : math/bcknd/cpu/conv1.f90 config/num_types.o +math/bcknd/cpu/dudxyz.o : math/bcknd/cpu/dudxyz.f90 config/num_types.o +math/bcknd/cpu/opgrad.o : math/bcknd/cpu/opgrad.f90 config/num_types.o +math/bcknd/sx/sx_cdtp.o : math/bcknd/sx/sx_cdtp.f90 math/math.o config/num_types.o +math/bcknd/sx/sx_conv1.o : math/bcknd/sx/sx_conv1.f90 config/num_types.o +math/bcknd/sx/sx_dudxyz.o : math/bcknd/sx/sx_dudxyz.f90 math/math.o config/num_types.o +math/bcknd/sx/sx_opgrad.o : math/bcknd/sx/sx_opgrad.f90 config/num_types.o +math/bcknd/sx/sx_cfl.o : math/bcknd/sx/sx_cfl.f90 config/num_types.o +math/operators.o : math/operators.f90 math/bcknd/device/device_math.o device/device.o comm/comm.o math/math.o field/field.o sem/coef.o sem/space.o math/bcknd/device/opr_device.o math/bcknd/xsmm/opr_xsmm.o math/bcknd/sx/opr_sx.o math/bcknd/cpu/opr_cpu.o config/num_types.o config/neko_config.o +math/bcknd/cpu/opr_cpu.o : math/bcknd/cpu/opr_cpu.f90 math/mathops.o gs/gather_scatter.o field/field.o math/math.o sem/coef.o sem/space.o config/num_types.o math/bcknd/cpu/conv1.o math/bcknd/cpu/cdtp.o math/bcknd/cpu/opgrad.o math/bcknd/cpu/dudxyz.o +math/bcknd/sx/opr_sx.o : math/bcknd/sx/opr_sx.f90 math/mathops.o field/field.o math/math.o sem/coef.o sem/space.o config/num_types.o gs/gather_scatter.o math/bcknd/sx/sx_cfl.o math/bcknd/sx/sx_cdtp.o math/bcknd/sx/sx_conv1.o math/bcknd/sx/sx_opgrad.o math/bcknd/sx/sx_dudxyz.o +math/bcknd/xsmm/opr_xsmm.o : math/bcknd/xsmm/opr_xsmm.F90 math/mathops.o gs/gather_scatter.o field/field.o mesh/mesh.o math/math.o sem/coef.o sem/space.o math/mxm_wrapper.o config/num_types.o +math/bcknd/device/opr_device.o : math/bcknd/device/opr_device.F90 comm/comm.o common/utils.o field/field.o mesh/mesh.o sem/coef.o sem/space.o device/device.o math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o config/num_types.o gs/gather_scatter.o +math/tensor.o : math/tensor.f90 device/device.o config/neko_config.o math/mxm_wrapper.o config/num_types.o math/bcknd/device/tensor_device.o math/bcknd/sx/tensor_sx.o math/bcknd/cpu/tensor_cpu.o math/bcknd/xsmm/tensor_xsmm.o +math/bcknd/cpu/tensor_cpu.o : math/bcknd/cpu/tensor_cpu.f90 math/mxm_wrapper.o config/num_types.o +math/bcknd/sx/tensor_sx.o : math/bcknd/sx/tensor_sx.f90 math/mxm_wrapper.o config/num_types.o +math/bcknd/xsmm/tensor_xsmm.o : math/bcknd/xsmm/tensor_xsmm.F90 math/mxm_wrapper.o config/num_types.o +math/fdm.o : math/fdm.f90 comm/comm.o common/utils.o device/device.o math/bcknd/device/fdm_device.o math/bcknd/cpu/fdm_cpu.o math/bcknd/xsmm/fdm_xsmm.o math/bcknd/sx/fdm_sx.o math/tensor.o math/fast3d.o gs/gather_scatter.o sem/dofmap.o sem/space.o mesh/mesh.o math/math.o sem/speclib.o config/num_types.o config/neko_config.o +math/bcknd/cpu/fdm_cpu.o : math/bcknd/cpu/fdm_cpu.f90 math/bcknd/cpu/tensor_cpu.o config/num_types.o +math/bcknd/sx/fdm_sx.o : math/bcknd/sx/fdm_sx.f90 math/bcknd/sx/tensor_sx.o config/num_types.o +math/bcknd/xsmm/fdm_xsmm.o : math/bcknd/xsmm/fdm_xsmm.f90 math/bcknd/xsmm/tensor_xsmm.o config/num_types.o +math/schwarz.o : math/schwarz.f90 config/neko_config.o device/device.o math/fdm.o math/bcknd/device/device_math.o math/bcknd/device/device_schwarz.o gs/gather_scatter.o bc/bc.o sem/dofmap.o sem/space.o mesh/mesh.o math/math.o config/num_types.o +math/vector.o : math/vector.f90 common/utils.o math/bcknd/device/device_math.o device/device.o config/num_types.o config/neko_config.o +math/matrix.o : math/matrix.f90 common/utils.o math/bcknd/device/device_math.o device/device.o config/num_types.o config/neko_config.o +common/checkpoint.o : common/checkpoint.f90 mesh/mesh.o common/utils.o field/field.o device/device.o sem/space.o field/field_series.o config/num_types.o config/neko_config.o +io/generic_file.o : io/generic_file.f90 config/num_types.o +io/map_file.o : io/map_file.f90 io/format/map.o comm/comm.o common/utils.o io/generic_file.o +io/re2_file.o : io/re2_file.f90 common/log.o adt/htable.o io/map_file.o io/format/map.o io/format/re2.o common/datadist.o comm/mpi_types.o comm/comm.o mesh/point.o mesh/mesh.o common/utils.o config/num_types.o io/generic_file.o +io/rea_file.o : io/rea_file.f90 common/log.o adt/htable.o common/datadist.o comm/comm.o io/map_file.o io/re2_file.o io/format/rea.o io/format/map.o mesh/point.o mesh/mesh.o common/utils.o config/num_types.o io/generic_file.o +io/fld_file.o : io/fld_file.f90 comm/mpi_types.o math/math.o common/datadist.o comm/comm.o common/utils.o mesh/mesh.o fluid/mean_sqr_flow.o fluid/mean_flow.o io/fld_file_data.o math/vector.o common/structs.o sem/space.o sem/dofmap.o field/field_list.o field/field.o io/generic_file.o +io/fld_file_data.o : io/fld_file_data.f90 math/vector.o math/math.o config/num_types.o +io/vtk_file.o : io/vtk_file.f90 comm/comm.o common/log.o mesh/tri_mesh.o mesh/tet_mesh.o field/mesh_field.o sem/dofmap.o field/field.o mesh/mesh.o common/utils.o io/generic_file.o config/num_types.o +io/stl_file.o : io/stl_file.f90 io/format/stl.o comm/comm.o comm/mpi_types.o mesh/point.o common/log.o mesh/tri_mesh.o io/generic_file.o config/num_types.o +io/nmsh_file.o : io/nmsh_file.f90 common/log.o comm/mpi_types.o common/datadist.o mesh/element.o io/format/nmsh.o adt/tuple.o mesh/point.o common/utils.o mesh/mesh.o comm/comm.o io/generic_file.o +io/chkp_file.o : io/chkp_file.f90 common/global_interpolation.o comm/comm.o comm/mpi_types.o sem/interpolation.o math/math.o mesh/mesh.o sem/space.o common/utils.o math/bcknd/device/device_math.o sem/dofmap.o field/field.o config/num_types.o common/checkpoint.o field/field_series.o io/generic_file.o +io/csv_file.o : io/csv_file.f90 comm/comm.o common/log.o config/num_types.o common/utils.o io/generic_file.o math/matrix.o math/vector.o +io/file.o : io/file.f90 io/csv_file.o io/stl_file.o io/vtk_file.o io/fld_file_data.o io/fld_file.o io/re2_file.o io/rea_file.o io/map_file.o io/chkp_file.o io/nmsh_file.o io/generic_file.o common/utils.o +io/output.o : io/output.f90 io/file.o config/num_types.o +io/fluid_output.o : io/fluid_output.f90 io/output.o device/device.o config/neko_config.o field/field_list.o scalar/scalar_scheme.o fluid/fluid_scheme.o +io/chkp_output.o : io/chkp_output.f90 config/num_types.o io/output.o common/checkpoint.o +io/mean_flow_output.o : io/mean_flow_output.f90 io/output.o device/device.o config/num_types.o fluid/mean_flow.o +io/fluid_stats_output.o : io/fluid_stats_output.f90 io/output.o device/device.o config/num_types.o config/neko_config.o fluid/fluid_stats.o +io/mean_sqr_flow_output.o : io/mean_sqr_flow_output.f90 io/output.o config/num_types.o fluid/mean_sqr_flow.o +io/data_streamer.o : io/data_streamer.F90 config/neko_config.o comm/mpi_types.o comm/comm.o device/device.o common/utils.o sem/coef.o field/field.o config/num_types.o +common/sampler.o : common/sampler.f90 common/time_based_controller.o config/num_types.o common/profiler.o common/utils.o common/log.o comm/comm.o io/fld_file.o io/output.o +common/global_interpolation.o : common/global_interpolation.F90 comm/mpi_types.o math/math.o comm/comm.o sem/local_interpolation.o common/utils.o common/log.o mesh/mesh.o sem/dofmap.o sem/space.o config/num_types.o +common/profiler.o : common/profiler.F90 common/craypat.o device/hip/roctx.o device/cuda/nvtx.o device/device.o config/neko_config.o +common/craypat.o : common/craypat.F90 common/utils.o adt/stack.o +bc/bc.o : bc/bc.f90 common/utils.o adt/tuple.o adt/stack.o mesh/facet_zone.o mesh/mesh.o sem/space.o sem/dofmap.o device/device.o config/num_types.o config/neko_config.o +bc/dirichlet.o : bc/dirichlet.f90 bc/bc.o config/num_types.o bc/bcknd/device/device_dirichlet.o +bc/dong_outflow.o : bc/dong_outflow.f90 bc/bcknd/device/device_dong_outflow.o common/utils.o sem/coef.o sem/dofmap.o field/field.o bc/bc.o config/num_types.o device/device.o bc/dirichlet.o config/neko_config.o +bc/wall.o : bc/wall.f90 bc/dirichlet.o config/num_types.o bc/bcknd/device/device_wall.o +bc/inflow.o : bc/inflow.f90 bc/dirichlet.o config/num_types.o bc/bcknd/device/device_inflow.o +bc/usr_inflow.o : bc/usr_inflow.f90 common/utils.o bc/bcknd/device/device_inhom_dirichlet.o device/device.o bc/inflow.o sem/coef.o config/num_types.o +bc/usr_scalar.o : bc/usr_scalar.f90 common/utils.o bc/bcknd/device/device_inhom_dirichlet.o device/device.o bc/dirichlet.o sem/coef.o config/num_types.o +bc/facet_normal.o : bc/facet_normal.f90 common/utils.o bc/dirichlet.o sem/coef.o math/math.o config/num_types.o bc/bcknd/device/device_facet_normal.o +bc/symmetry.o : bc/symmetry.f90 adt/tuple.o adt/stack.o common/utils.o math/math.o sem/coef.o bc/bc.o bc/dirichlet.o config/num_types.o config/neko_config.o bc/bcknd/device/device_symmetry.o +bc/non_normal.o : bc/non_normal.f90 adt/stack.o common/utils.o math/math.o sem/coef.o device/device.o adt/tuple.o bc/dirichlet.o config/num_types.o config/neko_config.o bc/symmetry.o +bc/blasius.o : bc/blasius.f90 fluid/flow_profile.o bc/bcknd/device/device_inhom_dirichlet.o device/device.o bc/inflow.o common/utils.o sem/coef.o config/num_types.o +krylov/precon.o : krylov/precon.f90 config/num_types.o +krylov/krylov.o : krylov/krylov.f90 config/neko_config.o krylov/bcknd/device/pc_identity_device.o krylov/pc_identity.o bc/bc.o common/utils.o field/field.o mesh/mesh.o sem/coef.o krylov/precon.o config/num_types.o math/ax.o gs/gather_scatter.o +krylov/pc_identity.o : krylov/pc_identity.f90 config/num_types.o krylov/precon.o math/math.o +krylov/precon_fctry.o : krylov/precon_fctry.f90 config/neko_config.o common/utils.o krylov/pc_hsmg.o krylov/bcknd/device/pc_jacobi_device.o krylov/bcknd/sx/pc_jacobi_sx.o krylov/bcknd/cpu/pc_jacobi.o krylov/bcknd/device/pc_identity_device.o krylov/pc_identity.o krylov/precon.o +krylov/krylov_fctry.o : krylov/krylov_fctry.f90 config/neko_config.o common/utils.o krylov/precon.o krylov/krylov.o config/num_types.o krylov/bcknd/device/gmres_device.o krylov/bcknd/sx/gmres_sx.o krylov/bcknd/cpu/gmres.o krylov/bcknd/cpu/bicgstab.o krylov/bcknd/device/fusedcg_device.o krylov/bcknd/device/pipecg_device.o krylov/bcknd/sx/pipecg_sx.o krylov/bcknd/cpu/pipecg.o krylov/bcknd/cpu/cacg.o krylov/bcknd/device/cg_device.o krylov/bcknd/sx/cg_sx.o krylov/bcknd/cpu/cg.o +krylov/bcknd/cpu/cg.o : krylov/bcknd/cpu/cg.f90 comm/comm.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o math/ax.o krylov/precon.o krylov/krylov.o config/num_types.o +krylov/bcknd/cpu/cacg.o : krylov/bcknd/cpu/cacg.f90 math/mxm_wrapper.o comm/comm.o common/utils.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o math/ax.o krylov/precon.o krylov/krylov.o config/num_types.o +krylov/bcknd/cpu/pipecg.o : krylov/bcknd/cpu/pipecg.f90 comm/comm.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o +krylov/bcknd/cpu/bicgstab.o : krylov/bcknd/cpu/bicgstab.f90 common/utils.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o math/ax.o krylov/precon.o krylov/krylov.o config/num_types.o +krylov/bcknd/cpu/gmres.o : krylov/bcknd/cpu/gmres.f90 comm/comm.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o +krylov/bcknd/cpu/pc_jacobi.o : krylov/bcknd/cpu/pc_jacobi.f90 gs/gather_scatter.o sem/dofmap.o config/num_types.o sem/coef.o krylov/precon.o math/math.o +krylov/bcknd/sx/cg_sx.o : krylov/bcknd/sx/cg_sx.f90 math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o math/ax.o krylov/precon.o krylov/krylov.o config/num_types.o +krylov/bcknd/sx/pipecg_sx.o : krylov/bcknd/sx/pipecg_sx.f90 comm/comm.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o +krylov/bcknd/sx/gmres_sx.o : krylov/bcknd/sx/gmres_sx.f90 comm/comm.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o +krylov/bcknd/sx/pc_jacobi_sx.o : krylov/bcknd/sx/pc_jacobi_sx.f90 gs/gather_scatter.o config/num_types.o sem/dofmap.o sem/coef.o krylov/precon.o math/math.o +krylov/bcknd/device/cg_device.o : krylov/bcknd/device/cg_device.f90 math/bcknd/device/device_math.o device/device.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o math/ax.o krylov/precon.o krylov/krylov.o config/num_types.o +krylov/bcknd/device/pipecg_device.o : krylov/bcknd/device/pipecg_device.F90 comm/comm.o device/device.o math/bcknd/device/device_math.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o +krylov/bcknd/device/fusedcg_device.o : krylov/bcknd/device/fusedcg_device.F90 comm/comm.o device/device.o math/bcknd/device/device_math.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o +krylov/bcknd/device/gmres_device.o : krylov/bcknd/device/gmres_device.F90 comm/comm.o device/device.o math/bcknd/device/device_math.o math/math.o krylov/bcknd/device/pc_identity_device.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o +krylov/bcknd/device/pc_jacobi_device.o : krylov/bcknd/device/pc_jacobi_device.F90 gs/gather_scatter.o device/device.o math/bcknd/device/device_math.o config/num_types.o sem/dofmap.o sem/coef.o krylov/precon.o +krylov/bcknd/device/pc_identity_device.o : krylov/bcknd/device/pc_identity_device.f90 config/num_types.o krylov/precon.o math/bcknd/device/device_math.o device/device.o +time_schemes/time_scheme.o : time_schemes/time_scheme.f90 config/num_types.o config/neko_config.o +time_schemes/bdf_time_scheme.o : time_schemes/bdf_time_scheme.f90 common/utils.o math/math.o time_schemes/time_scheme.o config/num_types.o config/neko_config.o +time_schemes/ext_time_scheme.o : time_schemes/ext_time_scheme.f90 common/utils.o math/math.o time_schemes/time_scheme.o config/num_types.o config/neko_config.o +time_schemes/ab_time_scheme.o : time_schemes/ab_time_scheme.f90 common/utils.o math/math.o time_schemes/time_scheme.o config/num_types.o config/neko_config.o +time_schemes/time_scheme_controller.o : time_schemes/time_scheme_controller.f90 device/device.o time_schemes/ab_time_scheme.o time_schemes/ext_time_scheme.o time_schemes/bdf_time_scheme.o config/num_types.o config/neko_config.o +common/time_based_controller.o : common/time_based_controller.f90 common/utils.o config/num_types.o +common/stats_quant.o : common/stats_quant.f90 config/num_types.o +common/statistics.o : common/statistics.f90 comm/comm.o common/log.o common/stats_quant.o config/num_types.o +common/rhs_maker.o : common/rhs_maker.f90 field/field.o field/field_series.o config/num_types.o +common/rhs_maker_fctry.o : common/rhs_maker_fctry.f90 config/neko_config.o common/bcknd/device/rhs_maker_device.o common/bcknd/sx/rhs_maker_sx.o common/bcknd/cpu/rhs_maker_cpu.o common/rhs_maker.o +simulation_components/probes.o : simulation_components/probes.F90 case.o io/csv_file.o io/file.o device/device.o comm/comm.o math/tensor.o common/global_interpolation.o common/json_utils.o sem/dofmap.o field/field_registry.o simulation_components/simulation_component.o field/field_list.o common/utils.o common/log.o math/matrix.o config/num_types.o +common/bcknd/cpu/rhs_maker_cpu.o : common/bcknd/cpu/rhs_maker_cpu.f90 field/scratch_registry.o config/num_types.o field/field.o field/field_series.o common/rhs_maker.o +common/bcknd/sx/rhs_maker_sx.o : common/bcknd/sx/rhs_maker_sx.f90 field/scratch_registry.o config/num_types.o field/field.o field/field_series.o common/rhs_maker.o +common/bcknd/device/rhs_maker_device.o : common/bcknd/device/rhs_maker_device.F90 config/num_types.o field/field.o field/field_series.o common/utils.o device/device.o common/rhs_maker.o +common/material_properties.o : common/material_properties.f90 comm/comm.o common/utils.o common/user_intf.o common/log.o common/json_utils.o config/num_types.o +config/neko_config.o : config/neko_config.f90 +case.o : case.f90 common/material_properties.o mesh/point_zone_registry.o field/scratch_registry.o common/json_utils.o scalar/scalar_pnpn.o common/user_intf.o common/jobctrl.o common/log.o time_schemes/time_scheme_controller.o comm/comm.o mesh/mesh.o common/utils.o io/file.o common/statistics.o scalar/scalar_ic.o fluid/flow_ic.o common/sampler.o comm/redist.o comm/parmetis.o field/mesh_field.o io/fluid_stats_output.o io/mean_flow_output.o io/mean_sqr_flow_output.o io/chkp_output.o io/fluid_output.o fluid/fluid_fctry.o config/num_types.o +common/user_intf.o : common/user_intf.f90 common/utils.o config/num_types.o bc/usr_scalar.o bc/usr_inflow.o mesh/mesh.o sem/coef.o scalar/scalar_user_source_term.o fluid/fluid_user_source_term.o field/field.o +fluid/fluid_scheme.o : fluid/fluid_scheme.f90 common/material_properties.o common/utils.o common/user_intf.o field/scratch_registry.o common/json_utils.o field/field_registry.o common/log.o math/operators.o math/mathops.o time_schemes/time_scheme_controller.o math/math.o mesh/mesh.o bc/bc.o fluid/fluid_stats.o krylov/precon_fctry.o krylov/krylov_fctry.o bc/non_normal.o bc/symmetry.o bc/dong_outflow.o bc/dirichlet.o bc/blasius.o bc/usr_inflow.o bc/inflow.o bc/wall.o sem/coef.o krylov/krylov.o sem/dofmap.o sem/space.o field/field.o field/field_list.o fluid/fluid_source_term.o fluid/fluid_user_source_term.o config/num_types.o fluid/mean_flow.o common/checkpoint.o config/neko_config.o fluid/mean_sqr_flow.o gs/gather_scatter.o +fluid/fluid_aux.o : fluid/fluid_aux.f90 krylov/krylov.o config/num_types.o common/log.o +fluid/fluid_pnpn.o : fluid/fluid_pnpn.f90 common/material_properties.o common/json_utils.o common/profiler.o fluid/advection.o common/log.o device/device.o common/projection.o time_schemes/time_scheme_controller.o fluid/fluid_aux.o math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o bc/facet_normal.o field/field_series.o fluid/fluid_scheme.o fluid/fluid_volflow.o common/rhs_maker_fctry.o math/ax_helm_fctry.o fluid/pnpn_res_fctry.o +fluid/fluid_fctry.o : fluid/fluid_fctry.f90 config/neko_config.o common/utils.o fluid/fluid_pnpn.o fluid/fluid_scheme.o +fluid/fluid_volflow.o : fluid/fluid_volflow.f90 math/ax.o bc/bc.o field/scratch_registry.o common/json_utils.o gs/gather_scatter.o math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o config/neko_config.o comm/comm.o math/math.o time_schemes/time_scheme_controller.o sem/coef.o field/field.o sem/dofmap.o krylov/precon.o krylov/krylov.o math/mathops.o config/num_types.o math/operators.o +fluid/pnpn_res.o : fluid/pnpn_res.f90 config/num_types.o mesh/mesh.o sem/space.o bc/facet_normal.o sem/coef.o field/field.o math/ax.o gs/gather_scatter.o +fluid/pnpn_res_fctry.o : fluid/pnpn_res_fctry.f90 fluid/bcknd/sx/pnpn_res_sx.o fluid/bcknd/cpu/pnpn_res_cpu.o fluid/bcknd/device/pnpn_res_device.o fluid/pnpn_res.o common/utils.o config/neko_config.o +fluid/mean_flow.o : fluid/mean_flow.f90 field/field.o field/mean_field.o +fluid/fluid_stats.o : fluid/fluid_stats.f90 common/utils.o config/neko_config.o device/device.o common/stats_quant.o gs/gather_scatter.o field/field_list.o field/field_registry.o field/field.o sem/coef.o math/operators.o math/math.o math/mathops.o math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o field/mean_field.o +fluid/mean_sqr_flow.o : fluid/mean_sqr_flow.f90 field/field.o field/mean_sqr_field.o +fluid/flow_profile.o : fluid/flow_profile.f90 config/num_types.o +fluid/flow_ic.o : fluid/flow_ic.f90 common/json_utils.o common/user_intf.o math/math.o sem/coef.o common/utils.o field/field.o device/device.o math/bcknd/device/device_math.o fluid/flow_profile.o config/neko_config.o gs/gather_scatter.o +fluid/advection.o : fluid/advection.f90 device/device.o sem/interpolation.o math/operators.o config/neko_config.o math/bcknd/device/device_math.o sem/coef.o field/field.o sem/space.o common/utils.o math/math.o config/num_types.o +fluid/bcknd/cpu/pnpn_res_cpu.o : fluid/bcknd/cpu/pnpn_res_cpu.f90 sem/space.o config/num_types.o mesh/mesh.o field/scratch_registry.o fluid/pnpn_res.o bc/facet_normal.o sem/coef.o math/ax.o field/field.o math/operators.o gs/gather_scatter.o +fluid/bcknd/sx/pnpn_res_sx.o : fluid/bcknd/sx/pnpn_res_sx.f90 sem/space.o config/num_types.o mesh/mesh.o field/scratch_registry.o fluid/pnpn_res.o bc/facet_normal.o sem/coef.o math/ax.o field/field.o math/operators.o gs/gather_scatter.o +fluid/bcknd/device/pnpn_res_device.o : fluid/bcknd/device/pnpn_res_device.F90 field/scratch_registry.o fluid/pnpn_res.o math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o sem/space.o config/num_types.o mesh/mesh.o bc/facet_normal.o sem/coef.o math/ax.o field/field.o math/operators.o gs/gather_scatter.o +fluid/fluid_user_source_term.o : fluid/fluid_user_source_term.f90 sem/dofmap.o math/math.o math/bcknd/device/device_math.o device/device.o sem/coef.o field/field_list.o source_terms/source_term.o common/utils.o config/num_types.o config/neko_config.o +fluid/fluid_source_term.o : fluid/fluid_source_term.f90 common/user_intf.o sem/coef.o common/json_utils.o field/field_list.o field/field.o source_terms/source_term_factory.o source_terms/source_term.o fluid/fluid_user_source_term.o config/num_types.o config/neko_config.o +simulation.o : simulation.f90 common/json_utils.o simulation_components/simcomp_executor.o common/profiler.o field/field.o common/jobctrl.o math/bcknd/device/device_math.o device/device.o common/log.o math/math.o io/file.o time_schemes/time_scheme_controller.o gs/gather_scatter.o case.o +math/ax_helm_fctry.o : math/ax_helm_fctry.f90 math/bcknd/cpu/ax_helm.o math/bcknd/sx/ax_helm_sx.o math/bcknd/xsmm/ax_helm_xsmm.o math/bcknd/device/ax_helm_device.o math/ax.o config/neko_config.o +math/bcknd/cpu/ax_helm.o : math/bcknd/cpu/ax_helm.f90 math/math.o mesh/mesh.o sem/space.o sem/coef.o config/num_types.o math/ax.o +math/bcknd/sx/ax_helm_sx.o : math/bcknd/sx/ax_helm_sx.f90 math/math.o mesh/mesh.o sem/space.o sem/coef.o config/num_types.o math/ax.o +math/bcknd/xsmm/ax_helm_xsmm.o : math/bcknd/xsmm/ax_helm_xsmm.F90 math/mxm_wrapper.o mesh/mesh.o sem/space.o sem/coef.o config/num_types.o math/ax.o +math/bcknd/device/ax_helm_device.o : math/bcknd/device/ax_helm_device.F90 device/device.o math/bcknd/device/device_math.o mesh/mesh.o sem/space.o sem/coef.o config/num_types.o math/ax.o +common/projection.o : common/projection.f90 common/log.o common/profiler.o common/bcknd/device/device_projection.o math/bcknd/device/device_math.o device/device.o config/neko_config.o gs/gather_scatter.o comm/comm.o bc/bc.o math/ax.o sem/coef.o math/math.o config/num_types.o +common/bcknd/device/device_projection.o : common/bcknd/device/device_projection.F90 common/utils.o config/num_types.o +comm/parmetis.o : comm/parmetis.F90 mesh/mesh.o field/mesh_field.o config/num_types.o common/utils.o mesh/point.o comm/comm.o +comm/redist.o : comm/redist.f90 mesh/element.o mesh/facet_zone.o io/format/nmsh.o mesh/mesh.o comm/comm.o mesh/curve.o adt/stack.o mesh/point.o adt/htable.o comm/mpi_types.o field/mesh_field.o +krylov/pc_hsmg.o : krylov/pc_hsmg.f90 krylov/krylov_fctry.o krylov/krylov.o mesh/mesh.o sem/coef.o field/field.o sem/dofmap.o sem/space.o common/profiler.o math/bcknd/device/device_math.o device/device.o krylov/bcknd/device/pc_jacobi_device.o krylov/bcknd/sx/pc_jacobi_sx.o krylov/bcknd/cpu/pc_jacobi.o math/schwarz.o bc/dirichlet.o bc/bc.o sem/interpolation.o gs/gather_scatter.o math/ax_helm_fctry.o math/ax.o krylov/precon.o common/utils.o math/math.o config/num_types.o config/neko_config.o +common/signal.o : common/signal.f90 common/utils.o +common/jobctrl.o : common/jobctrl.f90 common/log.o comm/comm.o common/utils.o common/signal.o config/num_types.o +device/cuda_intf.o : device/cuda_intf.F90 common/utils.o +device/hip_intf.o : device/hip_intf.F90 common/utils.o +device/cuda/nvtx.o : device/cuda/nvtx.F90 +device/hip/roctx.o : device/hip/roctx.F90 +device/opencl_intf.o : device/opencl_intf.F90 common/utils.o config/num_types.o +device/opencl/prgm_lib.o : device/opencl/prgm_lib.F90 common/utils.o device/opencl_intf.o +device/dummy_device.o : device/dummy_device.F90 +device/device.o : device/device.F90 device/opencl/prgm_lib.o device/dummy_device.o common/utils.o adt/htable.o device/hip_intf.o device/cuda_intf.o device/opencl_intf.o config/num_types.o +math/bcknd/device/device_math.o : math/bcknd/device/device_math.F90 config/num_types.o common/utils.o comm/comm.o +math/bcknd/device/device_schwarz.o : math/bcknd/device/device_schwarz.F90 device/device.o common/utils.o config/num_types.o +math/bcknd/device/tensor_device.o : math/bcknd/device/tensor_device.F90 common/utils.o +math/bcknd/device/fdm_device.o : math/bcknd/device/fdm_device.F90 device/device.o common/utils.o config/num_types.o +math/bcknd/device/device_mathops.o : math/bcknd/device/device_mathops.F90 common/utils.o config/num_types.o +bc/bcknd/device/device_dirichlet.o : bc/bcknd/device/device_dirichlet.F90 common/utils.o config/num_types.o +bc/bcknd/device/device_inflow.o : bc/bcknd/device/device_inflow.F90 common/utils.o config/num_types.o +bc/bcknd/device/device_wall.o : bc/bcknd/device/device_wall.F90 common/utils.o +bc/bcknd/device/device_symmetry.o : bc/bcknd/device/device_symmetry.F90 common/utils.o config/num_types.o +bc/bcknd/device/device_facet_normal.o : bc/bcknd/device/device_facet_normal.F90 common/utils.o +bc/bcknd/device/device_inhom_dirichlet.o : bc/bcknd/device/device_inhom_dirichlet.F90 common/utils.o config/num_types.o +bc/bcknd/device/device_dong_outflow.o : bc/bcknd/device/device_dong_outflow.F90 common/utils.o config/num_types.o +scalar/bcknd/device/scalar_residual_device.o : scalar/bcknd/device/scalar_residual_device.F90 math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o math/operators.o gs/gather_scatter.o scalar/scalar_residual.o +scalar/scalar_scheme.o : scalar/scalar_scheme.f90 scalar/scalar_source_term.o common/utils.o common/material_properties.o common/user_intf.o common/json_utils.o bc/usr_scalar.o field/field_registry.o common/log.o time_schemes/time_scheme_controller.o mesh/facet_zone.o mesh/mesh.o bc/bc.o krylov/precon_fctry.o krylov/pc_hsmg.o krylov/bcknd/sx/pc_jacobi_sx.o krylov/bcknd/device/pc_jacobi_device.o krylov/bcknd/cpu/pc_jacobi.o krylov/krylov_fctry.o bc/dirichlet.o sem/coef.o krylov/krylov.o sem/dofmap.o sem/space.o field/field.o config/num_types.o common/checkpoint.o gs/gather_scatter.o +scalar/scalar_pnpn.o : scalar/scalar_pnpn.f90 config/neko_config.o common/material_properties.o common/user_intf.o common/json_utils.o common/profiler.o fluid/advection.o common/log.o math/math.o common/projection.o time_schemes/time_scheme_controller.o scalar/scalar_aux.o math/bcknd/device/device_math.o krylov/krylov.o bc/facet_normal.o field/field_series.o math/ax.o scalar/scalar_residual.o gs/gather_scatter.o device/device.o sem/coef.o common/checkpoint.o mesh/mesh.o bc/bc.o field/field.o bc/dirichlet.o scalar/scalar_scheme.o common/rhs_maker_fctry.o math/ax_helm_fctry.o scalar/scalar_residual_fctry.o config/num_types.o +scalar/scalar_aux.o : scalar/scalar_aux.f90 krylov/krylov.o config/num_types.o common/log.o +scalar/scalar_residual.o : scalar/scalar_residual.f90 config/num_types.o mesh/mesh.o sem/space.o bc/facet_normal.o scalar/source_scalar.o sem/coef.o field/field.o math/ax.o gs/gather_scatter.o +scalar/scalar_residual_fctry.o : scalar/scalar_residual_fctry.f90 scalar/bcknd/sx/scalar_residual_sx.o scalar/bcknd/cpu/scalar_residual_cpu.o scalar/bcknd/device/scalar_residual_device.o scalar/scalar_residual.o config/neko_config.o +scalar/scalar_ic.o : scalar/scalar_ic.f90 common/json_utils.o common/user_intf.o math/math.o sem/coef.o common/utils.o field/field.o device/device.o math/bcknd/device/device_math.o config/num_types.o config/neko_config.o gs/gather_scatter.o +scalar/scalar_source_term.o : scalar/scalar_source_term.f90 common/user_intf.o sem/coef.o common/json_utils.o field/field_list.o field/field.o source_terms/source_term_factory.o source_terms/source_term.o scalar/scalar_user_source_term.o config/num_types.o config/neko_config.o +scalar/scalar_user_source_term.o : scalar/scalar_user_source_term.f90 sem/dofmap.o math/math.o math/bcknd/device/device_math.o device/device.o sem/coef.o field/field_list.o source_terms/source_term.o common/utils.o config/num_types.o config/neko_config.o +scalar/bcknd/cpu/scalar_residual_cpu.o : scalar/bcknd/cpu/scalar_residual_cpu.f90 math/operators.o scalar/scalar_residual.o gs/gather_scatter.o +scalar/bcknd/sx/scalar_residual_sx.o : scalar/bcknd/sx/scalar_residual_sx.f90 math/operators.o scalar/scalar_residual.o gs/gather_scatter.o +scalar/source_scalar.o : scalar/source_scalar.f90 math/bcknd/device/device_math.o device/device.o common/utils.o sem/dofmap.o config/num_types.o config/neko_config.o +simulation_components/simulation_component.o : simulation_components/simulation_component.f90 common/json_utils.o common/time_based_controller.o case.o config/num_types.o +simulation_components/simcomp_executor.o : simulation_components/simcomp_executor.f90 case.o common/json_utils.o simulation_components/simulation_component_factory.o simulation_components/simulation_component.o config/num_types.o +simulation_components/vorticity.o : simulation_components/vorticity.f90 case.o math/operators.o field/field.o field/field_registry.o simulation_components/simulation_component.o config/num_types.o +simulation_components/lambda2.o : simulation_components/lambda2.f90 device/device.o case.o math/operators.o field/field.o field/field_registry.o simulation_components/simulation_component.o config/num_types.o +simulation_components/scalar.o : simulation_components/scalar.f90 common/log.o scalar/scalar_pnpn.o case.o math/operators.o field/field.o field/field_registry.o simulation_components/simulation_component.o config/num_types.o +simulation_components/simulation_component_factory.o : simulation_components/simulation_component_factory.f90 common/log.o common/json_utils.o case.o simulation_components/probes.o simulation_components/scalar.o simulation_components/lambda2.o simulation_components/vorticity.o simulation_components/simulation_component.o +source_terms/source_term.o : source_terms/source_term.f90 field/field_list.o sem/coef.o config/num_types.o config/neko_config.o +source_terms/const_source_term.o : source_terms/const_source_term.f90 source_terms/bcknd/device/const_source_term_device.o source_terms/bcknd/cpu/const_source_term_cpu.o common/utils.o config/neko_config.o sem/coef.o source_terms/source_term.o common/json_utils.o field/field_list.o config/num_types.o +source_terms/bcknd/cpu/const_source_term_cpu.o : source_terms/bcknd/cpu/const_source_term_cpu.f90 math/math.o field/field_list.o config/num_types.o +source_terms/bcknd/device/const_source_term_device.o : source_terms/bcknd/device/const_source_term_device.f90 math/bcknd/device/device_math.o field/field_list.o config/num_types.o +source_terms/source_term_factory.o : source_terms/source_term_factory.f90 sem/coef.o common/utils.o field/field_list.o common/json_utils.o source_terms/const_source_term.o source_terms/source_term.o +neko.o : neko.f90 mesh/point_zone_registry.o mesh/point_zones/sphere_point_zone.o mesh/point_zones/box_point_zone.o mesh/point_zone.o sem/point_interpolator.o common/time_interpolator.o io/data_streamer.o simulation_components/simcomp_executor.o field/scratch_registry.o field/field_registry.o common/system.o sem/spectral_error_indicator.o simulation_components/probes.o simulation_components/simulation_component.o math/tensor.o math/vector.o fluid/fluid_user_source_term.o field/field_list.o fluid/fluid_stats.o sem/cpr.o math/bcknd/device/device_math.o device/device.o common/jobctrl.o common/signal.o comm/parmetis.o common/user_intf.o common/projection.o math/mathops.o math/operators.o simulation.o io/output.o common/sampler.o case.o config/neko_config.o math/ax.o math/ax_helm_fctry.o krylov/precon_fctry.o krylov/krylov_fctry.o bc/dirichlet.o bc/wall.o bc/bc.o sem/coef.o gs/gather_scatter.o comm/mpi_types.o field/field.o io/file.o common/global_interpolation.o math/mxm_wrapper.o io/format/map.o field/mesh_field.o mesh/point.o mesh/mesh.o adt/tuple.o adt/stack.o adt/uset.o adt/htable.o sem/space.o sem/dofmap.o sem/speclib.o math/math.o common/log.o common/utils.o comm/comm.o config/num_types.o +driver.o : driver.f90 neko.o diff --git a/src/case.f90 b/src/case.f90 index 51e905cd27b..2623f40c314 100644 --- a/src/case.f90 +++ b/src/case.f90 @@ -45,7 +45,6 @@ module case use redist use sampler use flow_ic - use scalar_ic, only : set_scalar_ic use stats use file use utils @@ -55,7 +54,6 @@ module case use logger use jobctrl use user_intf - use scalar_pnpn ! todo directly load the pnpn? can we have other use json_module, only : json_file, json_core, json_value use json_utils, only : json_get, json_get_or_default use scratch_registry, only : scratch_registry_t, neko_scratch_registry @@ -80,7 +78,6 @@ module case type(stats_t) :: q type(user_t) :: usr class(fluid_scheme_t), allocatable :: fluid - type(scalar_pnpn_t), allocatable :: scalar type(material_properties_t):: material_properties end type case_t @@ -139,7 +136,6 @@ subroutine case_init_common(C) type(case_t), target, intent(inout) :: C character(len=:), allocatable :: output_directory integer :: lx = 0 - logical :: scalar = .false. type(file_t) :: msh_file, bdry_file, part_file type(mesh_fld_t) :: msh_part, parts logical :: found, logical_val @@ -227,25 +223,6 @@ subroutine case_init_common(C) ! call neko_point_zone_registry%init(C%params, C%fluid%u%dof) - ! - ! Setup scalar scheme - ! - ! @todo no scalar factory for now, probably not needed - if (C%params%valid_path('case.scalar')) then - call json_get_or_default(C%params, 'case.scalar.enabled', scalar,& - .true.) - end if - - if (scalar) then - allocate(C%scalar) - call C%scalar%init(C%msh, C%fluid%c_Xh, C%fluid%gs_Xh, C%params, C%usr,& - C%material_properties) - call C%fluid%chkp%add_scalar(C%scalar%s) - C%fluid%chkp%abs1 => C%scalar%abx1 - C%fluid%chkp%abs2 => C%scalar%abx2 - C%fluid%chkp%slag => C%scalar%slag - end if - ! ! Setup user defined conditions ! @@ -257,11 +234,6 @@ subroutine case_init_common(C) end if end if - ! Setup user boundary conditions for the scalar. - if (scalar) then - call C%scalar%set_user_bc(C%usr%scalar_user_bc) - end if - ! ! Setup initial conditions ! @@ -275,17 +247,6 @@ subroutine case_init_common(C) C%fluid%c_Xh, C%fluid%gs_Xh, C%usr%fluid_user_ic, C%params) end if - if (scalar) then - call json_get(C%params, 'case.scalar.initial_condition.type', string_val) - if (trim(string_val) .ne. 'user') then - call set_scalar_ic(C%scalar%s, & - C%scalar%c_Xh, C%scalar%gs_Xh, string_val, C%params) - else - call set_scalar_ic(C%scalar%s, & - C%scalar%c_Xh, C%scalar%gs_Xh, C%usr%scalar_user_ic, C%params) - end if - end if - ! Add initial conditions to BDF scheme (if present) select type(f => C%fluid) type is(fluid_pnpn_t) @@ -300,11 +261,6 @@ subroutine case_init_common(C) ! call C%fluid%validate - if (scalar) then - call C%scalar%slag%set(C%scalar%s) - call C%scalar%validate - end if - ! ! Set order of timestepper ! @@ -366,13 +322,13 @@ subroutine case_init_common(C) ! Setup sampler ! call C%s%init(C%end_time) - if (scalar) then - C%f_out = fluid_output_t(precision, C%fluid, C%scalar, & - path=trim(output_directory)) - else +! if (scalar) then +! C%f_out = fluid_output_t(precision, C%fluid, C%scalar, & +! path=trim(output_directory)) +! else C%f_out = fluid_output_t(precision, C%fluid, & path=trim(output_directory)) - end if +! end if call json_get_or_default(C%params, 'case.fluid.output_control',& string_val, 'org') @@ -483,11 +439,6 @@ subroutine case_free(C) deallocate(C%fluid) end if - if (allocated(C%scalar)) then - call C%scalar%free() - deallocate(C%scalar) - end if - call C%msh%free() call C%s%free() diff --git a/src/simulation.f90 b/src/simulation.f90 index c0dc9c368d0..82fcfdd387b 100644 --- a/src/simulation.f90 +++ b/src/simulation.f90 @@ -118,16 +118,16 @@ subroutine neko_solve(C) call neko_log%end_section(log_buf) ! Scalar step - if (allocated(C%scalar)) then - start_time = MPI_WTIME() - call neko_log%section('Scalar') - call C%scalar%step(t, tstep, C%dt, C%ext_bdf) - end_time = MPI_WTIME() - write(log_buf, '(A,E15.7,A,E15.7)') & - 'Elapsed time (s):', end_time-start_time_org, ' Step time:', & - end_time-start_time - call neko_log%end_section(log_buf) - end if +! if (allocated(C%scalar)) then +! start_time = MPI_WTIME() +! call neko_log%section('Scalar') +! call C%scalar%step(t, tstep, C%dt, C%ext_bdf) +! end_time = MPI_WTIME() +! write(log_buf, '(A,E15.7,A,E15.7)') & +! 'Elapsed time (s):', end_time-start_time_org, ' Step time:', & +! end_time-start_time +! call neko_log%end_section(log_buf) +! end if call neko_log%section('Postprocessing') ! Execute all simulation components @@ -238,7 +238,7 @@ subroutine simulation_restart(C, t) end do call C%fluid%restart(C%dtlag, C%tlag) - if (allocated(C%scalar)) call C%scalar%restart( C%dtlag, C%tlag) +! if (allocated(C%scalar)) call C%scalar%restart( C%dtlag, C%tlag) t = C%fluid%chkp%restart_time() call neko_log%section('Restarting from checkpoint') diff --git a/src/simulation_components/scalar.f90 b/src/simulation_components/scalar.f90 index f7220a051f5..2b98612eb30 100644 --- a/src/simulation_components/scalar.f90 +++ b/src/simulation_components/scalar.f90 @@ -43,6 +43,8 @@ module scalar use case, only : case_t use scalar_pnpn, only : scalar_pnpn_t use logger, only : neko_log, LOG_SIZE + use scalar_ic, only : set_scalar_ic + use json_utils, only : json_get implicit none private @@ -85,24 +87,37 @@ end subroutine scalar_init_from_json !> Actual constructor. subroutine scalar_init_from_attributes(this) - class(scalar_t), intent(inout) :: this + class(scalar_t), target, intent(inout) :: this + character(len=:), allocatable :: ic_type + + allocate(this%scheme) - allocate(this%scheme) + call this%scheme%init(this%case%msh, this%case%fluid%c_Xh, & + this%case%fluid%gs_Xh, this%case%params, this%case%usr, & + this%case%material_properties) - call this%case%scalar%init(this%case%msh, this%case%fluid%c_Xh, & - this%case%fluid%gs_Xh, this%case%params, this%case%usr, & - this%case%material_properties) + call this%scheme%set_user_bc(this%case%usr%scalar_user_bc) - call this%scheme%set_user_bc(this%case%usr%scalar_user_bc) + call this%scheme%slag%set(this%scheme%s) + call this%scheme%validate() - call this%scheme%slag%set(this%scheme%s) - call this%scheme%validate() + call this%case%fluid%chkp%add_scalar(this%scheme%s) + this%case%fluid%chkp%abs1 => this%scheme%abx1 + this%case%fluid%chkp%abs2 => this%scheme%abx2 + this%case%fluid%chkp%slag => this%scheme%slag - !call this%case%fluid%chkp%add_scalar(this%scheme%s) - !this%case%fluid%chkp%abs1 => this%scheme%abx1 - !this%case%fluid%chkp%abs2 => this%scheme%abx2 - !this%case%fluid%chkp%slag => this%scheme%slag + ! User boundary condition + call this%scheme%set_user_bc(this%case%usr%scalar_user_bc) + ! Initial condition + call json_get(this%case%params, 'case.scalar.initial_condition.type', ic_type) + if (trim(ic_type) .ne. 'user') then + call set_scalar_ic(this%scheme%s, & + this%scheme%c_Xh, this%scheme%gs_Xh, ic_type, this%case%params) + else + call set_scalar_ic(this%scheme%s, & + this%scheme%c_Xh, this%scheme%gs_Xh, this%case%usr%scalar_user_ic, this%case%params) + end if end subroutine scalar_init_from_attributes !> Destructor. @@ -124,7 +139,7 @@ subroutine scalar_compute(this, t, tstep) real(kind=dp) :: start_time, end_time character(len=LOG_SIZE) :: log_buf - + ! start_time = MPI_WTIME() call neko_log%section('Scalar simcomp') call this%scheme%step(t, tstep, this%case%dt, this%case%ext_bdf) diff --git a/src/simulation_components/simulation_component_factory.f90 b/src/simulation_components/simulation_component_factory.f90 index 4dcda75349c..2a21758bfd8 100644 --- a/src/simulation_components/simulation_component_factory.f90 +++ b/src/simulation_components/simulation_component_factory.f90 @@ -65,14 +65,13 @@ subroutine simulation_component_factory(simcomp, json, case) allocate(lambda2_t::simcomp) else if (trim(simcomp_type) .eq. "probes") then allocate(probes_t::simcomp) + else if (trim(simcomp_type) .eq. "scalar") then + allocate(scalar_t::simcomp) else call neko_log%error("Unknown simulation component type: " & // trim(simcomp_type)) stop end if - if (trim(simcomp_type) .eq. "scalar") then - allocate(scalar_t::simcomp) - end if ! Initialize call simcomp%init(json, case) From 4696ec987590d38fa01a88ef55c86182b92ef3fc Mon Sep 17 00:00:00 2001 From: Timofey Mukha Date: Wed, 7 Feb 2024 15:02:22 +0300 Subject: [PATCH 03/11] Fix field allocation in fld_field_output --- src/io/fld_file_output.f90 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/io/fld_file_output.f90 b/src/io/fld_file_output.f90 index bf18347bc2c..4a43fe8fb03 100644 --- a/src/io/fld_file_output.f90 +++ b/src/io/fld_file_output.f90 @@ -78,7 +78,7 @@ subroutine fld_file_output_init(this, precision, name, nfields, path) deallocate(this%fields%fields) end if - allocate(this%fields%fields(3)) + allocate(this%fields%fields(nfields)) end subroutine fld_file_output_init From 82f8d46889b524307020d598f08cea5eba03cdf2 Mon Sep 17 00:00:00 2001 From: Timofey Mukha Date: Wed, 7 Feb 2024 15:02:49 +0300 Subject: [PATCH 04/11] WIP scalar simcomp --- examples/scalar_mms/scalar_mms.case | 24 +- src/.depends | 501 ++++++++++++------------ src/case.f90 | 10 +- src/simulation.f90 | 2 + src/simulation_components/scalar.f90 | 70 +++- src/simulation_components/vorticity.f90 | 1 - 6 files changed, 318 insertions(+), 290 deletions(-) diff --git a/examples/scalar_mms/scalar_mms.case b/examples/scalar_mms/scalar_mms.case index 3e16f5d9897..37740e42d14 100755 --- a/examples/scalar_mms/scalar_mms.case +++ b/examples/scalar_mms/scalar_mms.case @@ -37,13 +37,15 @@ "output_control": "nsamples", "output_value": 1 }, - "scalar": { - "enabled": true, + "simulation_components": [ + { + "type" : "scalar", "lambda": 0.01, "cp": 1, "initial_condition": { "type": "user" }, + "output_filename": "scalar", "source_terms": [ { "type": "user_vector" @@ -54,19 +56,9 @@ "1.0" ] } - ] - }, - "simulation_components": [ - { - "type": "probes", - "compute_control": "nsamples", - "compute_value": 1, - "points_file": "probes.csv", - "output_file": "output.csv", - "fields": [ - "s" - ] - } + ], + "order": 1 + } ] } -} \ No newline at end of file +} diff --git a/src/.depends b/src/.depends index 7107b13caf8..63f62fe5c78 100644 --- a/src/.depends +++ b/src/.depends @@ -1,250 +1,251 @@ -config/num_types.o : config/num_types.f90 -common/structs.o : common/structs.f90 config/num_types.o -io/format/nmsh.o : io/format/nmsh.f90 config/num_types.o -io/format/re2.o : io/format/re2.f90 config/num_types.o -io/format/map.o : io/format/map.f90 mesh/mesh.o -io/format/stl.o : io/format/stl.f90 config/num_types.o -common/log.o : common/log.f90 config/num_types.o comm/comm.o -comm/comm.o : comm/comm.F90 config/neko_config.o common/utils.o -mesh/curve.o : mesh/curve.f90 common/utils.o adt/stack.o common/structs.o config/num_types.o -comm/mpi_types.o : comm/mpi_types.f90 io/format/stl.o io/format/nmsh.o io/format/re2.o comm/comm.o -common/datadist.o : common/datadist.f90 -common/distdata.o : common/distdata.f90 adt/uset.o adt/tuple.o adt/stack.o -common/utils.o : common/utils.f90 -common/json_utils.o : common/json_utils.f90 common/utils.o config/num_types.o -common/system.o : common/system.f90 -math/mxm_wrapper.o : math/mxm_wrapper.F90 common/utils.o config/num_types.o -sem/speclib.o : sem/speclib.f90 common/utils.o config/num_types.o -sem/local_interpolation.o : sem/local_interpolation.f90 config/neko_config.o math/bcknd/device/device_math.o device/device.o field/field_list.o field/field.o common/utils.o math/fast3d.o math/math.o mesh/point.o config/num_types.o sem/space.o math/tensor.o -math/math.o : math/math.f90 comm/comm.o config/num_types.o -math/mathops.o : math/mathops.f90 config/num_types.o -math/fast3d.o : math/fast3d.f90 math/math.o sem/speclib.o config/num_types.o -sem/space.o : sem/space.f90 math/mxm_wrapper.o math/tensor.o math/math.o math/fast3d.o common/utils.o device/device.o sem/speclib.o config/num_types.o config/neko_config.o -sem/dofmap.o : sem/dofmap.f90 mesh/hex.o mesh/quad.o mesh/element.o math/math.o device/device.o math/tensor.o math/fast3d.o common/utils.o config/num_types.o adt/tuple.o sem/space.o mesh/mesh.o config/neko_config.o -sem/coef.o : sem/coef.f90 device/device.o math/mxm_wrapper.o sem/bcknd/device/device_coef.o math/bcknd/device/device_math.o mesh/mesh.o math/math.o sem/space.o sem/dofmap.o config/num_types.o config/neko_config.o gs/gs_ops.o gs/gather_scatter.o -sem/cpr.o : sem/cpr.f90 sem/dofmap.o common/log.o math/mxm_wrapper.o math/tensor.o sem/coef.o mesh/mesh.o math/math.o sem/space.o field/field.o config/num_types.o config/neko_config.o gs/gather_scatter.o -sem/spectral_error_indicator.o : sem/spectral_error_indicator.f90 common/utils.o comm/comm.o device/device.o config/neko_config.o gs/gather_scatter.o math/bcknd/device/device_math.o math/tensor.o io/file.o math/math.o field/field_list.o sem/coef.o field/field.o config/num_types.o -common/time_interpolator.o : common/time_interpolator.f90 common/utils.o math/math.o math/bcknd/device/device_math.o config/neko_config.o field/field.o config/num_types.o -sem/interpolation.o : sem/interpolation.f90 sem/space.o math/bcknd/cpu/tensor_cpu.o math/tensor.o math/fast3d.o device/device.o config/num_types.o config/neko_config.o -sem/point_interpolator.o : sem/point_interpolator.f90 config/neko_config.o math/bcknd/device/device_math.o device/device.o common/utils.o math/fast3d.o math/math.o mesh/point.o config/num_types.o sem/space.o math/tensor.o -sem/bcknd/device/device_coef.o : sem/bcknd/device/device_coef.F90 common/utils.o config/num_types.o -gs/gs_bcknd.o : gs/gs_bcknd.f90 config/num_types.o -gs/bcknd/cpu/gs_cpu.o : gs/bcknd/cpu/gs_cpu.f90 gs/gs_ops.o gs/gs_bcknd.o config/num_types.o -gs/bcknd/sx/gs_sx.o : gs/bcknd/sx/gs_sx.f90 gs/gs_ops.o gs/gs_bcknd.o config/num_types.o -gs/bcknd/device/gs_device.o : gs/bcknd/device/gs_device.F90 common/utils.o gs/gs_ops.o device/device.o gs/gs_bcknd.o config/num_types.o config/neko_config.o -gs/gs_ops.o : gs/gs_ops.f90 -gs/gs_comm.o : gs/gs_comm.f90 adt/stack.o comm/comm.o config/num_types.o -gs/gs_mpi.o : gs/gs_mpi.f90 comm/comm.o adt/stack.o gs/gs_ops.o gs/gs_comm.o config/num_types.o config/neko_config.o -gs/bcknd/device/gs_device_mpi.o : gs/bcknd/device/gs_device_mpi.F90 common/utils.o device/device.o adt/htable.o comm/comm.o adt/stack.o gs/gs_ops.o gs/gs_comm.o config/num_types.o -gs/gather_scatter.o : gs/gather_scatter.f90 device/device.o common/profiler.o common/log.o common/utils.o adt/stack.o adt/htable.o config/num_types.o field/field.o sem/dofmap.o comm/comm.o mesh/mesh.o gs/bcknd/device/gs_device_mpi.o gs/gs_mpi.o gs/gs_comm.o gs/gs_ops.o gs/bcknd/cpu/gs_cpu.o gs/bcknd/sx/gs_sx.o gs/bcknd/device/gs_device.o gs/gs_bcknd.o config/neko_config.o -mesh/entity.o : mesh/entity.f90 -mesh/point.o : mesh/point.f90 mesh/entity.o math/math.o config/num_types.o -mesh/element.o : mesh/element.f90 mesh/point.o adt/tuple.o mesh/entity.o config/num_types.o -math/ax.o : math/ax.f90 mesh/mesh.o sem/space.o sem/coef.o config/num_types.o -mesh/quad.o : mesh/quad.f90 mesh/point.o adt/tuple.o mesh/element.o config/num_types.o -mesh/hex.o : mesh/hex.f90 mesh/point.o adt/tuple.o mesh/element.o config/num_types.o -mesh/tet.o : mesh/tet.f90 mesh/point.o adt/tuple.o mesh/element.o config/num_types.o -mesh/tri.o : mesh/tri.f90 mesh/point.o adt/tuple.o mesh/element.o config/num_types.o -adt/htable.o : adt/htable.f90 math/math.o adt/tuple.o mesh/point.o common/utils.o config/num_types.o -adt/uset.o : adt/uset.f90 adt/htable.o config/num_types.o common/utils.o -adt/stack.o : adt/stack.f90 adt/tuple.o math/math.o common/structs.o mesh/point.o common/utils.o io/format/nmsh.o config/num_types.o -adt/tuple.o : adt/tuple.f90 config/num_types.o math/math.o -mesh/facet_zone.o : mesh/facet_zone.f90 common/utils.o adt/stack.o adt/tuple.o -mesh/point_zone.o : mesh/point_zone.f90 device/device.o config/neko_config.o sem/dofmap.o common/utils.o config/num_types.o adt/stack.o -mesh/point_zones/sphere_point_zone.o : mesh/point_zones/sphere_point_zone.f90 math/math.o common/json_utils.o config/num_types.o mesh/point_zone.o -mesh/point_zones/box_point_zone.o : mesh/point_zones/box_point_zone.f90 math/math.o common/json_utils.o config/num_types.o mesh/point_zone.o -mesh/point_zone_factory.o : mesh/point_zone_factory.f90 common/utils.o sem/dofmap.o common/json_utils.o mesh/point_zones/sphere_point_zone.o mesh/point_zones/box_point_zone.o mesh/point_zone.o -mesh/point_zone_registry.o : mesh/point_zone_registry.f90 common/json_utils.o common/utils.o sem/dofmap.o mesh/point_zone_factory.o mesh/point_zone.o -mesh/mesh.o : mesh/mesh.f90 mesh/curve.o adt/uset.o math/math.o mesh/facet_zone.o comm/comm.o common/distdata.o common/datadist.o adt/htable.o adt/tuple.o adt/stack.o common/utils.o mesh/quad.o mesh/hex.o mesh/element.o mesh/point.o config/num_types.o -mesh/octree.o : mesh/octree.f90 common/utils.o mesh/point.o config/num_types.o -mesh/tet_mesh.o : mesh/tet_mesh.f90 common/utils.o mesh/point.o mesh/tet.o mesh/mesh.o -mesh/tri_mesh.o : mesh/tri_mesh.f90 mesh/point.o mesh/tri.o -field/field_registry.o : field/field_registry.f90 adt/htable.o common/utils.o sem/dofmap.o field/field.o -field/scratch_registry.o : field/scratch_registry.f90 sem/dofmap.o field/field.o -field/field.o : field/field.f90 sem/dofmap.o sem/space.o mesh/mesh.o math/math.o device/device.o config/num_types.o math/bcknd/device/device_math.o config/neko_config.o -field/field_list.o : field/field_list.f90 field/field.o -field/field_series.o : field/field_series.f90 field/field.o config/num_types.o -field/mesh_field.o : field/mesh_field.f90 mesh/mesh.o -field/mean_field.o : field/mean_field.f90 math/bcknd/device/device_math.o math/math.o field/field.o config/num_types.o common/stats_quant.o config/neko_config.o -field/mean_sqr_field.o : field/mean_sqr_field.f90 math/math.o math/bcknd/device/device_math.o field/mean_field.o config/neko_config.o config/num_types.o -io/format/rea.o : io/format/rea.f90 mesh/mesh.o config/num_types.o -math/bcknd/cpu/cdtp.o : math/bcknd/cpu/cdtp.f90 config/num_types.o -math/bcknd/cpu/conv1.o : math/bcknd/cpu/conv1.f90 config/num_types.o -math/bcknd/cpu/dudxyz.o : math/bcknd/cpu/dudxyz.f90 config/num_types.o -math/bcknd/cpu/opgrad.o : math/bcknd/cpu/opgrad.f90 config/num_types.o -math/bcknd/sx/sx_cdtp.o : math/bcknd/sx/sx_cdtp.f90 math/math.o config/num_types.o -math/bcknd/sx/sx_conv1.o : math/bcknd/sx/sx_conv1.f90 config/num_types.o -math/bcknd/sx/sx_dudxyz.o : math/bcknd/sx/sx_dudxyz.f90 math/math.o config/num_types.o -math/bcknd/sx/sx_opgrad.o : math/bcknd/sx/sx_opgrad.f90 config/num_types.o -math/bcknd/sx/sx_cfl.o : math/bcknd/sx/sx_cfl.f90 config/num_types.o -math/operators.o : math/operators.f90 math/bcknd/device/device_math.o device/device.o comm/comm.o math/math.o field/field.o sem/coef.o sem/space.o math/bcknd/device/opr_device.o math/bcknd/xsmm/opr_xsmm.o math/bcknd/sx/opr_sx.o math/bcknd/cpu/opr_cpu.o config/num_types.o config/neko_config.o -math/bcknd/cpu/opr_cpu.o : math/bcknd/cpu/opr_cpu.f90 math/mathops.o gs/gather_scatter.o field/field.o math/math.o sem/coef.o sem/space.o config/num_types.o math/bcknd/cpu/conv1.o math/bcknd/cpu/cdtp.o math/bcknd/cpu/opgrad.o math/bcknd/cpu/dudxyz.o -math/bcknd/sx/opr_sx.o : math/bcknd/sx/opr_sx.f90 math/mathops.o field/field.o math/math.o sem/coef.o sem/space.o config/num_types.o gs/gather_scatter.o math/bcknd/sx/sx_cfl.o math/bcknd/sx/sx_cdtp.o math/bcknd/sx/sx_conv1.o math/bcknd/sx/sx_opgrad.o math/bcknd/sx/sx_dudxyz.o -math/bcknd/xsmm/opr_xsmm.o : math/bcknd/xsmm/opr_xsmm.F90 math/mathops.o gs/gather_scatter.o field/field.o mesh/mesh.o math/math.o sem/coef.o sem/space.o math/mxm_wrapper.o config/num_types.o -math/bcknd/device/opr_device.o : math/bcknd/device/opr_device.F90 comm/comm.o common/utils.o field/field.o mesh/mesh.o sem/coef.o sem/space.o device/device.o math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o config/num_types.o gs/gather_scatter.o -math/tensor.o : math/tensor.f90 device/device.o config/neko_config.o math/mxm_wrapper.o config/num_types.o math/bcknd/device/tensor_device.o math/bcknd/sx/tensor_sx.o math/bcknd/cpu/tensor_cpu.o math/bcknd/xsmm/tensor_xsmm.o -math/bcknd/cpu/tensor_cpu.o : math/bcknd/cpu/tensor_cpu.f90 math/mxm_wrapper.o config/num_types.o -math/bcknd/sx/tensor_sx.o : math/bcknd/sx/tensor_sx.f90 math/mxm_wrapper.o config/num_types.o -math/bcknd/xsmm/tensor_xsmm.o : math/bcknd/xsmm/tensor_xsmm.F90 math/mxm_wrapper.o config/num_types.o -math/fdm.o : math/fdm.f90 comm/comm.o common/utils.o device/device.o math/bcknd/device/fdm_device.o math/bcknd/cpu/fdm_cpu.o math/bcknd/xsmm/fdm_xsmm.o math/bcknd/sx/fdm_sx.o math/tensor.o math/fast3d.o gs/gather_scatter.o sem/dofmap.o sem/space.o mesh/mesh.o math/math.o sem/speclib.o config/num_types.o config/neko_config.o -math/bcknd/cpu/fdm_cpu.o : math/bcknd/cpu/fdm_cpu.f90 math/bcknd/cpu/tensor_cpu.o config/num_types.o -math/bcknd/sx/fdm_sx.o : math/bcknd/sx/fdm_sx.f90 math/bcknd/sx/tensor_sx.o config/num_types.o -math/bcknd/xsmm/fdm_xsmm.o : math/bcknd/xsmm/fdm_xsmm.f90 math/bcknd/xsmm/tensor_xsmm.o config/num_types.o -math/schwarz.o : math/schwarz.f90 config/neko_config.o device/device.o math/fdm.o math/bcknd/device/device_math.o math/bcknd/device/device_schwarz.o gs/gather_scatter.o bc/bc.o sem/dofmap.o sem/space.o mesh/mesh.o math/math.o config/num_types.o -math/vector.o : math/vector.f90 common/utils.o math/bcknd/device/device_math.o device/device.o config/num_types.o config/neko_config.o -math/matrix.o : math/matrix.f90 common/utils.o math/bcknd/device/device_math.o device/device.o config/num_types.o config/neko_config.o -common/checkpoint.o : common/checkpoint.f90 mesh/mesh.o common/utils.o field/field.o device/device.o sem/space.o field/field_series.o config/num_types.o config/neko_config.o -io/generic_file.o : io/generic_file.f90 config/num_types.o -io/map_file.o : io/map_file.f90 io/format/map.o comm/comm.o common/utils.o io/generic_file.o -io/re2_file.o : io/re2_file.f90 common/log.o adt/htable.o io/map_file.o io/format/map.o io/format/re2.o common/datadist.o comm/mpi_types.o comm/comm.o mesh/point.o mesh/mesh.o common/utils.o config/num_types.o io/generic_file.o -io/rea_file.o : io/rea_file.f90 common/log.o adt/htable.o common/datadist.o comm/comm.o io/map_file.o io/re2_file.o io/format/rea.o io/format/map.o mesh/point.o mesh/mesh.o common/utils.o config/num_types.o io/generic_file.o -io/fld_file.o : io/fld_file.f90 comm/mpi_types.o math/math.o common/datadist.o comm/comm.o common/utils.o mesh/mesh.o fluid/mean_sqr_flow.o fluid/mean_flow.o io/fld_file_data.o math/vector.o common/structs.o sem/space.o sem/dofmap.o field/field_list.o field/field.o io/generic_file.o -io/fld_file_data.o : io/fld_file_data.f90 math/vector.o math/math.o config/num_types.o -io/vtk_file.o : io/vtk_file.f90 comm/comm.o common/log.o mesh/tri_mesh.o mesh/tet_mesh.o field/mesh_field.o sem/dofmap.o field/field.o mesh/mesh.o common/utils.o io/generic_file.o config/num_types.o -io/stl_file.o : io/stl_file.f90 io/format/stl.o comm/comm.o comm/mpi_types.o mesh/point.o common/log.o mesh/tri_mesh.o io/generic_file.o config/num_types.o -io/nmsh_file.o : io/nmsh_file.f90 common/log.o comm/mpi_types.o common/datadist.o mesh/element.o io/format/nmsh.o adt/tuple.o mesh/point.o common/utils.o mesh/mesh.o comm/comm.o io/generic_file.o -io/chkp_file.o : io/chkp_file.f90 common/global_interpolation.o comm/comm.o comm/mpi_types.o sem/interpolation.o math/math.o mesh/mesh.o sem/space.o common/utils.o math/bcknd/device/device_math.o sem/dofmap.o field/field.o config/num_types.o common/checkpoint.o field/field_series.o io/generic_file.o -io/csv_file.o : io/csv_file.f90 comm/comm.o common/log.o config/num_types.o common/utils.o io/generic_file.o math/matrix.o math/vector.o -io/file.o : io/file.f90 io/csv_file.o io/stl_file.o io/vtk_file.o io/fld_file_data.o io/fld_file.o io/re2_file.o io/rea_file.o io/map_file.o io/chkp_file.o io/nmsh_file.o io/generic_file.o config/num_types.o common/utils.o -io/output.o : io/output.f90 io/file.o config/num_types.o -io/fluid_output.o : io/fluid_output.f90 io/output.o device/device.o config/neko_config.o field/field_list.o scalar/scalar_scheme.o fluid/fluid_scheme.o config/num_types.o -io/fld_file_output.o : io/fld_file_output.f90 io/output.o device/device.o config/neko_config.o field/field_list.o config/num_types.o -io/chkp_output.o : io/chkp_output.f90 config/num_types.o io/output.o common/checkpoint.o -io/mean_flow_output.o : io/mean_flow_output.f90 io/output.o device/device.o config/num_types.o fluid/mean_flow.o -io/fluid_stats_output.o : io/fluid_stats_output.f90 io/output.o device/device.o config/num_types.o config/neko_config.o fluid/fluid_stats.o -io/mean_sqr_flow_output.o : io/mean_sqr_flow_output.f90 io/output.o config/num_types.o fluid/mean_sqr_flow.o -io/data_streamer.o : io/data_streamer.F90 config/neko_config.o comm/mpi_types.o comm/comm.o device/device.o common/utils.o sem/coef.o field/field.o config/num_types.o -common/sampler.o : common/sampler.f90 common/time_based_controller.o config/num_types.o common/profiler.o common/utils.o common/log.o comm/comm.o io/fld_file.o io/output.o -common/global_interpolation.o : common/global_interpolation.F90 comm/mpi_types.o math/math.o comm/comm.o sem/local_interpolation.o common/utils.o common/log.o mesh/mesh.o sem/dofmap.o sem/space.o config/num_types.o -common/profiler.o : common/profiler.F90 common/craypat.o device/hip/roctx.o device/cuda/nvtx.o device/device.o config/neko_config.o -common/craypat.o : common/craypat.F90 common/utils.o adt/stack.o -bc/bc.o : bc/bc.f90 common/utils.o adt/tuple.o adt/stack.o mesh/facet_zone.o mesh/mesh.o sem/space.o sem/dofmap.o device/device.o config/num_types.o config/neko_config.o -bc/dirichlet.o : bc/dirichlet.f90 bc/bc.o config/num_types.o bc/bcknd/device/device_dirichlet.o -bc/dong_outflow.o : bc/dong_outflow.f90 bc/bcknd/device/device_dong_outflow.o common/utils.o sem/coef.o sem/dofmap.o field/field.o bc/bc.o config/num_types.o device/device.o bc/dirichlet.o config/neko_config.o -bc/wall.o : bc/wall.f90 bc/dirichlet.o config/num_types.o bc/bcknd/device/device_wall.o -bc/inflow.o : bc/inflow.f90 bc/dirichlet.o config/num_types.o bc/bcknd/device/device_inflow.o -bc/usr_inflow.o : bc/usr_inflow.f90 common/utils.o bc/bcknd/device/device_inhom_dirichlet.o device/device.o bc/inflow.o sem/coef.o config/num_types.o -bc/usr_scalar.o : bc/usr_scalar.f90 common/utils.o bc/bcknd/device/device_inhom_dirichlet.o device/device.o bc/dirichlet.o sem/coef.o config/num_types.o -bc/facet_normal.o : bc/facet_normal.f90 common/utils.o bc/dirichlet.o sem/coef.o math/math.o config/num_types.o bc/bcknd/device/device_facet_normal.o -bc/symmetry.o : bc/symmetry.f90 adt/tuple.o adt/stack.o common/utils.o math/math.o sem/coef.o bc/bc.o bc/dirichlet.o config/num_types.o config/neko_config.o bc/bcknd/device/device_symmetry.o -bc/non_normal.o : bc/non_normal.f90 adt/stack.o common/utils.o math/math.o sem/coef.o device/device.o adt/tuple.o bc/dirichlet.o config/num_types.o config/neko_config.o bc/symmetry.o -bc/blasius.o : bc/blasius.f90 fluid/flow_profile.o bc/bcknd/device/device_inhom_dirichlet.o device/device.o bc/inflow.o common/utils.o sem/coef.o config/num_types.o -krylov/precon.o : krylov/precon.f90 config/num_types.o -krylov/krylov.o : krylov/krylov.f90 config/neko_config.o krylov/bcknd/device/pc_identity_device.o krylov/pc_identity.o bc/bc.o common/utils.o field/field.o mesh/mesh.o sem/coef.o krylov/precon.o config/num_types.o math/ax.o gs/gather_scatter.o -krylov/pc_identity.o : krylov/pc_identity.f90 config/num_types.o krylov/precon.o math/math.o -krylov/precon_fctry.o : krylov/precon_fctry.f90 config/neko_config.o common/utils.o krylov/pc_hsmg.o krylov/bcknd/device/pc_jacobi_device.o krylov/bcknd/sx/pc_jacobi_sx.o krylov/bcknd/cpu/pc_jacobi.o krylov/bcknd/device/pc_identity_device.o krylov/pc_identity.o krylov/precon.o -krylov/krylov_fctry.o : krylov/krylov_fctry.f90 config/neko_config.o common/utils.o krylov/precon.o krylov/krylov.o config/num_types.o krylov/bcknd/device/gmres_device.o krylov/bcknd/sx/gmres_sx.o krylov/bcknd/cpu/gmres.o krylov/bcknd/cpu/bicgstab.o krylov/bcknd/device/fusedcg_device.o krylov/bcknd/device/pipecg_device.o krylov/bcknd/sx/pipecg_sx.o krylov/bcknd/cpu/pipecg.o krylov/bcknd/cpu/cacg.o krylov/bcknd/device/cg_device.o krylov/bcknd/sx/cg_sx.o krylov/bcknd/cpu/cg.o -krylov/bcknd/cpu/cg.o : krylov/bcknd/cpu/cg.f90 comm/comm.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o math/ax.o krylov/precon.o krylov/krylov.o config/num_types.o -krylov/bcknd/cpu/cacg.o : krylov/bcknd/cpu/cacg.f90 math/mxm_wrapper.o comm/comm.o common/utils.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o math/ax.o krylov/precon.o krylov/krylov.o config/num_types.o -krylov/bcknd/cpu/pipecg.o : krylov/bcknd/cpu/pipecg.f90 comm/comm.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o -krylov/bcknd/cpu/bicgstab.o : krylov/bcknd/cpu/bicgstab.f90 common/utils.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o math/ax.o krylov/precon.o krylov/krylov.o config/num_types.o -krylov/bcknd/cpu/gmres.o : krylov/bcknd/cpu/gmres.f90 comm/comm.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o -krylov/bcknd/cpu/pc_jacobi.o : krylov/bcknd/cpu/pc_jacobi.f90 gs/gather_scatter.o sem/dofmap.o config/num_types.o sem/coef.o krylov/precon.o math/math.o -krylov/bcknd/sx/cg_sx.o : krylov/bcknd/sx/cg_sx.f90 math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o math/ax.o krylov/precon.o krylov/krylov.o config/num_types.o -krylov/bcknd/sx/pipecg_sx.o : krylov/bcknd/sx/pipecg_sx.f90 comm/comm.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o -krylov/bcknd/sx/gmres_sx.o : krylov/bcknd/sx/gmres_sx.f90 comm/comm.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o -krylov/bcknd/sx/pc_jacobi_sx.o : krylov/bcknd/sx/pc_jacobi_sx.f90 gs/gather_scatter.o config/num_types.o sem/dofmap.o sem/coef.o krylov/precon.o math/math.o -krylov/bcknd/device/cg_device.o : krylov/bcknd/device/cg_device.f90 math/bcknd/device/device_math.o device/device.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o math/ax.o krylov/precon.o krylov/krylov.o config/num_types.o -krylov/bcknd/device/pipecg_device.o : krylov/bcknd/device/pipecg_device.F90 comm/comm.o device/device.o math/bcknd/device/device_math.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o -krylov/bcknd/device/fusedcg_device.o : krylov/bcknd/device/fusedcg_device.F90 comm/comm.o device/device.o math/bcknd/device/device_math.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o -krylov/bcknd/device/gmres_device.o : krylov/bcknd/device/gmres_device.F90 comm/comm.o device/device.o math/bcknd/device/device_math.o math/math.o krylov/bcknd/device/pc_identity_device.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o -krylov/bcknd/device/pc_jacobi_device.o : krylov/bcknd/device/pc_jacobi_device.F90 gs/gather_scatter.o device/device.o math/bcknd/device/device_math.o config/num_types.o sem/dofmap.o sem/coef.o krylov/precon.o -krylov/bcknd/device/pc_identity_device.o : krylov/bcknd/device/pc_identity_device.f90 config/num_types.o krylov/precon.o math/bcknd/device/device_math.o device/device.o -time_schemes/time_scheme.o : time_schemes/time_scheme.f90 config/num_types.o config/neko_config.o -time_schemes/bdf_time_scheme.o : time_schemes/bdf_time_scheme.f90 common/utils.o math/math.o time_schemes/time_scheme.o config/num_types.o config/neko_config.o -time_schemes/ext_time_scheme.o : time_schemes/ext_time_scheme.f90 common/utils.o math/math.o time_schemes/time_scheme.o config/num_types.o config/neko_config.o -time_schemes/ab_time_scheme.o : time_schemes/ab_time_scheme.f90 common/utils.o math/math.o time_schemes/time_scheme.o config/num_types.o config/neko_config.o -time_schemes/time_scheme_controller.o : time_schemes/time_scheme_controller.f90 device/device.o time_schemes/ab_time_scheme.o time_schemes/ext_time_scheme.o time_schemes/bdf_time_scheme.o config/num_types.o config/neko_config.o -common/time_based_controller.o : common/time_based_controller.f90 common/utils.o config/num_types.o -common/stats_quant.o : common/stats_quant.f90 config/num_types.o -common/statistics.o : common/statistics.f90 comm/comm.o common/log.o common/stats_quant.o config/num_types.o -common/rhs_maker.o : common/rhs_maker.f90 field/field.o field/field_series.o config/num_types.o -common/rhs_maker_fctry.o : common/rhs_maker_fctry.f90 config/neko_config.o common/bcknd/device/rhs_maker_device.o common/bcknd/sx/rhs_maker_sx.o common/bcknd/cpu/rhs_maker_cpu.o common/rhs_maker.o -simulation_components/probes.o : simulation_components/probes.F90 case.o io/csv_file.o io/file.o device/device.o comm/comm.o math/tensor.o common/global_interpolation.o common/json_utils.o sem/dofmap.o field/field_registry.o simulation_components/simulation_component.o field/field_list.o common/utils.o common/log.o math/matrix.o config/num_types.o -common/bcknd/cpu/rhs_maker_cpu.o : common/bcknd/cpu/rhs_maker_cpu.f90 field/scratch_registry.o config/num_types.o field/field.o field/field_series.o common/rhs_maker.o -common/bcknd/sx/rhs_maker_sx.o : common/bcknd/sx/rhs_maker_sx.f90 field/scratch_registry.o config/num_types.o field/field.o field/field_series.o common/rhs_maker.o -common/bcknd/device/rhs_maker_device.o : common/bcknd/device/rhs_maker_device.F90 config/num_types.o field/field.o field/field_series.o common/utils.o device/device.o common/rhs_maker.o -common/material_properties.o : common/material_properties.f90 comm/comm.o common/utils.o common/user_intf.o common/log.o common/json_utils.o config/num_types.o -config/neko_config.o : config/neko_config.f90 -case.o : case.f90 common/material_properties.o mesh/point_zone_registry.o field/scratch_registry.o common/json_utils.o scalar/scalar_pnpn.o common/user_intf.o common/jobctrl.o common/log.o time_schemes/time_scheme_controller.o comm/comm.o mesh/mesh.o common/utils.o io/file.o common/statistics.o scalar/scalar_ic.o fluid/flow_ic.o common/sampler.o comm/redist.o comm/parmetis.o field/mesh_field.o io/fluid_stats_output.o io/mean_flow_output.o io/mean_sqr_flow_output.o io/chkp_output.o io/fluid_output.o fluid/fluid_fctry.o config/num_types.o -common/user_intf.o : common/user_intf.f90 common/utils.o config/num_types.o bc/usr_scalar.o bc/usr_inflow.o mesh/mesh.o sem/coef.o scalar/scalar_user_source_term.o fluid/fluid_user_source_term.o field/field.o -fluid/fluid_scheme.o : fluid/fluid_scheme.f90 common/material_properties.o common/utils.o common/user_intf.o field/scratch_registry.o common/json_utils.o field/field_registry.o common/log.o math/operators.o math/mathops.o time_schemes/time_scheme_controller.o math/math.o mesh/mesh.o bc/bc.o fluid/fluid_stats.o krylov/precon_fctry.o krylov/krylov_fctry.o bc/non_normal.o bc/symmetry.o bc/dong_outflow.o bc/dirichlet.o bc/blasius.o bc/usr_inflow.o bc/inflow.o bc/wall.o sem/coef.o krylov/krylov.o sem/dofmap.o sem/space.o field/field.o field/field_list.o fluid/fluid_source_term.o fluid/fluid_user_source_term.o config/num_types.o fluid/mean_flow.o common/checkpoint.o config/neko_config.o fluid/mean_sqr_flow.o gs/gather_scatter.o -fluid/fluid_aux.o : fluid/fluid_aux.f90 krylov/krylov.o config/num_types.o common/log.o -fluid/fluid_pnpn.o : fluid/fluid_pnpn.f90 common/material_properties.o common/json_utils.o common/profiler.o fluid/advection.o common/log.o device/device.o common/projection.o time_schemes/time_scheme_controller.o fluid/fluid_aux.o math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o bc/facet_normal.o field/field_series.o fluid/fluid_scheme.o fluid/fluid_volflow.o common/rhs_maker_fctry.o math/ax_helm_fctry.o fluid/pnpn_res_fctry.o -fluid/fluid_fctry.o : fluid/fluid_fctry.f90 config/neko_config.o common/utils.o fluid/fluid_pnpn.o fluid/fluid_scheme.o -fluid/fluid_volflow.o : fluid/fluid_volflow.f90 math/ax.o bc/bc.o field/scratch_registry.o common/json_utils.o gs/gather_scatter.o math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o config/neko_config.o comm/comm.o math/math.o time_schemes/time_scheme_controller.o sem/coef.o field/field.o sem/dofmap.o krylov/precon.o krylov/krylov.o math/mathops.o config/num_types.o math/operators.o -fluid/pnpn_res.o : fluid/pnpn_res.f90 config/num_types.o mesh/mesh.o sem/space.o bc/facet_normal.o sem/coef.o field/field.o math/ax.o gs/gather_scatter.o -fluid/pnpn_res_fctry.o : fluid/pnpn_res_fctry.f90 fluid/bcknd/sx/pnpn_res_sx.o fluid/bcknd/cpu/pnpn_res_cpu.o fluid/bcknd/device/pnpn_res_device.o fluid/pnpn_res.o common/utils.o config/neko_config.o -fluid/mean_flow.o : fluid/mean_flow.f90 field/field.o field/mean_field.o -fluid/fluid_stats.o : fluid/fluid_stats.f90 common/utils.o config/neko_config.o device/device.o common/stats_quant.o gs/gather_scatter.o field/field_list.o field/field_registry.o field/field.o sem/coef.o math/operators.o math/math.o math/mathops.o math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o field/mean_field.o -fluid/mean_sqr_flow.o : fluid/mean_sqr_flow.f90 field/field.o field/mean_sqr_field.o -fluid/flow_profile.o : fluid/flow_profile.f90 config/num_types.o -fluid/flow_ic.o : fluid/flow_ic.f90 common/json_utils.o common/user_intf.o math/math.o sem/coef.o common/utils.o field/field.o device/device.o math/bcknd/device/device_math.o fluid/flow_profile.o config/neko_config.o gs/gather_scatter.o -fluid/advection.o : fluid/advection.f90 device/device.o sem/interpolation.o math/operators.o config/neko_config.o math/bcknd/device/device_math.o sem/coef.o field/field.o sem/space.o common/utils.o math/math.o config/num_types.o -fluid/bcknd/cpu/pnpn_res_cpu.o : fluid/bcknd/cpu/pnpn_res_cpu.f90 sem/space.o config/num_types.o mesh/mesh.o field/scratch_registry.o fluid/pnpn_res.o bc/facet_normal.o sem/coef.o math/ax.o field/field.o math/operators.o gs/gather_scatter.o -fluid/bcknd/sx/pnpn_res_sx.o : fluid/bcknd/sx/pnpn_res_sx.f90 sem/space.o config/num_types.o mesh/mesh.o field/scratch_registry.o fluid/pnpn_res.o bc/facet_normal.o sem/coef.o math/ax.o field/field.o math/operators.o gs/gather_scatter.o -fluid/bcknd/device/pnpn_res_device.o : fluid/bcknd/device/pnpn_res_device.F90 field/scratch_registry.o fluid/pnpn_res.o math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o sem/space.o config/num_types.o mesh/mesh.o bc/facet_normal.o sem/coef.o math/ax.o field/field.o math/operators.o gs/gather_scatter.o -fluid/fluid_user_source_term.o : fluid/fluid_user_source_term.f90 sem/dofmap.o math/math.o math/bcknd/device/device_math.o device/device.o sem/coef.o field/field_list.o source_terms/source_term.o common/utils.o config/num_types.o config/neko_config.o -fluid/fluid_source_term.o : fluid/fluid_source_term.f90 common/user_intf.o sem/coef.o common/json_utils.o field/field_list.o field/field.o source_terms/source_term_factory.o source_terms/source_term.o fluid/fluid_user_source_term.o config/num_types.o config/neko_config.o -simulation.o : simulation.f90 common/json_utils.o simulation_components/simcomp_executor.o common/profiler.o field/field.o common/jobctrl.o math/bcknd/device/device_math.o device/device.o common/log.o math/math.o io/file.o time_schemes/time_scheme_controller.o gs/gather_scatter.o case.o -math/ax_helm_fctry.o : math/ax_helm_fctry.f90 math/bcknd/cpu/ax_helm.o math/bcknd/sx/ax_helm_sx.o math/bcknd/xsmm/ax_helm_xsmm.o math/bcknd/device/ax_helm_device.o math/ax.o config/neko_config.o -math/bcknd/cpu/ax_helm.o : math/bcknd/cpu/ax_helm.f90 math/math.o mesh/mesh.o sem/space.o sem/coef.o config/num_types.o math/ax.o -math/bcknd/sx/ax_helm_sx.o : math/bcknd/sx/ax_helm_sx.f90 math/math.o mesh/mesh.o sem/space.o sem/coef.o config/num_types.o math/ax.o -math/bcknd/xsmm/ax_helm_xsmm.o : math/bcknd/xsmm/ax_helm_xsmm.F90 math/mxm_wrapper.o mesh/mesh.o sem/space.o sem/coef.o config/num_types.o math/ax.o -math/bcknd/device/ax_helm_device.o : math/bcknd/device/ax_helm_device.F90 device/device.o math/bcknd/device/device_math.o mesh/mesh.o sem/space.o sem/coef.o config/num_types.o math/ax.o -common/projection.o : common/projection.f90 common/log.o common/profiler.o common/bcknd/device/device_projection.o math/bcknd/device/device_math.o device/device.o config/neko_config.o gs/gather_scatter.o comm/comm.o bc/bc.o math/ax.o sem/coef.o math/math.o config/num_types.o -common/bcknd/device/device_projection.o : common/bcknd/device/device_projection.F90 common/utils.o config/num_types.o -comm/parmetis.o : comm/parmetis.F90 mesh/mesh.o field/mesh_field.o config/num_types.o common/utils.o mesh/point.o comm/comm.o -comm/redist.o : comm/redist.f90 mesh/element.o mesh/facet_zone.o io/format/nmsh.o mesh/mesh.o comm/comm.o mesh/curve.o adt/stack.o mesh/point.o adt/htable.o comm/mpi_types.o field/mesh_field.o -krylov/pc_hsmg.o : krylov/pc_hsmg.f90 krylov/krylov_fctry.o krylov/krylov.o mesh/mesh.o sem/coef.o field/field.o sem/dofmap.o sem/space.o common/profiler.o math/bcknd/device/device_math.o device/device.o krylov/bcknd/device/pc_jacobi_device.o krylov/bcknd/sx/pc_jacobi_sx.o krylov/bcknd/cpu/pc_jacobi.o math/schwarz.o bc/dirichlet.o bc/bc.o sem/interpolation.o gs/gather_scatter.o math/ax_helm_fctry.o math/ax.o krylov/precon.o common/utils.o math/math.o config/num_types.o config/neko_config.o -common/signal.o : common/signal.f90 common/utils.o -common/jobctrl.o : common/jobctrl.f90 common/log.o comm/comm.o common/utils.o common/signal.o config/num_types.o -device/cuda_intf.o : device/cuda_intf.F90 common/utils.o -device/hip_intf.o : device/hip_intf.F90 common/utils.o -device/cuda/nvtx.o : device/cuda/nvtx.F90 -device/hip/roctx.o : device/hip/roctx.F90 -device/opencl_intf.o : device/opencl_intf.F90 common/utils.o config/num_types.o -device/opencl/prgm_lib.o : device/opencl/prgm_lib.F90 common/utils.o device/opencl_intf.o -device/dummy_device.o : device/dummy_device.F90 -device/device.o : device/device.F90 device/opencl/prgm_lib.o device/dummy_device.o common/utils.o adt/htable.o device/hip_intf.o device/cuda_intf.o device/opencl_intf.o config/num_types.o -math/bcknd/device/device_math.o : math/bcknd/device/device_math.F90 config/num_types.o common/utils.o comm/comm.o -math/bcknd/device/device_schwarz.o : math/bcknd/device/device_schwarz.F90 device/device.o common/utils.o config/num_types.o -math/bcknd/device/tensor_device.o : math/bcknd/device/tensor_device.F90 common/utils.o -math/bcknd/device/fdm_device.o : math/bcknd/device/fdm_device.F90 device/device.o common/utils.o config/num_types.o -math/bcknd/device/device_mathops.o : math/bcknd/device/device_mathops.F90 common/utils.o config/num_types.o -bc/bcknd/device/device_dirichlet.o : bc/bcknd/device/device_dirichlet.F90 common/utils.o config/num_types.o -bc/bcknd/device/device_inflow.o : bc/bcknd/device/device_inflow.F90 common/utils.o config/num_types.o -bc/bcknd/device/device_wall.o : bc/bcknd/device/device_wall.F90 common/utils.o -bc/bcknd/device/device_symmetry.o : bc/bcknd/device/device_symmetry.F90 common/utils.o config/num_types.o -bc/bcknd/device/device_facet_normal.o : bc/bcknd/device/device_facet_normal.F90 common/utils.o -bc/bcknd/device/device_inhom_dirichlet.o : bc/bcknd/device/device_inhom_dirichlet.F90 common/utils.o config/num_types.o -bc/bcknd/device/device_dong_outflow.o : bc/bcknd/device/device_dong_outflow.F90 common/utils.o config/num_types.o -scalar/bcknd/device/scalar_residual_device.o : scalar/bcknd/device/scalar_residual_device.F90 math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o math/operators.o gs/gather_scatter.o scalar/scalar_residual.o -scalar/scalar_scheme.o : scalar/scalar_scheme.f90 scalar/scalar_source_term.o common/utils.o common/material_properties.o common/user_intf.o common/json_utils.o bc/usr_scalar.o field/field_registry.o common/log.o time_schemes/time_scheme_controller.o mesh/facet_zone.o mesh/mesh.o bc/bc.o krylov/precon_fctry.o krylov/pc_hsmg.o krylov/bcknd/sx/pc_jacobi_sx.o krylov/bcknd/device/pc_jacobi_device.o krylov/bcknd/cpu/pc_jacobi.o krylov/krylov_fctry.o bc/dirichlet.o sem/coef.o krylov/krylov.o sem/dofmap.o sem/space.o field/field.o config/num_types.o common/checkpoint.o gs/gather_scatter.o -scalar/scalar_pnpn.o : scalar/scalar_pnpn.f90 config/neko_config.o common/material_properties.o common/user_intf.o common/json_utils.o common/profiler.o fluid/advection.o common/log.o math/math.o common/projection.o time_schemes/time_scheme_controller.o scalar/scalar_aux.o math/bcknd/device/device_math.o krylov/krylov.o bc/facet_normal.o field/field_series.o math/ax.o scalar/scalar_residual.o gs/gather_scatter.o device/device.o sem/coef.o common/checkpoint.o mesh/mesh.o bc/bc.o field/field.o bc/dirichlet.o scalar/scalar_scheme.o common/rhs_maker_fctry.o math/ax_helm_fctry.o scalar/scalar_residual_fctry.o config/num_types.o -scalar/scalar_aux.o : scalar/scalar_aux.f90 krylov/krylov.o config/num_types.o common/log.o -scalar/scalar_residual.o : scalar/scalar_residual.f90 config/num_types.o mesh/mesh.o sem/space.o bc/facet_normal.o scalar/source_scalar.o sem/coef.o field/field.o math/ax.o gs/gather_scatter.o -scalar/scalar_residual_fctry.o : scalar/scalar_residual_fctry.f90 scalar/bcknd/sx/scalar_residual_sx.o scalar/bcknd/cpu/scalar_residual_cpu.o scalar/bcknd/device/scalar_residual_device.o scalar/scalar_residual.o config/neko_config.o -scalar/scalar_ic.o : scalar/scalar_ic.f90 common/json_utils.o common/user_intf.o math/math.o sem/coef.o common/utils.o field/field.o device/device.o math/bcknd/device/device_math.o config/num_types.o config/neko_config.o gs/gather_scatter.o -scalar/scalar_source_term.o : scalar/scalar_source_term.f90 common/user_intf.o sem/coef.o common/json_utils.o field/field_list.o field/field.o source_terms/source_term_factory.o source_terms/source_term.o scalar/scalar_user_source_term.o config/num_types.o config/neko_config.o -scalar/scalar_user_source_term.o : scalar/scalar_user_source_term.f90 sem/dofmap.o math/math.o math/bcknd/device/device_math.o device/device.o sem/coef.o field/field_list.o source_terms/source_term.o common/utils.o config/num_types.o config/neko_config.o -scalar/bcknd/cpu/scalar_residual_cpu.o : scalar/bcknd/cpu/scalar_residual_cpu.f90 math/operators.o scalar/scalar_residual.o gs/gather_scatter.o -scalar/bcknd/sx/scalar_residual_sx.o : scalar/bcknd/sx/scalar_residual_sx.f90 math/operators.o scalar/scalar_residual.o gs/gather_scatter.o -scalar/source_scalar.o : scalar/source_scalar.f90 math/bcknd/device/device_math.o device/device.o common/utils.o sem/dofmap.o config/num_types.o config/neko_config.o -simulation_components/simulation_component.o : simulation_components/simulation_component.f90 common/json_utils.o common/time_based_controller.o case.o config/num_types.o -simulation_components/simcomp_executor.o : simulation_components/simcomp_executor.f90 case.o common/json_utils.o simulation_components/simulation_component_factory.o simulation_components/simulation_component.o config/num_types.o -simulation_components/vorticity.o : simulation_components/vorticity.f90 common/json_utils.o io/fld_file_output.o case.o math/operators.o field/field.o field/field_registry.o simulation_components/simulation_component.o config/num_types.o -simulation_components/lambda2.o : simulation_components/lambda2.f90 device/device.o case.o math/operators.o field/field.o field/field_registry.o simulation_components/simulation_component.o config/num_types.o -simulation_components/scalar.o : simulation_components/scalar.f90 common/log.o scalar/scalar_pnpn.o case.o math/operators.o field/field.o field/field_registry.o simulation_components/simulation_component.o config/num_types.o -simulation_components/simulation_component_factory.o : simulation_components/simulation_component_factory.f90 common/log.o common/json_utils.o case.o simulation_components/probes.o simulation_components/scalar.o simulation_components/lambda2.o simulation_components/vorticity.o simulation_components/simulation_component.o -source_terms/source_term.o : source_terms/source_term.f90 field/field_list.o sem/coef.o config/num_types.o config/neko_config.o -source_terms/const_source_term.o : source_terms/const_source_term.f90 source_terms/bcknd/device/const_source_term_device.o source_terms/bcknd/cpu/const_source_term_cpu.o common/utils.o config/neko_config.o sem/coef.o source_terms/source_term.o common/json_utils.o field/field_list.o config/num_types.o -source_terms/bcknd/cpu/const_source_term_cpu.o : source_terms/bcknd/cpu/const_source_term_cpu.f90 math/math.o field/field_list.o config/num_types.o -source_terms/bcknd/device/const_source_term_device.o : source_terms/bcknd/device/const_source_term_device.f90 math/bcknd/device/device_math.o field/field_list.o config/num_types.o -source_terms/source_term_factory.o : source_terms/source_term_factory.f90 sem/coef.o common/utils.o field/field_list.o common/json_utils.o source_terms/const_source_term.o source_terms/source_term.o -les/les_model.o : les/les_model.f90 device/device.o config/neko_config.o gs/gs_ops.o sem/coef.o sem/dofmap.o field/field_registry.o field/field.o config/num_types.o -les/les_model_fctry.o : les/les_model_fctry.f90 sem/coef.o sem/dofmap.o les/vreman.o les/les_model.o -les/vreman.o : les/vreman.f90 sem/coef.o les/bcknd/cpu/vreman_cpu.o config/neko_config.o common/utils.o common/json_utils.o sem/dofmap.o les/les_model.o field/field.o config/num_types.o -les/bcknd/cpu/vreman_cpu.o : les/bcknd/cpu/vreman_cpu.f90 sem/coef.o math/operators.o field/field.o field/field_registry.o field/scratch_registry.o math/math.o field/field_list.o config/num_types.o -neko.o : neko.f90 mesh/point_zone_registry.o mesh/point_zones/sphere_point_zone.o mesh/point_zones/box_point_zone.o mesh/point_zone.o sem/point_interpolator.o common/time_interpolator.o io/data_streamer.o simulation_components/simcomp_executor.o field/scratch_registry.o field/field_registry.o common/system.o sem/spectral_error_indicator.o simulation_components/probes.o simulation_components/simulation_component.o math/tensor.o math/vector.o fluid/fluid_user_source_term.o field/field_list.o fluid/fluid_stats.o sem/cpr.o math/bcknd/device/device_math.o device/device.o common/jobctrl.o common/signal.o comm/parmetis.o common/user_intf.o common/projection.o math/mathops.o math/operators.o simulation.o io/output.o common/sampler.o case.o config/neko_config.o math/ax.o math/ax_helm_fctry.o krylov/precon_fctry.o krylov/krylov_fctry.o bc/dirichlet.o bc/wall.o bc/bc.o sem/coef.o gs/gather_scatter.o comm/mpi_types.o field/field.o io/file.o common/global_interpolation.o math/mxm_wrapper.o io/format/map.o field/mesh_field.o mesh/point.o mesh/mesh.o adt/tuple.o adt/stack.o adt/uset.o adt/htable.o sem/space.o sem/dofmap.o sem/speclib.o math/math.o common/log.o common/utils.o comm/comm.o config/num_types.o -driver.o : driver.f90 neko.o +config/num_types.o : config/num_types.f90 +common/structs.o : common/structs.f90 config/num_types.o +io/format/nmsh.o : io/format/nmsh.f90 config/num_types.o +io/format/re2.o : io/format/re2.f90 config/num_types.o +io/format/map.o : io/format/map.f90 mesh/mesh.o +io/format/stl.o : io/format/stl.f90 config/num_types.o +common/log.o : common/log.f90 config/num_types.o comm/comm.o +comm/comm.o : comm/comm.F90 config/neko_config.o common/utils.o +mesh/curve.o : mesh/curve.f90 common/utils.o adt/stack.o common/structs.o config/num_types.o +comm/mpi_types.o : comm/mpi_types.f90 io/format/stl.o io/format/nmsh.o io/format/re2.o comm/comm.o +common/datadist.o : common/datadist.f90 +common/distdata.o : common/distdata.f90 adt/uset.o adt/tuple.o adt/stack.o +common/utils.o : common/utils.f90 +common/json_utils.o : common/json_utils.f90 common/utils.o config/num_types.o +common/system.o : common/system.f90 +math/mxm_wrapper.o : math/mxm_wrapper.F90 common/utils.o config/num_types.o +sem/speclib.o : sem/speclib.f90 common/utils.o config/num_types.o +sem/local_interpolation.o : sem/local_interpolation.f90 config/neko_config.o math/bcknd/device/device_math.o device/device.o field/field_list.o field/field.o common/utils.o math/fast3d.o math/math.o mesh/point.o config/num_types.o sem/space.o math/tensor.o +math/math.o : math/math.f90 comm/comm.o config/num_types.o +math/mathops.o : math/mathops.f90 config/num_types.o +math/fast3d.o : math/fast3d.f90 math/math.o sem/speclib.o config/num_types.o +sem/space.o : sem/space.f90 math/mxm_wrapper.o math/tensor.o math/math.o math/fast3d.o common/utils.o device/device.o sem/speclib.o config/num_types.o config/neko_config.o +sem/dofmap.o : sem/dofmap.f90 mesh/hex.o mesh/quad.o mesh/element.o math/math.o device/device.o math/tensor.o math/fast3d.o common/utils.o config/num_types.o adt/tuple.o sem/space.o mesh/mesh.o config/neko_config.o +sem/coef.o : sem/coef.f90 device/device.o math/mxm_wrapper.o sem/bcknd/device/device_coef.o math/bcknd/device/device_math.o mesh/mesh.o math/math.o sem/space.o sem/dofmap.o config/num_types.o config/neko_config.o gs/gs_ops.o gs/gather_scatter.o +sem/cpr.o : sem/cpr.f90 sem/dofmap.o common/log.o math/mxm_wrapper.o math/tensor.o sem/coef.o mesh/mesh.o math/math.o sem/space.o field/field.o config/num_types.o config/neko_config.o gs/gather_scatter.o +sem/spectral_error_indicator.o : sem/spectral_error_indicator.f90 common/utils.o comm/comm.o device/device.o config/neko_config.o gs/gather_scatter.o math/bcknd/device/device_math.o math/tensor.o io/file.o math/math.o field/field_list.o sem/coef.o field/field.o config/num_types.o +common/time_interpolator.o : common/time_interpolator.f90 common/utils.o math/math.o math/bcknd/device/device_math.o config/neko_config.o field/field.o config/num_types.o +sem/interpolation.o : sem/interpolation.f90 sem/space.o math/bcknd/cpu/tensor_cpu.o math/tensor.o math/fast3d.o device/device.o config/num_types.o config/neko_config.o +sem/point_interpolator.o : sem/point_interpolator.f90 config/neko_config.o math/bcknd/device/device_math.o device/device.o common/utils.o math/fast3d.o math/math.o mesh/point.o config/num_types.o sem/space.o math/tensor.o +sem/bcknd/device/device_coef.o : sem/bcknd/device/device_coef.F90 common/utils.o config/num_types.o +gs/gs_bcknd.o : gs/gs_bcknd.f90 config/num_types.o +gs/bcknd/cpu/gs_cpu.o : gs/bcknd/cpu/gs_cpu.f90 gs/gs_ops.o gs/gs_bcknd.o config/num_types.o +gs/bcknd/sx/gs_sx.o : gs/bcknd/sx/gs_sx.f90 gs/gs_ops.o gs/gs_bcknd.o config/num_types.o +gs/bcknd/device/gs_device.o : gs/bcknd/device/gs_device.F90 common/utils.o gs/gs_ops.o device/device.o gs/gs_bcknd.o config/num_types.o config/neko_config.o +gs/gs_ops.o : gs/gs_ops.f90 +gs/gs_comm.o : gs/gs_comm.f90 adt/stack.o comm/comm.o config/num_types.o +gs/gs_mpi.o : gs/gs_mpi.f90 comm/comm.o adt/stack.o gs/gs_ops.o gs/gs_comm.o config/num_types.o config/neko_config.o +gs/bcknd/device/gs_device_mpi.o : gs/bcknd/device/gs_device_mpi.F90 common/utils.o device/device.o adt/htable.o comm/comm.o adt/stack.o gs/gs_ops.o gs/gs_comm.o config/num_types.o +gs/gather_scatter.o : gs/gather_scatter.f90 device/device.o common/profiler.o common/log.o common/utils.o adt/stack.o adt/htable.o config/num_types.o field/field.o sem/dofmap.o comm/comm.o mesh/mesh.o gs/bcknd/device/gs_device_mpi.o gs/gs_mpi.o gs/gs_comm.o gs/gs_ops.o gs/bcknd/cpu/gs_cpu.o gs/bcknd/sx/gs_sx.o gs/bcknd/device/gs_device.o gs/gs_bcknd.o config/neko_config.o +mesh/entity.o : mesh/entity.f90 +mesh/point.o : mesh/point.f90 mesh/entity.o math/math.o config/num_types.o +mesh/element.o : mesh/element.f90 mesh/point.o adt/tuple.o mesh/entity.o config/num_types.o +math/ax.o : math/ax.f90 mesh/mesh.o sem/space.o sem/coef.o config/num_types.o +mesh/quad.o : mesh/quad.f90 mesh/point.o adt/tuple.o mesh/element.o config/num_types.o +mesh/hex.o : mesh/hex.f90 mesh/point.o adt/tuple.o mesh/element.o config/num_types.o +mesh/tet.o : mesh/tet.f90 mesh/point.o adt/tuple.o mesh/element.o config/num_types.o +mesh/tri.o : mesh/tri.f90 mesh/point.o adt/tuple.o mesh/element.o config/num_types.o +adt/htable.o : adt/htable.f90 math/math.o adt/tuple.o mesh/point.o common/utils.o config/num_types.o +adt/uset.o : adt/uset.f90 adt/htable.o config/num_types.o common/utils.o +adt/stack.o : adt/stack.f90 adt/tuple.o math/math.o common/structs.o mesh/point.o common/utils.o io/format/nmsh.o config/num_types.o +adt/tuple.o : adt/tuple.f90 config/num_types.o math/math.o +mesh/facet_zone.o : mesh/facet_zone.f90 common/utils.o adt/stack.o adt/tuple.o +mesh/point_zone.o : mesh/point_zone.f90 device/device.o config/neko_config.o sem/dofmap.o common/utils.o config/num_types.o adt/stack.o +mesh/point_zones/sphere_point_zone.o : mesh/point_zones/sphere_point_zone.f90 math/math.o common/json_utils.o config/num_types.o mesh/point_zone.o +mesh/point_zones/box_point_zone.o : mesh/point_zones/box_point_zone.f90 math/math.o common/json_utils.o config/num_types.o mesh/point_zone.o +mesh/point_zone_factory.o : mesh/point_zone_factory.f90 common/utils.o sem/dofmap.o common/json_utils.o mesh/point_zones/sphere_point_zone.o mesh/point_zones/box_point_zone.o mesh/point_zone.o +mesh/point_zone_registry.o : mesh/point_zone_registry.f90 common/json_utils.o common/utils.o sem/dofmap.o mesh/point_zone_factory.o mesh/point_zone.o +mesh/mesh.o : mesh/mesh.f90 mesh/curve.o adt/uset.o math/math.o mesh/facet_zone.o comm/comm.o common/distdata.o common/datadist.o adt/htable.o adt/tuple.o adt/stack.o common/utils.o mesh/quad.o mesh/hex.o mesh/element.o mesh/point.o config/num_types.o +mesh/octree.o : mesh/octree.f90 common/utils.o mesh/point.o config/num_types.o +mesh/tet_mesh.o : mesh/tet_mesh.f90 common/utils.o mesh/point.o mesh/tet.o mesh/mesh.o +mesh/tri_mesh.o : mesh/tri_mesh.f90 mesh/point.o mesh/tri.o +field/field_registry.o : field/field_registry.f90 adt/htable.o common/utils.o sem/dofmap.o field/field.o +field/scratch_registry.o : field/scratch_registry.f90 sem/dofmap.o field/field.o +field/field.o : field/field.f90 sem/dofmap.o sem/space.o mesh/mesh.o math/math.o device/device.o config/num_types.o math/bcknd/device/device_math.o config/neko_config.o +field/field_list.o : field/field_list.f90 field/field.o +field/field_series.o : field/field_series.f90 field/field.o config/num_types.o +field/mesh_field.o : field/mesh_field.f90 mesh/mesh.o +field/mean_field.o : field/mean_field.f90 math/bcknd/device/device_math.o math/math.o field/field.o config/num_types.o common/stats_quant.o config/neko_config.o +field/mean_sqr_field.o : field/mean_sqr_field.f90 math/math.o math/bcknd/device/device_math.o field/mean_field.o config/neko_config.o config/num_types.o +io/format/rea.o : io/format/rea.f90 mesh/mesh.o config/num_types.o +math/bcknd/cpu/cdtp.o : math/bcknd/cpu/cdtp.f90 config/num_types.o +math/bcknd/cpu/conv1.o : math/bcknd/cpu/conv1.f90 config/num_types.o +math/bcknd/cpu/dudxyz.o : math/bcknd/cpu/dudxyz.f90 config/num_types.o +math/bcknd/cpu/opgrad.o : math/bcknd/cpu/opgrad.f90 config/num_types.o +math/bcknd/sx/sx_cdtp.o : math/bcknd/sx/sx_cdtp.f90 math/math.o config/num_types.o +math/bcknd/sx/sx_conv1.o : math/bcknd/sx/sx_conv1.f90 config/num_types.o +math/bcknd/sx/sx_dudxyz.o : math/bcknd/sx/sx_dudxyz.f90 math/math.o config/num_types.o +math/bcknd/sx/sx_opgrad.o : math/bcknd/sx/sx_opgrad.f90 config/num_types.o +math/bcknd/sx/sx_cfl.o : math/bcknd/sx/sx_cfl.f90 config/num_types.o +math/operators.o : math/operators.f90 math/bcknd/device/device_math.o device/device.o comm/comm.o math/math.o field/field.o sem/coef.o sem/space.o math/bcknd/device/opr_device.o math/bcknd/xsmm/opr_xsmm.o math/bcknd/sx/opr_sx.o math/bcknd/cpu/opr_cpu.o config/num_types.o config/neko_config.o +math/bcknd/cpu/opr_cpu.o : math/bcknd/cpu/opr_cpu.f90 math/mathops.o gs/gather_scatter.o field/field.o math/math.o sem/coef.o sem/space.o config/num_types.o math/bcknd/cpu/conv1.o math/bcknd/cpu/cdtp.o math/bcknd/cpu/opgrad.o math/bcknd/cpu/dudxyz.o +math/bcknd/sx/opr_sx.o : math/bcknd/sx/opr_sx.f90 math/mathops.o field/field.o math/math.o sem/coef.o sem/space.o config/num_types.o gs/gather_scatter.o math/bcknd/sx/sx_cfl.o math/bcknd/sx/sx_cdtp.o math/bcknd/sx/sx_conv1.o math/bcknd/sx/sx_opgrad.o math/bcknd/sx/sx_dudxyz.o +math/bcknd/xsmm/opr_xsmm.o : math/bcknd/xsmm/opr_xsmm.F90 math/mathops.o gs/gather_scatter.o field/field.o mesh/mesh.o math/math.o sem/coef.o sem/space.o math/mxm_wrapper.o config/num_types.o +math/bcknd/device/opr_device.o : math/bcknd/device/opr_device.F90 comm/comm.o common/utils.o field/field.o mesh/mesh.o sem/coef.o sem/space.o device/device.o math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o config/num_types.o gs/gather_scatter.o +math/tensor.o : math/tensor.f90 device/device.o config/neko_config.o math/mxm_wrapper.o config/num_types.o math/bcknd/device/tensor_device.o math/bcknd/sx/tensor_sx.o math/bcknd/cpu/tensor_cpu.o math/bcknd/xsmm/tensor_xsmm.o +math/bcknd/cpu/tensor_cpu.o : math/bcknd/cpu/tensor_cpu.f90 math/mxm_wrapper.o config/num_types.o +math/bcknd/sx/tensor_sx.o : math/bcknd/sx/tensor_sx.f90 math/mxm_wrapper.o config/num_types.o +math/bcknd/xsmm/tensor_xsmm.o : math/bcknd/xsmm/tensor_xsmm.F90 math/mxm_wrapper.o config/num_types.o +math/fdm.o : math/fdm.f90 comm/comm.o common/utils.o device/device.o math/bcknd/device/fdm_device.o math/bcknd/cpu/fdm_cpu.o math/bcknd/xsmm/fdm_xsmm.o math/bcknd/sx/fdm_sx.o math/tensor.o math/fast3d.o gs/gather_scatter.o sem/dofmap.o sem/space.o mesh/mesh.o math/math.o sem/speclib.o config/num_types.o config/neko_config.o +math/bcknd/cpu/fdm_cpu.o : math/bcknd/cpu/fdm_cpu.f90 math/bcknd/cpu/tensor_cpu.o config/num_types.o +math/bcknd/sx/fdm_sx.o : math/bcknd/sx/fdm_sx.f90 math/bcknd/sx/tensor_sx.o config/num_types.o +math/bcknd/xsmm/fdm_xsmm.o : math/bcknd/xsmm/fdm_xsmm.f90 math/bcknd/xsmm/tensor_xsmm.o config/num_types.o +math/schwarz.o : math/schwarz.f90 config/neko_config.o device/device.o math/fdm.o math/bcknd/device/device_math.o math/bcknd/device/device_schwarz.o gs/gather_scatter.o bc/bc.o sem/dofmap.o sem/space.o mesh/mesh.o math/math.o config/num_types.o +math/vector.o : math/vector.f90 common/utils.o math/bcknd/device/device_math.o device/device.o config/num_types.o config/neko_config.o +math/matrix.o : math/matrix.f90 common/utils.o math/bcknd/device/device_math.o device/device.o config/num_types.o config/neko_config.o +common/checkpoint.o : common/checkpoint.f90 mesh/mesh.o common/utils.o field/field.o device/device.o sem/space.o field/field_series.o config/num_types.o config/neko_config.o +io/generic_file.o : io/generic_file.f90 config/num_types.o +io/map_file.o : io/map_file.f90 io/format/map.o comm/comm.o common/utils.o io/generic_file.o +io/re2_file.o : io/re2_file.f90 common/log.o adt/htable.o io/map_file.o io/format/map.o io/format/re2.o common/datadist.o comm/mpi_types.o comm/comm.o mesh/point.o mesh/mesh.o common/utils.o config/num_types.o io/generic_file.o +io/rea_file.o : io/rea_file.f90 common/log.o adt/htable.o common/datadist.o comm/comm.o io/map_file.o io/re2_file.o io/format/rea.o io/format/map.o mesh/point.o mesh/mesh.o common/utils.o config/num_types.o io/generic_file.o +io/fld_file.o : io/fld_file.f90 comm/mpi_types.o math/math.o common/datadist.o comm/comm.o common/utils.o mesh/mesh.o fluid/mean_sqr_flow.o fluid/mean_flow.o io/fld_file_data.o math/vector.o common/structs.o sem/space.o sem/dofmap.o field/field_list.o field/field.o io/generic_file.o +io/fld_file_data.o : io/fld_file_data.f90 math/vector.o math/math.o config/num_types.o +io/vtk_file.o : io/vtk_file.f90 comm/comm.o common/log.o mesh/tri_mesh.o mesh/tet_mesh.o field/mesh_field.o sem/dofmap.o field/field.o mesh/mesh.o common/utils.o io/generic_file.o config/num_types.o +io/stl_file.o : io/stl_file.f90 io/format/stl.o comm/comm.o comm/mpi_types.o mesh/point.o common/log.o mesh/tri_mesh.o io/generic_file.o config/num_types.o +io/nmsh_file.o : io/nmsh_file.f90 common/log.o comm/mpi_types.o common/datadist.o mesh/element.o io/format/nmsh.o adt/tuple.o mesh/point.o common/utils.o mesh/mesh.o comm/comm.o io/generic_file.o +io/chkp_file.o : io/chkp_file.f90 common/global_interpolation.o comm/comm.o comm/mpi_types.o sem/interpolation.o math/math.o mesh/mesh.o sem/space.o common/utils.o math/bcknd/device/device_math.o sem/dofmap.o field/field.o config/num_types.o common/checkpoint.o field/field_series.o io/generic_file.o +io/csv_file.o : io/csv_file.f90 comm/comm.o common/log.o config/num_types.o common/utils.o io/generic_file.o math/matrix.o math/vector.o +io/file.o : io/file.f90 io/csv_file.o io/stl_file.o io/vtk_file.o io/fld_file_data.o io/fld_file.o io/re2_file.o io/rea_file.o io/map_file.o io/chkp_file.o io/nmsh_file.o io/generic_file.o config/num_types.o common/utils.o +io/output.o : io/output.f90 io/file.o config/num_types.o +io/fluid_output.o : io/fluid_output.f90 io/output.o device/device.o config/neko_config.o field/field_list.o scalar/scalar_scheme.o fluid/fluid_scheme.o config/num_types.o +io/fld_file_output.o : io/fld_file_output.f90 io/output.o device/device.o config/neko_config.o field/field_list.o config/num_types.o +io/chkp_output.o : io/chkp_output.f90 config/num_types.o io/output.o common/checkpoint.o +io/mean_flow_output.o : io/mean_flow_output.f90 io/output.o device/device.o config/num_types.o fluid/mean_flow.o +io/fluid_stats_output.o : io/fluid_stats_output.f90 io/output.o device/device.o config/num_types.o config/neko_config.o fluid/fluid_stats.o +io/mean_sqr_flow_output.o : io/mean_sqr_flow_output.f90 io/output.o config/num_types.o fluid/mean_sqr_flow.o +io/data_streamer.o : io/data_streamer.F90 config/neko_config.o comm/mpi_types.o comm/comm.o device/device.o common/utils.o sem/coef.o field/field.o config/num_types.o +common/sampler.o : common/sampler.f90 common/time_based_controller.o config/num_types.o common/profiler.o common/utils.o common/log.o comm/comm.o io/fld_file.o io/output.o +common/global_interpolation.o : common/global_interpolation.F90 comm/mpi_types.o math/math.o comm/comm.o sem/local_interpolation.o common/utils.o common/log.o mesh/mesh.o sem/dofmap.o sem/space.o config/num_types.o +common/profiler.o : common/profiler.F90 common/craypat.o device/hip/roctx.o device/cuda/nvtx.o device/device.o config/neko_config.o +common/craypat.o : common/craypat.F90 common/utils.o adt/stack.o +bc/bc.o : bc/bc.f90 common/utils.o adt/tuple.o adt/stack.o mesh/facet_zone.o mesh/mesh.o sem/space.o sem/dofmap.o device/device.o config/num_types.o config/neko_config.o +bc/dirichlet.o : bc/dirichlet.f90 bc/bc.o config/num_types.o bc/bcknd/device/device_dirichlet.o +bc/dong_outflow.o : bc/dong_outflow.f90 bc/bcknd/device/device_dong_outflow.o common/utils.o sem/coef.o sem/dofmap.o field/field.o bc/bc.o config/num_types.o device/device.o bc/dirichlet.o config/neko_config.o +bc/wall.o : bc/wall.f90 bc/dirichlet.o config/num_types.o bc/bcknd/device/device_wall.o +bc/inflow.o : bc/inflow.f90 bc/dirichlet.o config/num_types.o bc/bcknd/device/device_inflow.o +bc/usr_inflow.o : bc/usr_inflow.f90 common/utils.o bc/bcknd/device/device_inhom_dirichlet.o device/device.o bc/inflow.o sem/coef.o config/num_types.o +bc/usr_scalar.o : bc/usr_scalar.f90 common/utils.o bc/bcknd/device/device_inhom_dirichlet.o device/device.o bc/dirichlet.o sem/coef.o config/num_types.o +bc/facet_normal.o : bc/facet_normal.f90 common/utils.o bc/dirichlet.o sem/coef.o math/math.o config/num_types.o bc/bcknd/device/device_facet_normal.o +bc/symmetry.o : bc/symmetry.f90 adt/tuple.o adt/stack.o common/utils.o math/math.o sem/coef.o bc/bc.o bc/dirichlet.o config/num_types.o config/neko_config.o bc/bcknd/device/device_symmetry.o +bc/non_normal.o : bc/non_normal.f90 adt/stack.o common/utils.o math/math.o sem/coef.o device/device.o adt/tuple.o bc/dirichlet.o config/num_types.o config/neko_config.o bc/symmetry.o +bc/blasius.o : bc/blasius.f90 fluid/flow_profile.o bc/bcknd/device/device_inhom_dirichlet.o device/device.o bc/inflow.o common/utils.o sem/coef.o config/num_types.o +krylov/precon.o : krylov/precon.f90 config/num_types.o +krylov/krylov.o : krylov/krylov.f90 config/neko_config.o krylov/bcknd/device/pc_identity_device.o krylov/pc_identity.o bc/bc.o common/utils.o field/field.o mesh/mesh.o sem/coef.o krylov/precon.o config/num_types.o math/ax.o gs/gather_scatter.o +krylov/pc_identity.o : krylov/pc_identity.f90 config/num_types.o krylov/precon.o math/math.o +krylov/precon_fctry.o : krylov/precon_fctry.f90 config/neko_config.o common/utils.o krylov/pc_hsmg.o krylov/bcknd/device/pc_jacobi_device.o krylov/bcknd/sx/pc_jacobi_sx.o krylov/bcknd/cpu/pc_jacobi.o krylov/bcknd/device/pc_identity_device.o krylov/pc_identity.o krylov/precon.o +krylov/krylov_fctry.o : krylov/krylov_fctry.f90 config/neko_config.o common/utils.o krylov/precon.o krylov/krylov.o config/num_types.o krylov/bcknd/device/gmres_device.o krylov/bcknd/sx/gmres_sx.o krylov/bcknd/cpu/gmres.o krylov/bcknd/cpu/bicgstab.o krylov/bcknd/device/fusedcg_device.o krylov/bcknd/device/pipecg_device.o krylov/bcknd/sx/pipecg_sx.o krylov/bcknd/cpu/pipecg.o krylov/bcknd/cpu/cacg.o krylov/bcknd/device/cg_device.o krylov/bcknd/sx/cg_sx.o krylov/bcknd/cpu/cg.o +krylov/bcknd/cpu/cg.o : krylov/bcknd/cpu/cg.f90 comm/comm.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o math/ax.o krylov/precon.o krylov/krylov.o config/num_types.o +krylov/bcknd/cpu/cacg.o : krylov/bcknd/cpu/cacg.f90 math/mxm_wrapper.o comm/comm.o common/utils.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o math/ax.o krylov/precon.o krylov/krylov.o config/num_types.o +krylov/bcknd/cpu/pipecg.o : krylov/bcknd/cpu/pipecg.f90 comm/comm.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o +krylov/bcknd/cpu/bicgstab.o : krylov/bcknd/cpu/bicgstab.f90 common/utils.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o math/ax.o krylov/precon.o krylov/krylov.o config/num_types.o +krylov/bcknd/cpu/gmres.o : krylov/bcknd/cpu/gmres.f90 comm/comm.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o +krylov/bcknd/cpu/pc_jacobi.o : krylov/bcknd/cpu/pc_jacobi.f90 gs/gather_scatter.o sem/dofmap.o config/num_types.o sem/coef.o krylov/precon.o math/math.o +krylov/bcknd/sx/cg_sx.o : krylov/bcknd/sx/cg_sx.f90 math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o math/ax.o krylov/precon.o krylov/krylov.o config/num_types.o +krylov/bcknd/sx/pipecg_sx.o : krylov/bcknd/sx/pipecg_sx.f90 comm/comm.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o +krylov/bcknd/sx/gmres_sx.o : krylov/bcknd/sx/gmres_sx.f90 comm/comm.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o +krylov/bcknd/sx/pc_jacobi_sx.o : krylov/bcknd/sx/pc_jacobi_sx.f90 gs/gather_scatter.o config/num_types.o sem/dofmap.o sem/coef.o krylov/precon.o math/math.o +krylov/bcknd/device/cg_device.o : krylov/bcknd/device/cg_device.f90 math/bcknd/device/device_math.o device/device.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o math/ax.o krylov/precon.o krylov/krylov.o config/num_types.o +krylov/bcknd/device/pipecg_device.o : krylov/bcknd/device/pipecg_device.F90 comm/comm.o device/device.o math/bcknd/device/device_math.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o +krylov/bcknd/device/fusedcg_device.o : krylov/bcknd/device/fusedcg_device.F90 comm/comm.o device/device.o math/bcknd/device/device_math.o math/math.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o +krylov/bcknd/device/gmres_device.o : krylov/bcknd/device/gmres_device.F90 comm/comm.o device/device.o math/bcknd/device/device_math.o math/math.o krylov/bcknd/device/pc_identity_device.o bc/bc.o gs/gather_scatter.o sem/coef.o field/field.o config/num_types.o math/ax.o krylov/precon.o krylov/krylov.o +krylov/bcknd/device/pc_jacobi_device.o : krylov/bcknd/device/pc_jacobi_device.F90 gs/gather_scatter.o device/device.o math/bcknd/device/device_math.o config/num_types.o sem/dofmap.o sem/coef.o krylov/precon.o +krylov/bcknd/device/pc_identity_device.o : krylov/bcknd/device/pc_identity_device.f90 config/num_types.o krylov/precon.o math/bcknd/device/device_math.o device/device.o +time_schemes/time_scheme.o : time_schemes/time_scheme.f90 config/num_types.o config/neko_config.o +time_schemes/bdf_time_scheme.o : time_schemes/bdf_time_scheme.f90 common/utils.o math/math.o time_schemes/time_scheme.o config/num_types.o config/neko_config.o +time_schemes/ext_time_scheme.o : time_schemes/ext_time_scheme.f90 common/utils.o math/math.o time_schemes/time_scheme.o config/num_types.o config/neko_config.o +time_schemes/ab_time_scheme.o : time_schemes/ab_time_scheme.f90 common/utils.o math/math.o time_schemes/time_scheme.o config/num_types.o config/neko_config.o +time_schemes/time_scheme_controller.o : time_schemes/time_scheme_controller.f90 device/device.o time_schemes/ab_time_scheme.o time_schemes/ext_time_scheme.o time_schemes/bdf_time_scheme.o config/num_types.o config/neko_config.o +common/time_based_controller.o : common/time_based_controller.f90 common/utils.o config/num_types.o +common/stats_quant.o : common/stats_quant.f90 config/num_types.o +common/statistics.o : common/statistics.f90 comm/comm.o common/log.o common/stats_quant.o config/num_types.o +common/rhs_maker.o : common/rhs_maker.f90 field/field.o field/field_series.o config/num_types.o +common/rhs_maker_fctry.o : common/rhs_maker_fctry.f90 config/neko_config.o common/bcknd/device/rhs_maker_device.o common/bcknd/sx/rhs_maker_sx.o common/bcknd/cpu/rhs_maker_cpu.o common/rhs_maker.o +simulation_components/probes.o : simulation_components/probes.F90 case.o io/csv_file.o io/file.o device/device.o comm/comm.o math/tensor.o common/global_interpolation.o common/json_utils.o sem/dofmap.o field/field_registry.o simulation_components/simulation_component.o field/field_list.o common/utils.o common/log.o math/matrix.o config/num_types.o +common/bcknd/cpu/rhs_maker_cpu.o : common/bcknd/cpu/rhs_maker_cpu.f90 field/scratch_registry.o config/num_types.o field/field.o field/field_series.o common/rhs_maker.o +common/bcknd/sx/rhs_maker_sx.o : common/bcknd/sx/rhs_maker_sx.f90 field/scratch_registry.o config/num_types.o field/field.o field/field_series.o common/rhs_maker.o +common/bcknd/device/rhs_maker_device.o : common/bcknd/device/rhs_maker_device.F90 config/num_types.o field/field.o field/field_series.o common/utils.o device/device.o common/rhs_maker.o +common/material_properties.o : common/material_properties.f90 comm/comm.o common/utils.o common/user_intf.o common/log.o common/json_utils.o config/num_types.o +config/neko_config.o : config/neko_config.f90 +case.o : case.f90 common/material_properties.o mesh/point_zone_registry.o field/scratch_registry.o common/json_utils.o common/user_intf.o common/jobctrl.o common/log.o time_schemes/time_scheme_controller.o comm/comm.o mesh/mesh.o common/utils.o io/file.o common/statistics.o fluid/flow_ic.o common/sampler.o comm/redist.o comm/parmetis.o field/mesh_field.o io/fluid_stats_output.o io/mean_flow_output.o io/mean_sqr_flow_output.o io/chkp_output.o io/fluid_output.o fluid/fluid_fctry.o config/num_types.o +common/user_intf.o : common/user_intf.f90 common/utils.o config/num_types.o bc/usr_scalar.o bc/usr_inflow.o mesh/mesh.o sem/coef.o scalar/scalar_user_source_term.o fluid/fluid_user_source_term.o field/field.o +fluid/fluid_scheme.o : fluid/fluid_scheme.f90 common/material_properties.o common/utils.o common/user_intf.o field/scratch_registry.o common/json_utils.o field/field_registry.o common/log.o math/operators.o math/mathops.o time_schemes/time_scheme_controller.o math/math.o mesh/mesh.o bc/bc.o fluid/fluid_stats.o krylov/precon_fctry.o krylov/krylov_fctry.o bc/non_normal.o bc/symmetry.o bc/dong_outflow.o bc/dirichlet.o bc/blasius.o bc/usr_inflow.o bc/inflow.o bc/wall.o sem/coef.o krylov/krylov.o sem/dofmap.o sem/space.o field/field.o field/field_list.o fluid/fluid_source_term.o fluid/fluid_user_source_term.o config/num_types.o fluid/mean_flow.o common/checkpoint.o config/neko_config.o fluid/mean_sqr_flow.o gs/gather_scatter.o +fluid/fluid_aux.o : fluid/fluid_aux.f90 krylov/krylov.o config/num_types.o common/log.o +fluid/fluid_pnpn.o : fluid/fluid_pnpn.f90 common/material_properties.o common/json_utils.o common/profiler.o fluid/advection.o common/log.o device/device.o common/projection.o time_schemes/time_scheme_controller.o fluid/fluid_aux.o math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o bc/facet_normal.o field/field_series.o fluid/fluid_scheme.o fluid/fluid_volflow.o common/rhs_maker_fctry.o math/ax_helm_fctry.o fluid/pnpn_res_fctry.o +fluid/fluid_fctry.o : fluid/fluid_fctry.f90 config/neko_config.o common/utils.o fluid/fluid_pnpn.o fluid/fluid_scheme.o +fluid/fluid_volflow.o : fluid/fluid_volflow.f90 math/ax.o bc/bc.o field/scratch_registry.o common/json_utils.o gs/gather_scatter.o math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o config/neko_config.o comm/comm.o math/math.o time_schemes/time_scheme_controller.o sem/coef.o field/field.o sem/dofmap.o krylov/precon.o krylov/krylov.o math/mathops.o config/num_types.o math/operators.o +fluid/pnpn_res.o : fluid/pnpn_res.f90 config/num_types.o mesh/mesh.o sem/space.o bc/facet_normal.o sem/coef.o field/field.o math/ax.o gs/gather_scatter.o +fluid/pnpn_res_fctry.o : fluid/pnpn_res_fctry.f90 fluid/bcknd/sx/pnpn_res_sx.o fluid/bcknd/cpu/pnpn_res_cpu.o fluid/bcknd/device/pnpn_res_device.o fluid/pnpn_res.o common/utils.o config/neko_config.o +fluid/mean_flow.o : fluid/mean_flow.f90 field/field.o field/mean_field.o +fluid/fluid_stats.o : fluid/fluid_stats.f90 common/utils.o config/neko_config.o device/device.o common/stats_quant.o gs/gather_scatter.o field/field_list.o field/field_registry.o field/field.o sem/coef.o math/operators.o math/math.o math/mathops.o math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o field/mean_field.o +fluid/mean_sqr_flow.o : fluid/mean_sqr_flow.f90 field/field.o field/mean_sqr_field.o +fluid/flow_profile.o : fluid/flow_profile.f90 config/num_types.o +fluid/flow_ic.o : fluid/flow_ic.f90 common/json_utils.o common/user_intf.o math/math.o sem/coef.o common/utils.o field/field.o device/device.o math/bcknd/device/device_math.o fluid/flow_profile.o config/neko_config.o gs/gather_scatter.o +fluid/advection.o : fluid/advection.f90 device/device.o sem/interpolation.o math/operators.o config/neko_config.o math/bcknd/device/device_math.o sem/coef.o field/field.o sem/space.o common/utils.o math/math.o config/num_types.o +fluid/bcknd/cpu/pnpn_res_cpu.o : fluid/bcknd/cpu/pnpn_res_cpu.f90 sem/space.o config/num_types.o mesh/mesh.o field/scratch_registry.o fluid/pnpn_res.o bc/facet_normal.o sem/coef.o math/ax.o field/field.o math/operators.o gs/gather_scatter.o +fluid/bcknd/sx/pnpn_res_sx.o : fluid/bcknd/sx/pnpn_res_sx.f90 sem/space.o config/num_types.o mesh/mesh.o field/scratch_registry.o fluid/pnpn_res.o bc/facet_normal.o sem/coef.o math/ax.o field/field.o math/operators.o gs/gather_scatter.o +fluid/bcknd/device/pnpn_res_device.o : fluid/bcknd/device/pnpn_res_device.F90 field/scratch_registry.o fluid/pnpn_res.o math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o sem/space.o config/num_types.o mesh/mesh.o bc/facet_normal.o sem/coef.o math/ax.o field/field.o math/operators.o gs/gather_scatter.o +fluid/fluid_user_source_term.o : fluid/fluid_user_source_term.f90 sem/dofmap.o math/math.o math/bcknd/device/device_math.o device/device.o sem/coef.o field/field_list.o source_terms/source_term.o common/utils.o config/num_types.o config/neko_config.o +fluid/fluid_source_term.o : fluid/fluid_source_term.f90 common/user_intf.o sem/coef.o common/json_utils.o field/field_list.o field/field.o source_terms/source_term_factory.o source_terms/source_term.o fluid/fluid_user_source_term.o config/num_types.o config/neko_config.o +simulation.o : simulation.f90 common/json_utils.o simulation_components/simcomp_executor.o common/profiler.o field/field.o common/jobctrl.o math/bcknd/device/device_math.o device/device.o common/log.o math/math.o io/file.o time_schemes/time_scheme_controller.o gs/gather_scatter.o case.o +math/ax_helm_fctry.o : math/ax_helm_fctry.f90 math/bcknd/cpu/ax_helm.o math/bcknd/sx/ax_helm_sx.o math/bcknd/xsmm/ax_helm_xsmm.o math/bcknd/device/ax_helm_device.o math/ax.o config/neko_config.o +math/bcknd/cpu/ax_helm.o : math/bcknd/cpu/ax_helm.f90 math/math.o mesh/mesh.o sem/space.o sem/coef.o config/num_types.o math/ax.o +math/bcknd/sx/ax_helm_sx.o : math/bcknd/sx/ax_helm_sx.f90 math/math.o mesh/mesh.o sem/space.o sem/coef.o config/num_types.o math/ax.o +math/bcknd/xsmm/ax_helm_xsmm.o : math/bcknd/xsmm/ax_helm_xsmm.F90 math/mxm_wrapper.o mesh/mesh.o sem/space.o sem/coef.o config/num_types.o math/ax.o +math/bcknd/device/ax_helm_device.o : math/bcknd/device/ax_helm_device.F90 device/device.o math/bcknd/device/device_math.o mesh/mesh.o sem/space.o sem/coef.o config/num_types.o math/ax.o +common/projection.o : common/projection.f90 common/log.o common/profiler.o common/bcknd/device/device_projection.o math/bcknd/device/device_math.o device/device.o config/neko_config.o gs/gather_scatter.o comm/comm.o bc/bc.o math/ax.o sem/coef.o math/math.o config/num_types.o +common/bcknd/device/device_projection.o : common/bcknd/device/device_projection.F90 common/utils.o config/num_types.o +comm/parmetis.o : comm/parmetis.F90 mesh/mesh.o field/mesh_field.o config/num_types.o common/utils.o mesh/point.o comm/comm.o +comm/redist.o : comm/redist.f90 mesh/element.o mesh/facet_zone.o io/format/nmsh.o mesh/mesh.o comm/comm.o mesh/curve.o adt/stack.o mesh/point.o adt/htable.o comm/mpi_types.o field/mesh_field.o +krylov/pc_hsmg.o : krylov/pc_hsmg.f90 krylov/krylov_fctry.o krylov/krylov.o mesh/mesh.o sem/coef.o field/field.o sem/dofmap.o sem/space.o common/profiler.o math/bcknd/device/device_math.o device/device.o krylov/bcknd/device/pc_jacobi_device.o krylov/bcknd/sx/pc_jacobi_sx.o krylov/bcknd/cpu/pc_jacobi.o math/schwarz.o bc/dirichlet.o bc/bc.o sem/interpolation.o gs/gather_scatter.o math/ax_helm_fctry.o math/ax.o krylov/precon.o common/utils.o math/math.o config/num_types.o config/neko_config.o +common/signal.o : common/signal.f90 common/utils.o +common/jobctrl.o : common/jobctrl.f90 common/log.o comm/comm.o common/utils.o common/signal.o config/num_types.o +device/cuda_intf.o : device/cuda_intf.F90 common/utils.o +device/hip_intf.o : device/hip_intf.F90 common/utils.o +device/cuda/nvtx.o : device/cuda/nvtx.F90 +device/hip/roctx.o : device/hip/roctx.F90 +device/opencl_intf.o : device/opencl_intf.F90 common/utils.o config/num_types.o +device/opencl/prgm_lib.o : device/opencl/prgm_lib.F90 common/utils.o device/opencl_intf.o +device/dummy_device.o : device/dummy_device.F90 +device/device.o : device/device.F90 device/opencl/prgm_lib.o device/dummy_device.o common/utils.o adt/htable.o device/hip_intf.o device/cuda_intf.o device/opencl_intf.o config/num_types.o +math/bcknd/device/device_math.o : math/bcknd/device/device_math.F90 config/num_types.o common/utils.o comm/comm.o +math/bcknd/device/device_schwarz.o : math/bcknd/device/device_schwarz.F90 device/device.o common/utils.o config/num_types.o +math/bcknd/device/tensor_device.o : math/bcknd/device/tensor_device.F90 common/utils.o +math/bcknd/device/fdm_device.o : math/bcknd/device/fdm_device.F90 device/device.o common/utils.o config/num_types.o +math/bcknd/device/device_mathops.o : math/bcknd/device/device_mathops.F90 common/utils.o config/num_types.o +bc/bcknd/device/device_dirichlet.o : bc/bcknd/device/device_dirichlet.F90 common/utils.o config/num_types.o +bc/bcknd/device/device_inflow.o : bc/bcknd/device/device_inflow.F90 common/utils.o config/num_types.o +bc/bcknd/device/device_wall.o : bc/bcknd/device/device_wall.F90 common/utils.o +bc/bcknd/device/device_symmetry.o : bc/bcknd/device/device_symmetry.F90 common/utils.o config/num_types.o +bc/bcknd/device/device_facet_normal.o : bc/bcknd/device/device_facet_normal.F90 common/utils.o +bc/bcknd/device/device_inhom_dirichlet.o : bc/bcknd/device/device_inhom_dirichlet.F90 common/utils.o config/num_types.o +bc/bcknd/device/device_dong_outflow.o : bc/bcknd/device/device_dong_outflow.F90 common/utils.o config/num_types.o +scalar/bcknd/device/scalar_residual_device.o : scalar/bcknd/device/scalar_residual_device.F90 math/bcknd/device/device_mathops.o math/bcknd/device/device_math.o math/operators.o gs/gather_scatter.o scalar/scalar_residual.o +scalar/scalar_scheme.o : scalar/scalar_scheme.f90 scalar/scalar_source_term.o common/utils.o common/material_properties.o common/user_intf.o common/json_utils.o bc/usr_scalar.o field/field_registry.o common/log.o time_schemes/time_scheme_controller.o mesh/facet_zone.o mesh/mesh.o bc/bc.o krylov/precon_fctry.o krylov/pc_hsmg.o krylov/bcknd/sx/pc_jacobi_sx.o krylov/bcknd/device/pc_jacobi_device.o krylov/bcknd/cpu/pc_jacobi.o krylov/krylov_fctry.o bc/dirichlet.o sem/coef.o krylov/krylov.o sem/dofmap.o sem/space.o field/field.o config/num_types.o common/checkpoint.o gs/gather_scatter.o +scalar/scalar_pnpn.o : scalar/scalar_pnpn.f90 config/neko_config.o common/material_properties.o common/user_intf.o common/json_utils.o common/profiler.o fluid/advection.o common/log.o math/math.o common/projection.o time_schemes/time_scheme_controller.o scalar/scalar_aux.o math/bcknd/device/device_math.o krylov/krylov.o bc/facet_normal.o field/field_series.o math/ax.o scalar/scalar_residual.o gs/gather_scatter.o device/device.o sem/coef.o common/checkpoint.o mesh/mesh.o bc/bc.o field/field.o bc/dirichlet.o scalar/scalar_scheme.o common/rhs_maker_fctry.o math/ax_helm_fctry.o scalar/scalar_residual_fctry.o config/num_types.o +scalar/scalar_aux.o : scalar/scalar_aux.f90 krylov/krylov.o config/num_types.o common/log.o +scalar/scalar_residual.o : scalar/scalar_residual.f90 config/num_types.o mesh/mesh.o sem/space.o bc/facet_normal.o scalar/source_scalar.o sem/coef.o field/field.o math/ax.o gs/gather_scatter.o +scalar/scalar_residual_fctry.o : scalar/scalar_residual_fctry.f90 scalar/bcknd/sx/scalar_residual_sx.o scalar/bcknd/cpu/scalar_residual_cpu.o scalar/bcknd/device/scalar_residual_device.o scalar/scalar_residual.o config/neko_config.o +scalar/scalar_ic.o : scalar/scalar_ic.f90 common/json_utils.o common/user_intf.o math/math.o sem/coef.o common/utils.o field/field.o device/device.o math/bcknd/device/device_math.o config/num_types.o config/neko_config.o gs/gather_scatter.o +scalar/scalar_source_term.o : scalar/scalar_source_term.f90 common/user_intf.o sem/coef.o common/json_utils.o field/field_list.o field/field.o source_terms/source_term_factory.o source_terms/source_term.o scalar/scalar_user_source_term.o config/num_types.o config/neko_config.o +scalar/scalar_user_source_term.o : scalar/scalar_user_source_term.f90 sem/dofmap.o math/math.o math/bcknd/device/device_math.o device/device.o sem/coef.o field/field_list.o source_terms/source_term.o common/utils.o config/num_types.o config/neko_config.o +scalar/bcknd/cpu/scalar_residual_cpu.o : scalar/bcknd/cpu/scalar_residual_cpu.f90 math/operators.o scalar/scalar_residual.o gs/gather_scatter.o +scalar/bcknd/sx/scalar_residual_sx.o : scalar/bcknd/sx/scalar_residual_sx.f90 math/operators.o scalar/scalar_residual.o gs/gather_scatter.o +scalar/source_scalar.o : scalar/source_scalar.f90 math/bcknd/device/device_math.o device/device.o common/utils.o sem/dofmap.o config/num_types.o config/neko_config.o +simulation_components/simulation_component.o : simulation_components/simulation_component.f90 common/json_utils.o common/time_based_controller.o case.o config/num_types.o +simulation_components/simcomp_executor.o : simulation_components/simcomp_executor.f90 case.o common/json_utils.o simulation_components/simulation_component_factory.o simulation_components/simulation_component.o config/num_types.o +simulation_components/vorticity.o : simulation_components/vorticity.f90 common/json_utils.o io/fld_file_output.o case.o math/operators.o field/field.o field/field_registry.o simulation_components/simulation_component.o config/num_types.o +simulation_components/lambda2.o : simulation_components/lambda2.f90 device/device.o case.o math/operators.o field/field.o field/field_registry.o simulation_components/simulation_component.o config/num_types.o +simulation_components/scalar.o : simulation_components/scalar.f90 common/json_utils.o scalar/scalar_ic.o common/log.o scalar/scalar_pnpn.o case.o math/operators.o field/field.o field/field_registry.o simulation_components/simulation_component.o config/num_types.o +simulation_components/les_simcomp.o : simulation_components/les_simcomp.f90 common/json_utils.o les/les_model_fctry.o les/les_model.o case.o math/operators.o field/field.o field/field_registry.o simulation_components/simulation_component.o config/num_types.o +simulation_components/simulation_component_factory.o : simulation_components/simulation_component_factory.f90 common/log.o common/json_utils.o case.o simulation_components/les_simcomp.o simulation_components/probes.o simulation_components/scalar.o simulation_components/lambda2.o simulation_components/vorticity.o simulation_components/simulation_component.o +source_terms/source_term.o : source_terms/source_term.f90 field/field_list.o sem/coef.o config/num_types.o config/neko_config.o +source_terms/const_source_term.o : source_terms/const_source_term.f90 source_terms/bcknd/device/const_source_term_device.o source_terms/bcknd/cpu/const_source_term_cpu.o common/utils.o config/neko_config.o sem/coef.o source_terms/source_term.o common/json_utils.o field/field_list.o config/num_types.o +source_terms/bcknd/cpu/const_source_term_cpu.o : source_terms/bcknd/cpu/const_source_term_cpu.f90 math/math.o field/field_list.o config/num_types.o +source_terms/bcknd/device/const_source_term_device.o : source_terms/bcknd/device/const_source_term_device.f90 math/bcknd/device/device_math.o field/field_list.o config/num_types.o +source_terms/source_term_factory.o : source_terms/source_term_factory.f90 sem/coef.o common/utils.o field/field_list.o common/json_utils.o source_terms/const_source_term.o source_terms/source_term.o +les/les_model.o : les/les_model.f90 device/device.o config/neko_config.o gs/gs_ops.o sem/coef.o sem/dofmap.o field/field_registry.o field/field.o config/num_types.o +les/les_model_fctry.o : les/les_model_fctry.f90 sem/coef.o sem/dofmap.o les/vreman.o les/les_model.o +les/vreman.o : les/vreman.f90 sem/coef.o les/bcknd/cpu/vreman_cpu.o config/neko_config.o common/utils.o common/json_utils.o sem/dofmap.o les/les_model.o field/field.o config/num_types.o +les/bcknd/cpu/vreman_cpu.o : les/bcknd/cpu/vreman_cpu.f90 sem/coef.o math/operators.o field/field.o field/field_registry.o field/scratch_registry.o math/math.o field/field_list.o config/num_types.o +neko.o : neko.f90 mesh/point_zone_registry.o mesh/point_zones/sphere_point_zone.o mesh/point_zones/box_point_zone.o mesh/point_zone.o sem/point_interpolator.o common/time_interpolator.o io/data_streamer.o simulation_components/simcomp_executor.o field/scratch_registry.o field/field_registry.o common/system.o sem/spectral_error_indicator.o simulation_components/probes.o simulation_components/simulation_component.o math/tensor.o math/vector.o scalar/scalar_user_source_term.o fluid/fluid_user_source_term.o field/field_list.o fluid/fluid_stats.o sem/cpr.o math/bcknd/device/device_math.o device/device.o common/jobctrl.o common/signal.o comm/parmetis.o common/user_intf.o common/projection.o math/mathops.o math/operators.o simulation.o io/output.o common/sampler.o case.o config/neko_config.o math/ax.o math/ax_helm_fctry.o krylov/precon_fctry.o krylov/krylov_fctry.o bc/dirichlet.o bc/wall.o bc/bc.o sem/coef.o gs/gather_scatter.o comm/mpi_types.o field/field.o io/file.o common/global_interpolation.o math/mxm_wrapper.o io/format/map.o field/mesh_field.o mesh/point.o mesh/mesh.o adt/tuple.o adt/stack.o adt/uset.o adt/htable.o sem/space.o sem/dofmap.o sem/speclib.o math/math.o common/log.o common/utils.o comm/comm.o config/num_types.o +driver.o : driver.f90 neko.o diff --git a/src/case.f90 b/src/case.f90 index f02573fb4f9..c4ecc1b3d37 100644 --- a/src/case.f90 +++ b/src/case.f90 @@ -319,16 +319,10 @@ subroutine case_init_common(C) end if ! - ! Setup sampler + ! Setup sampler and add fluid output ! call C%s%init(C%end_time) -! if (scalar) then -! C%f_out = fluid_output_t(precision, C%fluid, C%scalar, & -! path=trim(output_directory)) -! else - C%f_out = fluid_output_t(precision, C%fluid, & - path=trim(output_directory)) -! end if + C%f_out = fluid_output_t(precision, C%fluid, path=trim(output_directory)) call json_get_or_default(C%params, 'case.fluid.output_control',& string_val, 'org') diff --git a/src/simulation.f90 b/src/simulation.f90 index 82fcfdd387b..f597f8fb6fd 100644 --- a/src/simulation.f90 +++ b/src/simulation.f90 @@ -32,6 +32,7 @@ ! !> Simulation driver module simulation + use num_types, only : rp, dp use case, only : case_t use gather_scatter use time_scheme_controller, only : time_scheme_controller_t @@ -46,6 +47,7 @@ module simulation use math, only : col2 use simcomp_executor, only : neko_simcomps use json_utils, only : json_get_or_default + use mpi_f08, only: MPI_WTIME implicit none private diff --git a/src/simulation_components/scalar.f90 b/src/simulation_components/scalar.f90 index 2b98612eb30..99c0429ed4c 100644 --- a/src/simulation_components/scalar.f90 +++ b/src/simulation_components/scalar.f90 @@ -34,7 +34,7 @@ !> Implements the `scalar_t` type. module scalar - use num_types, only : rp, dp + use num_types, only : rp, dp, sp use json_module, only : json_file use simulation_component, only : simulation_component_t use field_registry, only : neko_field_registry @@ -45,6 +45,8 @@ module scalar use logger, only : neko_log, LOG_SIZE use scalar_ic, only : set_scalar_ic use json_utils, only : json_get + use fld_file_output, only : fld_file_output_t + use mpi_f08, only : MPI_WTIME implicit none private @@ -58,7 +60,10 @@ module scalar type(field_t), pointer :: w !> The scalar scheme. - type(scalar_pnpn_t), allocatable :: scheme + type(scalar_pnpn_t) :: scheme + + !> Output writer. + type(fld_file_output_t), private :: output contains !> Constructor from json, wrapping the actual constructor. @@ -79,18 +84,40 @@ subroutine scalar_init_from_json(this, json, case) class(scalar_t), intent(inout) :: this type(json_file), intent(inout) :: json class(case_t), intent(inout), target :: case + character(len=:), allocatable :: filename + character(len=:), allocatable :: precision + character(len=:), allocatable :: ic_type call this%init_base(json, case) - call scalar_init_from_attributes(this) + call json_get(json, 'initial_condition.type', ic_type) + + if (json%valid_path("output_filename")) then + call json_get(json, "output_filename", filename) + if (json%valid_path("output_precision")) then + call json_get(json, "output_precision", precision) + if (precision == "double") then + call scalar_init_from_attributes(this, ic_type, filename, dp) + else + call scalar_init_from_attributes(this, ic_type, filename, sp) + end if + else + call scalar_init_from_attributes(this, ic_type, filename) + end if + else + call scalar_init_from_attributes(this, ic_type) + end if + end subroutine scalar_init_from_json !> Actual constructor. - subroutine scalar_init_from_attributes(this) + subroutine scalar_init_from_attributes(this, ic_type, filename, precision) class(scalar_t), target, intent(inout) :: this - character(len=:), allocatable :: ic_type + character(len=*), intent(in) :: ic_type + character(len=*), intent(in), optional :: filename + integer, intent(in), optional :: precision - allocate(this%scheme) + !allocate(this%scheme) call this%scheme%init(this%case%msh, this%case%fluid%c_Xh, & this%case%fluid%gs_Xh, this%case%params, this%case%usr, & @@ -110,13 +137,26 @@ subroutine scalar_init_from_attributes(this) call this%scheme%set_user_bc(this%case%usr%scalar_user_bc) ! Initial condition - call json_get(this%case%params, 'case.scalar.initial_condition.type', ic_type) if (trim(ic_type) .ne. 'user') then - call set_scalar_ic(this%scheme%s, & - this%scheme%c_Xh, this%scheme%gs_Xh, ic_type, this%case%params) + call set_scalar_ic(this%scheme%s, this%scheme%c_Xh, this%scheme%gs_Xh,& + ic_type, this%case%params) + else + call set_scalar_ic(this%scheme%s, this%scheme%c_Xh, this%scheme%gs_Xh,& + this%case%usr%scalar_user_ic, this%case%params) + end if + + ! Setup file output + if (present(filename)) then + if (present(precision)) then + call this%output%init(precision, filename, 1) + else + call this%output%init(sp, filename, 1) + end if + this%output%fields%fields(1)%f => this%scheme%s + call this%case%s%add(this%output, this%output_controller%control_value, & + this%output_controller%control_mode) else - call set_scalar_ic(this%scheme%s, & - this%scheme%c_Xh, this%scheme%gs_Xh, this%case%usr%scalar_user_ic, this%case%params) + call this%case%f_out%fluid%append(this%scheme%s) end if end subroutine scalar_init_from_attributes @@ -126,7 +166,7 @@ subroutine scalar_free(this) call this%free_base() call this%scheme%free() - deallocate(this%scheme) + !deallocate(this%scheme) end subroutine scalar_free !> Solve the scalar equation. @@ -140,11 +180,11 @@ subroutine scalar_compute(this, t, tstep) character(len=LOG_SIZE) :: log_buf - ! start_time = MPI_WTIME() + start_time = MPI_WTIME() call neko_log%section('Scalar simcomp') call this%scheme%step(t, tstep, this%case%dt, this%case%ext_bdf) - !end_time = MPI_WTIME() - !write(log_buf, '(A,E15.7)') 'Step time:', end_time-start_time + end_time = MPI_WTIME() + write(log_buf, '(A,E15.7)') 'Step time:', end_time-start_time call neko_log%end_section(log_buf) end subroutine scalar_compute diff --git a/src/simulation_components/vorticity.f90 b/src/simulation_components/vorticity.f90 index 3007293dac3..c6a4470802a 100644 --- a/src/simulation_components/vorticity.f90 +++ b/src/simulation_components/vorticity.f90 @@ -117,7 +117,6 @@ subroutine vorticity_init_from_attributes(this, filename, precision) class(vorticity_t), intent(inout) :: this character(len=*), intent(in), optional :: filename integer, intent(in), optional :: precision - type(fld_file_output_t) :: output this%u => neko_field_registry%get_field_by_name("u") this%v => neko_field_registry%get_field_by_name("v") From d88557e7c26483988e037ba63d489c55f0f5b626 Mon Sep 17 00:00:00 2001 From: Timofey Mukha Date: Wed, 7 Feb 2024 16:19:34 +0300 Subject: [PATCH 05/11] Inject material properties from scalar simcomp --- examples/scalar_mms/scalar_mms.case | 7 ++-- src/common/material_properties.f90 | 53 +++------------------------- src/simulation_components/scalar.f90 | 49 ++++++++++++++++++++++++- 3 files changed, 57 insertions(+), 52 deletions(-) diff --git a/examples/scalar_mms/scalar_mms.case b/examples/scalar_mms/scalar_mms.case index 37740e42d14..a8e5dd564e5 100755 --- a/examples/scalar_mms/scalar_mms.case +++ b/examples/scalar_mms/scalar_mms.case @@ -34,8 +34,7 @@ "absolute_tolerance": 1e-7, "max_iterations": 800 }, - "output_control": "nsamples", - "output_value": 1 + "output_control": "never" }, "simulation_components": [ { @@ -45,7 +44,9 @@ "initial_condition": { "type": "user" }, - "output_filename": "scalar", + "output_filename" : "scalar", + "output_control" : "nsamples", + "output_value" : 1, "source_terms": [ { "type": "user_vector" diff --git a/src/common/material_properties.f90 b/src/common/material_properties.f90 index bb0bd69850f..75ad49ecfd6 100644 --- a/src/common/material_properties.f90 +++ b/src/common/material_properties.f90 @@ -126,56 +126,13 @@ subroutine material_properties_init(this, params, user) end if ! - ! Scalar + ! Scalar dummy values ! - if (.not. params%valid_path('case.scalar')) then - ! Set dummy values - this%cp = 1.0_rp - this%lambda = 1.0_rp - call this%write_to_log(.false.) - return - end if - - ! Incorrect user input - if (nondimensional .and. & - (params%valid_path('case.scalar.lambda') .or. & - params%valid_path('case.scalar.cp'))) then - call neko_error("For non-dimensional setup set the Pe number for& - & the scalar") - else if (.not. nondimensional .and. & - params%valid_path('case.scalar.Pe')) then - call neko_error("Dimensional material properties input detected,& - & because you set rho and mu for the fluid. & - & Please set cp and lambda for the scalar.") - - ! Non-dimensional case - else if (nondimensional) then - write(log_buf, '(A)') 'Non-dimensional scalar material properties & - & input.' - call neko_log%message(log_buf, lvl=NEKO_LOG_VERBOSE) - write(log_buf, '(A)') 'Specific heat capacity will be set to 1, & - & conductivity to 1/Pe.' - call neko_log%message(log_buf, lvl=NEKO_LOG_VERBOSE) - - ! Read Pe into lambda for further manipulation. - call json_get(params, 'case.scalar.Pe', this%lambda) - write(log_buf, '(A,ES13.6)') 'Pe :', this%lambda - call neko_log%message(log_buf) - - ! Set cp and rho to 1 since the setup is non-dimensional. - this%cp = 1.0_rp - this%rho = 1.0_rp - ! Invert the Pe to get conductivity - this%lambda = 1.0_rp/this%lambda - ! Dimensional case - else - call json_get(params, 'case.scalar.lambda', this%lambda) - call json_get(params, 'case.scalar.cp', this%cp) - end if + this%cp = 1.0_rp + this%lambda = 1.0_rp + call this%write_to_log(.false.) + return end if - - call this%write_to_log(.true.) - end subroutine material_properties_init !> Write final dimensional values to the log. diff --git a/src/simulation_components/scalar.f90 b/src/simulation_components/scalar.f90 index 99c0429ed4c..7e9f440e627 100644 --- a/src/simulation_components/scalar.f90 +++ b/src/simulation_components/scalar.f90 @@ -42,11 +42,13 @@ module scalar use operators, only : curl use case, only : case_t use scalar_pnpn, only : scalar_pnpn_t - use logger, only : neko_log, LOG_SIZE + use logger, only : neko_log, LOG_SIZE, NEKO_LOG_VERBOSE use scalar_ic, only : set_scalar_ic use json_utils, only : json_get use fld_file_output, only : fld_file_output_t use mpi_f08, only : MPI_WTIME + use material_properties, only : material_properties_t + use utils, only : neko_error implicit none private @@ -90,6 +92,9 @@ subroutine scalar_init_from_json(this, json, case) call this%init_base(json, case) + ! TODO: should be in the other constructor with json parsed here + call set_material_properties(this%case%material_properties, json) + call json_get(json, 'initial_condition.type', ic_type) if (json%valid_path("output_filename")) then @@ -158,6 +163,8 @@ subroutine scalar_init_from_attributes(this, ic_type, filename, precision) else call this%case%f_out%fluid%append(this%scheme%s) end if + + call this%scheme%validate end subroutine scalar_init_from_attributes !> Destructor. @@ -189,4 +196,44 @@ subroutine scalar_compute(this, t, tstep) end subroutine scalar_compute + + subroutine set_material_properties(properties, json) + type(material_properties_t), intent(inout) :: properties + type(json_file), intent(inout) :: json + character(len=LOG_SIZE) :: log_buf + + + ! Incorrect user input + if (json%valid_path('Pe') .and. (json%valid_path('lambda') .or. & + json%valid_path('cp'))) then + call neko_error("To set the material properties for the scalar,& + & either provide Pe OR lambda and cp in the case file.") + + ! Non-dimensional case + else if (json%valid_path('Pe')) then + write(log_buf, '(A)') 'Non-dimensional scalar material properties & + & input.' + call neko_log%message(log_buf, lvl=NEKO_LOG_VERBOSE) + write(log_buf, '(A)') 'Specific heat capacity will be set to 1, & + & conductivity to 1/Pe.' + call neko_log%message(log_buf, lvl=NEKO_LOG_VERBOSE) + + ! Read Pe into lambda for further manipulation. + call json_get(json, 'Pe', properties%lambda) + write(log_buf, '(A,ES13.6)') 'Pe :', properties%lambda + call neko_log%message(log_buf) + + ! Set cp and rho to 1 since the setup is non-dimensional. + properties%cp = 1.0_rp + properties%rho = 1.0_rp + ! Invert the Pe to get conductivity + properties%lambda = 1.0_rp/properties%lambda + ! Dimensional case + else + call json_get(json, 'lambda', properties%lambda) + call json_get(json, 'cp', properties%cp) + end if + + end subroutine set_material_properties + end module scalar From 1a14c717d22ba902be17f46f0faf2ffa262e31d1 Mon Sep 17 00:00:00 2001 From: Timofey Mukha Date: Wed, 7 Feb 2024 19:25:22 +0300 Subject: [PATCH 06/11] Add helper to extract json array subobjects --- src/common/json_utils.f90 | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/src/common/json_utils.f90 b/src/common/json_utils.f90 index 20de1ff9d53..d6f930bcf42 100644 --- a/src/common/json_utils.f90 +++ b/src/common/json_utils.f90 @@ -38,7 +38,7 @@ module json_utils implicit none private - public :: json_get, json_get_or_default + public :: json_get, json_get_or_default, json_extract_subdict !> Retrieves a parameter by name or throws an error interface json_get @@ -296,4 +296,24 @@ subroutine json_get_or_default_string(json, name, value, default) end if end subroutine json_get_or_default_string + !> Extract `i`th json object from a json array. + !! @param core JSON core object. + !! @param parent The parent JSON object with the array. + !! @param i The index of the object to extract. + !! @param subdict JSON object object to be filled with the subdict. + subroutine json_extract_subdict(core, parent, i, subdict) + type(json_core), intent(inout) :: core + type(json_value), pointer, intent(in) :: parent + integer, intent(in) :: i + type(json_file), intent(inout) :: subdict + type(json_value), pointer :: ptr + logical :: found + character(len=:), allocatable :: buffer + + call core%get_child(parent, i, ptr, found) + call core%print_to_string(ptr, buffer) + call subdict%load_from_string(buffer) + + end subroutine json_extract_subdict + end module json_utils From b4b01cfc2aa1681e985fb42cc7ca6d94b4e8c1e5 Mon Sep 17 00:00:00 2001 From: Timofey Mukha Date: Wed, 7 Feb 2024 19:25:58 +0300 Subject: [PATCH 07/11] Make sure that simcomps are init according to set order --- .../simcomp_executor.f90 | 31 ++++++++++--------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/src/simulation_components/simcomp_executor.f90 b/src/simulation_components/simcomp_executor.f90 index d6823cfa000..2df9e25a2e3 100644 --- a/src/simulation_components/simcomp_executor.f90 +++ b/src/simulation_components/simcomp_executor.f90 @@ -37,7 +37,7 @@ module simcomp_executor use simulation_component, only : simulation_component_wrapper_t use simulation_component_fctry, only : simulation_component_factory use json_module, only : json_file, json_core, json_value - use json_utils, only : json_get + use json_utils, only : json_get, json_get_or_default, json_extract_subdict use case, only : case_t implicit none private @@ -63,7 +63,7 @@ module simcomp_executor procedure, pass(this) :: compute => simcomp_executor_compute !> Execute restart for all simcomps. procedure, pass(this) :: restart=> simcomp_executor_restart - + end type simcomp_executor_t !> Global variable for the simulation component driver. @@ -83,7 +83,7 @@ subroutine simcomp_executor_init(this, case) logical :: found ! Help array for finding minimal values logical, allocatable :: mask(:) - ! The order value for each simcomp in order of appearance in the case file. + ! The order value for each simcomp in order of appearance in the case file. integer, allocatable :: read_order(:) ! Location of the min value integer :: loc(1) @@ -101,20 +101,13 @@ subroutine simcomp_executor_init(this, case) call case%params%get_core(core) call case%params%get('case.simulation_components', simcomp_object, found) + + ! We need a separate loop to figure out the order, so that we can + ! apply the order to the initialization as well. do i=1, n_simcomps ! Create a new json containing just the subdict for this simcomp - call core%get_child(simcomp_object, i, comp_pointer, found) - call core%print_to_string(comp_pointer, buffer) - call comp_subdict%load_from_string(buffer) - - ! Default to executing in order of appearance - if (.not. comp_subdict%valid_path("order")) then - call comp_subdict%add("order", i) - end if - - call json_get(comp_subdict, "order", read_order(i)) - call simulation_component_factory(this%simcomps(i)%simcomp, & - comp_subdict, case) + call json_extract_subdict(core, simcomp_object, i, comp_subdict) + call json_get_or_default(comp_subdict, "order", read_order(i), i) end do ! Figure out the execution order using a poor man's argsort. @@ -125,6 +118,14 @@ subroutine simcomp_executor_init(this, case) this%order(i) = loc(1) mask(loc) = .false. end do + + ! Init in the determined order. + do i=1, n_simcomps + call json_extract_subdict(core, simcomp_object, this%order(i),& + comp_subdict) + call simulation_component_factory(this%simcomps(i)%simcomp, & + comp_subdict, case) + end do end if end subroutine simcomp_executor_init From d772e1c279599dd2204cb410ec1470e9fa38a22f Mon Sep 17 00:00:00 2001 From: Timofey Mukha Date: Wed, 7 Feb 2024 19:26:43 +0300 Subject: [PATCH 08/11] Change dict name for the scalar source term --- src/scalar/scalar_source_term.f90 | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/scalar/scalar_source_term.f90 b/src/scalar/scalar_source_term.f90 index 27a08e7b01c..8db9a2759d9 100644 --- a/src/scalar/scalar_source_term.f90 +++ b/src/scalar/scalar_source_term.f90 @@ -99,13 +99,13 @@ subroutine scalar_source_term_init(this, json, f, coef, user) this%f => f - if (json%valid_path('case.scalar.source_terms')) then + if (json%valid_path('source_terms')) then ! We package the fields for the source term to operate on in a field list. allocate(rhs_fields%fields(1)) rhs_fields%fields(1)%f => f call json%get_core(core) - call json%get('case.scalar.source_terms', source_object, found) + call json%get('source_terms', source_object, found) n_sources = core%count(source_object) allocate(this%source_terms(n_sources)) @@ -187,6 +187,7 @@ subroutine scalar_source_term_compute(this, t, tstep) ! Add contribution from all source terms. if (allocated(this%source_terms)) then + write(*,*) "HIIIIIIIIIIIIIII" do i=1, size(this%source_terms) call this%source_terms(i)%source_term%compute(t, tstep) end do From 5aecc31da96f40e71faf64d45546bf5394d2fa11 Mon Sep 17 00:00:00 2001 From: Timofey Mukha Date: Wed, 7 Feb 2024 19:27:57 +0300 Subject: [PATCH 09/11] Update scalar types to new interface --- src/scalar/scalar_pnpn.f90 | 25 +++++++++++-------------- src/scalar/scalar_scheme.f90 | 28 ++++++++++++++-------------- 2 files changed, 25 insertions(+), 28 deletions(-) diff --git a/src/scalar/scalar_pnpn.f90 b/src/scalar/scalar_pnpn.f90 index bd584ceac27..7b275099759 100644 --- a/src/scalar/scalar_pnpn.f90 +++ b/src/scalar/scalar_pnpn.f90 @@ -124,8 +124,10 @@ module scalar_pnpn !! @param gs The gather-scatter. !! @param params The case parameter file in json. !! @param user Type with user-defined procedures. + !! @param dealias Whether to apply dealiasing to the advection operator. + !! @param dealias_order The polynomial order in the space for dealiasing. subroutine scalar_pnpn_init(this, msh, coef, gs, params, user, & - material_properties) + material_properties, dealias, dealias_order) class(scalar_pnpn_t), target, intent(inout) :: this type(mesh_t), target, intent(inout) :: msh type(coef_t), target, intent(inout) :: coef @@ -133,6 +135,8 @@ subroutine scalar_pnpn_init(this, msh, coef, gs, params, user, & type(json_file), target, intent(inout) :: params type(user_t), target, intent(in) :: user type(material_properties_t), intent(inout) :: material_properties + logical, intent(in) :: dealias + integer, intent(in) :: dealias_order integer :: i character(len=15), parameter :: scheme = 'Modular (Pn/Pn)' ! Variables for retrieving json parameters @@ -142,7 +146,7 @@ subroutine scalar_pnpn_init(this, msh, coef, gs, params, user, & call this%free() ! Initiliaze base type. - call this%scheme_init(msh, coef, gs, params, scheme, user, & + call this%init_base(msh, coef, gs, params, scheme, user, & material_properties) ! Setup backend dependent Ax routines @@ -189,8 +193,7 @@ subroutine scalar_pnpn_init(this, msh, coef, gs, params, user, & call bc_list_init(this%bclst_ds) call bc_list_add(this%bclst_ds, this%bc_res) - ! @todo not param stuff again, using velocity stuff - ! Intialize projection space thingy + ! Intialize projection space if (this%projection_dim .gt. 0) then call this%proj_s%init(this%dm_Xh%size(), this%projection_dim) end if @@ -199,15 +202,7 @@ subroutine scalar_pnpn_init(this, msh, coef, gs, params, user, & ! @todo Init chkp object, note, adding 3 slags ! call this%chkp%add_lag(this%slag, this%slag, this%slag) - ! Uses sthe same parameter as the fluid to set dealiasing - call json_get(params, 'case.numerics.dealias', logical_val) - call params%get('case.numerics.dealiased_polynomial_order', integer_val, & - found) - if (.not. found) then - call json_get(params, 'case.numerics.polynomial_order', integer_val) - integer_val = 3.0_rp / 2.0_rp * (integer_val + 1) - 1 - end if - call advection_factory(this%adv, this%c_Xh, logical_val, integer_val + 1) + call advection_factory(this%adv, this%c_Xh, dealias, dealias_order) end subroutine scalar_pnpn_init @@ -246,7 +241,7 @@ subroutine scalar_pnpn_free(this) class(scalar_pnpn_t), intent(inout) :: this !Deallocate scalar field - call this%scheme_free() + call this%free_base() call bc_list_free(this%bclst_ds) call this%proj_s%free() @@ -320,6 +315,8 @@ subroutine scalar_pnpn_step(this, t, tstep, dt, ext_bdf) ! Compute the source terms call this%source_term%compute(t, tstep) + write(*,*) this%f_Xh%x(:,1,1,1) + ! Pre-multiply the source terms with the mass matrix. if (NEKO_BCKND_DEVICE .eq. 1) then call device_col2(f_Xh%x_d, c_Xh%B_d, n) diff --git a/src/scalar/scalar_scheme.f90 b/src/scalar/scalar_scheme.f90 index f854f41b121..ec5a2bc8319 100644 --- a/src/scalar/scalar_scheme.f90 +++ b/src/scalar/scalar_scheme.f90 @@ -102,7 +102,7 @@ module scalar_scheme integer :: n_dir_bcs = 0 !> List of boundary conditions. type(bc_list_t) :: bclst - !> Case paramters. + !> Scalar paramters dictionary. type(json_file), pointer :: params !> Mesh. type(mesh_t), pointer :: msh => null() @@ -118,9 +118,9 @@ module scalar_scheme character(len=20), allocatable :: bc_labels(:) contains !> Constructor for the base type. - procedure, pass(this) :: scheme_init => scalar_scheme_init + procedure, pass(this) :: init_base => scalar_scheme_init !> Destructor for the base type. - procedure, pass(this) :: scheme_free => scalar_scheme_free + procedure, pass(this) :: free_base => scalar_scheme_free !> Validate successful initialization. procedure, pass(this) :: validate => scalar_scheme_validate procedure, pass(this) :: bc_apply => scalar_scheme_bc_apply @@ -138,7 +138,8 @@ module scalar_scheme !> Abstract interface to initialize a scalar formulation abstract interface subroutine scalar_scheme_init_intrf(this, msh, coef, gs, params, user,& - material_properties) + material_properties, dealias, & + dealias_order) import scalar_scheme_t import json_file import coef_t @@ -153,6 +154,8 @@ subroutine scalar_scheme_init_intrf(this, msh, coef, gs, params, user,& type(json_file), target, intent(inout) :: params type(user_t), target, intent(in) :: user type(material_properties_t), intent(inout) :: material_properties + logical, intent(in) :: dealias + integer, intent(in) :: dealias_order end subroutine scalar_scheme_init_intrf end interface @@ -270,10 +273,10 @@ subroutine scalar_scheme_init(this, msh, c_Xh, gs_Xh, params, scheme, user, & this%w => neko_field_registry%get_field('w') call neko_log%section('Scalar') - call json_get(params, 'case.fluid.velocity_solver.type', solver_type) - call json_get(params, 'case.fluid.velocity_solver.preconditioner',& + call json_get(params, 'solver.type', solver_type) + call json_get(params, 'solver.preconditioner',& solver_precon) - call json_get(params, 'case.fluid.velocity_solver.absolute_tolerance',& + call json_get(params, 'solver.absolute_tolerance',& solver_abstol) ! @@ -290,8 +293,7 @@ subroutine scalar_scheme_init(this, msh, c_Xh, gs_Xh, params, scheme, user, & write(log_buf, '(A,ES13.6)') 'cp :', this%cp call neko_log%message(log_buf) - call json_get_or_default(params, & - 'case.fluid.velocity_solver.projection_space_size',& + call json_get_or_default(params, 'solver.projection_space_size',& this%projection_dim, 20) @@ -325,10 +327,8 @@ subroutine scalar_scheme_init(this, msh, c_Xh, gs_Xh, params, scheme, user, & ! A filler value this%bc_labels = "not" - if (params%valid_path('case.scalar.boundary_types')) then - call json_get(params, & - 'case.scalar.boundary_types', & - this%bc_labels) + if (params%valid_path('boundary_types')) then + call json_get(params, 'boundary_types', this%bc_labels) end if ! @@ -353,7 +353,7 @@ subroutine scalar_scheme_init(this, msh, c_Xh, gs_Xh, params, scheme, user, & if (this%user_bc%msk(0) .gt. 0) call bc_list_add(this%bclst, this%user_bc) ! todo parameter file ksp tol should be added - call json_get_or_default(params, 'case.fluid.velocity_solver.max_iterations',& + call json_get_or_default(params, 'solver.max_iterations',& integer_val, 800) call scalar_scheme_solver_factory(this%ksp, this%dm_Xh%size(), & solver_type, integer_val, solver_abstol) From 64984e14e3f2ed8249b0b089748ade801963c0f1 Mon Sep 17 00:00:00 2001 From: Timofey Mukha Date: Wed, 7 Feb 2024 19:28:35 +0300 Subject: [PATCH 10/11] Seeming working scalar simcomp --- src/simulation_components/scalar.f90 | 52 +++++++++++++++++++--------- 1 file changed, 35 insertions(+), 17 deletions(-) diff --git a/src/simulation_components/scalar.f90 b/src/simulation_components/scalar.f90 index 7e9f440e627..71d0a507013 100644 --- a/src/simulation_components/scalar.f90 +++ b/src/simulation_components/scalar.f90 @@ -44,7 +44,7 @@ module scalar use scalar_pnpn, only : scalar_pnpn_t use logger, only : neko_log, LOG_SIZE, NEKO_LOG_VERBOSE use scalar_ic, only : set_scalar_ic - use json_utils, only : json_get + use json_utils, only : json_get, json_get_or_default use fld_file_output, only : fld_file_output_t use mpi_f08, only : MPI_WTIME use material_properties, only : material_properties_t @@ -82,6 +82,8 @@ module scalar contains !> Constructor from json. + !! @note We cannot use only this constructor, because `this` is not a + !! `targetĀ“, which is necessary. subroutine scalar_init_from_json(this, json, case) class(scalar_t), intent(inout) :: this type(json_file), intent(inout) :: json @@ -89,48 +91,66 @@ subroutine scalar_init_from_json(this, json, case) character(len=:), allocatable :: filename character(len=:), allocatable :: precision character(len=:), allocatable :: ic_type + logical :: dealias + integer :: p_order, dealias_order call this%init_base(json, case) - ! TODO: should be in the other constructor with json parsed here call set_material_properties(this%case%material_properties, json) call json_get(json, 'initial_condition.type', ic_type) + ! Uses global case parameter for dealiasing. + call json_get(this%case%params, 'case.numerics.dealias', dealias) + call json_get(this%case%params, 'case.numerics.polynomial_order', p_order) + call json_get_or_default(this%case%params,& + 'case.numerics.dealiased_polynomial_order',& + dealias_order,& + int(3.0_rp / 2.0_rp * (p_order + 1))) + + ! Handle output options and call the other constructor. if (json%valid_path("output_filename")) then call json_get(json, "output_filename", filename) if (json%valid_path("output_precision")) then call json_get(json, "output_precision", precision) if (precision == "double") then - call scalar_init_from_attributes(this, ic_type, filename, dp) + call scalar_init_from_attributes(this, json, ic_type, dealias,& + dealias_order, filename, dp) else - call scalar_init_from_attributes(this, ic_type, filename, sp) + call scalar_init_from_attributes(this, json, ic_type, dealias,& + dealias_order, filename, sp) end if else - call scalar_init_from_attributes(this, ic_type, filename) + call scalar_init_from_attributes(this, json, ic_type, dealias,& + dealias_order, filename) end if else - call scalar_init_from_attributes(this, ic_type) + call scalar_init_from_attributes(this, json, ic_type, dealias,& + dealias_order) end if - end subroutine scalar_init_from_json - !> Actual constructor. - subroutine scalar_init_from_attributes(this, ic_type, filename, precision) + !> The second constructor. + !! Admittedly, the split between the two constructors is quite arbitrary. + subroutine scalar_init_from_attributes(this, json, ic_type, dealias, & + dealias_order, filename, precision) class(scalar_t), target, intent(inout) :: this + type(json_file), intent(inout) :: json character(len=*), intent(in) :: ic_type + logical, intent(in) :: dealias + integer, intent(in) :: dealias_order character(len=*), intent(in), optional :: filename integer, intent(in), optional :: precision - !allocate(this%scheme) - + ! Init the scheme call this%scheme%init(this%case%msh, this%case%fluid%c_Xh, & - this%case%fluid%gs_Xh, this%case%params, this%case%usr, & - this%case%material_properties) - - call this%scheme%set_user_bc(this%case%usr%scalar_user_bc) + this%case%fluid%gs_Xh, json, this%case%usr, & + this%case%material_properties, dealias, dealias_order) + ! Set lag arrays call this%scheme%slag%set(this%scheme%s) + + ! Validate scheme initialization call this%scheme%validate() call this%case%fluid%chkp%add_scalar(this%scheme%s) @@ -171,9 +191,7 @@ end subroutine scalar_init_from_attributes subroutine scalar_free(this) class(scalar_t), intent(inout) :: this call this%free_base() - call this%scheme%free() - !deallocate(this%scheme) end subroutine scalar_free !> Solve the scalar equation. From 77b227ea755518d53022b40b1aa5b9aa59bea4c5 Mon Sep 17 00:00:00 2001 From: Timofey Mukha Date: Wed, 7 Feb 2024 19:29:19 +0300 Subject: [PATCH 11/11] Update scalar_mms example --- examples/scalar_mms/scalar_mms.case | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/examples/scalar_mms/scalar_mms.case b/examples/scalar_mms/scalar_mms.case index a8e5dd564e5..3107dd2478e 100755 --- a/examples/scalar_mms/scalar_mms.case +++ b/examples/scalar_mms/scalar_mms.case @@ -37,6 +37,17 @@ "output_control": "never" }, "simulation_components": [ + { + "type": "probes", + "compute_control": "simulationtime", + "compute_value": 1, + "points_file": "probes.csv", + "output_file": "output.csv", + "fields": [ + "s" + ], + "order" : 2 + }, { "type" : "scalar", "lambda": 0.01, @@ -58,7 +69,14 @@ ] } ], - "order": 1 + "order": 1, + "solver": { + "type": "cg", + "preconditioner": "jacobi", + "projection_space_size": 0, + "absolute_tolerance": 1e-7, + "max_iterations": 800 + } } ] }