aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuri Victorovich <yuri@FreeBSD.org>2026-05-08 17:49:58 +0000
committerYuri Victorovich <yuri@FreeBSD.org>2026-05-08 17:50:23 +0000
commite8104113f1e97f507c2d55ced647408cd0c8e5e2 (patch)
tree4e63bb1a5d7132ff045c3f3d6d5662a6b323a6aa
parentee04c00e512272175b269bea96560f2e8a7eff9d (diff)
science/neko: New port: Framework for high-order spectral element flow simulations
-rw-r--r--science/Makefile1
-rw-r--r--science/neko/Makefile48
-rw-r--r--science/neko/distinfo3
-rw-r--r--science/neko/files/neko_log_parser.py192
-rw-r--r--science/neko/files/patch-tests_integration_tests_test__demo_test__suite.py13
-rw-r--r--science/neko/files/patch-tests_integration_tests_test__examples_test__examples.py41
-rw-r--r--science/neko/pkg-descr7
-rw-r--r--science/neko/pkg-plist559
8 files changed, 864 insertions, 0 deletions
diff --git a/science/Makefile b/science/Makefile
index 0b3aa4567874..cf0c3d2e9269 100644
--- a/science/Makefile
+++ b/science/Makefile
@@ -205,6 +205,7 @@
SUBDIR += mutationpp
SUBDIR += namd
SUBDIR += ncrystal
+ SUBDIR += neko
SUBDIR += nest
SUBDIR += netcdf
SUBDIR += netcdf-cxx
diff --git a/science/neko/Makefile b/science/neko/Makefile
new file mode 100644
index 000000000000..142120520018
--- /dev/null
+++ b/science/neko/Makefile
@@ -0,0 +1,48 @@
+PORTNAME= neko
+DISTVERSION= 1.0.3
+CATEGORIES= science
+MASTER_SITES= https://github.com/ExtremeFLOW/neko/releases/download/v${DISTVERSION}/
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= Framework for high-order spectral element flow simulations
+WWW= https://neko.cfd/ \
+ https://github.com/ExtremeFLOW/neko
+
+LICENSE= BSD3CLAUSE
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+LIB_DEPENDS= libjsonfortran.so:devel/json-fortran \
+ libopenblas.so:math/openblas
+TEST_DEPENDS= bash:shells/bash \
+ ${PYTHON_PKGNAMEPREFIX}pytest>=0:devel/py-pytest@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}numpy>=0:math/py-numpy@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}json5>=0:devel/py-json5@${PY_FLAVOR}
+
+USES= fortran gmake libtool mpi:mpich pkgconfig python:test shebangfix
+
+SHEBANG_GLOB= *.sh
+
+GNU_CONFIGURE= yes
+
+BINARY_ALIAS= python=${PYTHON_CMD}
+
+do-test:
+ @${MKDIR} ${WRKSRC}/contrib/neko_log_parser
+ @${CP} ${FILESDIR}/neko_log_parser.py ${WRKSRC}/contrib/neko_log_parser/
+ @${CHMOD} +x ${WRKSRC}/makeneko
+ @${REINPLACE_CMD} -e 's|^prefix=.*|prefix=${WRKSRC}|' \
+ -e 's|^includedir_pkg=.*|includedir_pkg=${WRKSRC}/src|' \
+ -e 's|^libdir=.*|libdir=${WRKSRC}/src/.libs|' \
+ ${WRKSRC}/makeneko ${WRKSRC}/neko.pc
+ @cd ${WRKSRC}/tests/integration && ${SETENV} ${TEST_ENV} \
+ PKG_CONFIG_PATH=${WRKSRC} \
+ NEKO_EXEC=${WRKSRC}/src/neko \
+ MAKENEKO_EXEC=${WRKSRC}/makeneko \
+ PYTHONNOUSERSITE=1 \
+ ${PYTHON_CMD} -m pytest -p no:xdist -p no:parallel \
+ --launcher-script=${WRKSRC}/tests/integration/default_cpu_launcher.sh \
+ tests
+
+# tests as of 1..3: 14 passed in 38.37s
+
+.include <bsd.port.mk>
diff --git a/science/neko/distinfo b/science/neko/distinfo
new file mode 100644
index 000000000000..ae06a4291a86
--- /dev/null
+++ b/science/neko/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1778249730
+SHA256 (neko-1.0.3.tar.gz) = 29f01e671c4eccc919ed4e3cb912d0b0d1345d73a5c66f2c237ca342ac35e61b
+SIZE (neko-1.0.3.tar.gz) = 14517977
diff --git a/science/neko/files/neko_log_parser.py b/science/neko/files/neko_log_parser.py
new file mode 100644
index 000000000000..06afc506347f
--- /dev/null
+++ b/science/neko/files/neko_log_parser.py
@@ -0,0 +1,192 @@
+import re
+import argparse
+from pprint import pprint
+import json
+import os
+
+
+def parse_neko_log(log_lines):
+ data = {}
+ step_data = {}
+ current_step = None
+
+ for line in log_lines:
+ # Step and time value
+ step_match = re.match(r"\s*Step\s*=\s*(\d+)\s*t\s*=\s*([\d.Ee+-]+)", line)
+
+ # CFL and dt
+ cfl_match = re.match(r"\s*CFL:\s*([\d.Ee+-]+)\s+dt:\s*([\d.Ee+-]+)", line)
+
+ # Field residuals
+ field_match = re.match(
+ r"\s*(\d+)\s+\|\s+(\S+)\s+(\d+)\s+([\d.Ee+-]+)\s+([\d.Ee+-]+)", line
+ )
+
+ # Total time for step
+ total_step_time_match = re.match(
+ r"\s*Total time for step\s+\d+\s+\(s\):\s+([\d.Ee+-]+)", line
+ )
+
+ if step_match:
+ if current_step is not None:
+ data[current_step] = step_data
+ current_step = int(step_match.group(1))
+ time_value = float(step_match.group(2))
+ step_data = {
+ "time": time_value,
+ "CFL": None,
+ "dt": None,
+ "total_step_time": None,
+ "fields": {},
+ }
+
+ elif cfl_match and current_step is not None:
+ step_data["CFL"] = float(cfl_match.group(1))
+ step_data["dt"] = float(cfl_match.group(2))
+
+ elif total_step_time_match and current_step is not None:
+ step_data["total_step_time"] = float(total_step_time_match.group(1))
+
+ elif field_match:
+ _, field_name, iters, start_res, final_res = field_match.groups()
+ field_info = {
+ "iters": int(iters),
+ "start_residual": float(start_res),
+ "final_residual": float(final_res),
+ }
+ step_data["fields"][field_name.lower()] = field_info
+
+ if current_step is not None:
+ data[current_step] = step_data
+
+ return data
+
+
+def flatten_parsed_data(parsed_data):
+ import numpy as np
+
+ first_step = next(iter(parsed_data.values()))
+ all_fields = sorted(first_step["fields"].keys())
+
+ # Define the full list of column names
+ columns = ["step", "time", "CFL", "dt", "total_step_time"]
+ for field in all_fields:
+ columns += [
+ f"{field}_iters",
+ f"{field}_start_residual",
+ f"{field}_final_residual",
+ ]
+
+ # Create rows
+ rows = []
+ for step_num, step in sorted(parsed_data.items()):
+ row = [
+ step_num,
+ step.get("time"),
+ step.get("CFL"),
+ step.get("dt"),
+ step.get("total_step_time"),
+ ]
+ for field in all_fields:
+ field_data = step["fields"].get(field)
+ if field_data:
+ row.extend(
+ [
+ field_data["iters"],
+ field_data["start_residual"],
+ field_data["final_residual"],
+ ]
+ )
+ else:
+ row.extend([np.nan, np.nan, np.nan])
+ rows.append(row)
+
+ # Create and return the structured array
+ return np.array(rows), columns
+
+
+def save_as_csv(array, columns, output_file):
+ import numpy as np
+
+ header = ",".join(columns)
+ np.savetxt(
+ output_file, array, delimiter=",", header=header, comments="", fmt="%.17e"
+ )
+ print(f"Saved CSV to {output_file}")
+
+
+def save_as_hdf5(parsed_data, output_file):
+ import h5py
+
+ array, columns = flatten_parsed_data(parsed_data)
+ num_rows = array.shape[0]
+
+ # Separate root-level and field-level columns
+ root_keys = {"step", "time", "CFL", "dt", "total_step_time"}
+ field_data = {} # {field: {subkey: col_index}}
+
+ for i, col in enumerate(columns):
+ if col in root_keys:
+ continue
+ parts = col.split("_")
+ if len(parts) == 2:
+ field, dataset = parts
+ elif (
+ len(parts) == 3
+ and parts[1] in {"start", "final"}
+ and parts[2] == "residual"
+ ):
+ field = parts[0]
+ dataset = f"{parts[1]}_residual"
+ else:
+ raise ValueError(f"Unrecognized column format: {col}")
+ field_data.setdefault(field, {})[dataset] = i
+
+ with h5py.File(output_file, "w") as f:
+ # Write root-level datasets
+ for i, col in enumerate(columns):
+ if col in root_keys and col != "step":
+ f.create_dataset(col, data=array[:, i])
+
+ # Write field-specific groups and datasets
+ for field, subfields in field_data.items():
+ grp = f.create_group(field)
+ for subkey, col_index in subfields.items():
+ # Dataset names: iters, start_residual, final_residual
+ dataset_name = subkey
+ grp.create_dataset(dataset_name, data=array[:, col_index])
+
+ print(f"Saved HDF5 to {output_file}")
+
+
+if __name__ == "__main__":
+ parser = argparse.ArgumentParser(description="Parse a Neko log file.")
+ parser.add_argument("logfile", help="Path to the Neko log file")
+ parser.add_argument(
+ "-o",
+ "--output",
+ help="Output filename (supports .json, .csv, or .hdf5)",
+ required=True,
+ )
+
+ args = parser.parse_args()
+ output_ext = os.path.splitext(args.output)[1].lower()
+
+ with open(args.logfile, "r") as f:
+ log_lines = f.readlines()
+
+ parsed_data = parse_neko_log(log_lines)
+
+ if output_ext == ".json":
+ with open(args.output, "w") as f:
+ json.dump(parsed_data, f, indent=2)
+ print(f"Saved JSON to {args.output}")
+
+ elif output_ext == ".csv":
+ array, columns = flatten_parsed_data(parsed_data)
+ save_as_csv(array, columns, args.output)
+ elif output_ext == ".hdf5" or output_ext == ".h5":
+ save_as_hdf5(parsed_data, args.output)
+
+ else:
+ print(f"Unsupported output format: {args.output} (use .json or .csv)")
diff --git a/science/neko/files/patch-tests_integration_tests_test__demo_test__suite.py b/science/neko/files/patch-tests_integration_tests_test__demo_test__suite.py
new file mode 100644
index 000000000000..51299f73b0a3
--- /dev/null
+++ b/science/neko/files/patch-tests_integration_tests_test__demo_test__suite.py
@@ -0,0 +1,13 @@
+-- Fix cylinder example path in demo test
+-- This patch is needed to ensure tests pass on FreeBSD
+--- tests/integration/tests/test_demo/test_suite.py.orig 2026-05-08 17:08:44 UTC
++++ tests/integration/tests/test_demo/test_suite.py
+@@ -24,7 +24,7 @@ def test_demo(launcher_script, request, log_file, tmp_
+
+ # Either specify a case, or load it here into a json, manipulate
+ # and save a new case file.
+- case_file = join(neko_dir, "examples", "cylinder", "cylinder.case")
++ case_file = join(neko_dir, "tests", "integration", "tests", "test_cylinder", "cylinder_part1.case")
+
+ # Read the case file. We use json5 to allow comments in the case file.
+ with open(case_file, "r") as f:
diff --git a/science/neko/files/patch-tests_integration_tests_test__examples_test__examples.py b/science/neko/files/patch-tests_integration_tests_test__examples_test__examples.py
new file mode 100644
index 000000000000..ecb2df1173e2
--- /dev/null
+++ b/science/neko/files/patch-tests_integration_tests_test__examples_test__examples.py
@@ -0,0 +1,41 @@
+-- Filter examples to only those present in the distribution and use gmake
+-- This patch is needed to ensure tests pass on FreeBSD
+-- Filter examples to only those present in the distribution and use gmake
+-- This patch is needed to ensure tests pass on FreeBSD
+--- tests/integration/tests/test_examples/test_examples.py.orig 2026-05-08 17:08:44 UTC
++++ tests/integration/tests/test_examples/test_examples.py
+@@ -20,7 +20,7 @@ examples_dir = join(neko_dir, "examples")
+
+ examples_dir = join(neko_dir, "examples")
+
+-examples = {
++all_examples = {
+ "2d_cylinder": NekoTestCase(
+ case_file=join(examples_dir, "2d_cylinder", "2d_cylinder.case"),
+ user_file=join(examples_dir, "2d_cylinder", "2d_cylinder.f90"),
+@@ -123,6 +123,7 @@ examples = {
+ user_file=join(examples_dir, "programming", "user_file_template.f90")
+ ),
+ }
++examples = {k: v for k, v in all_examples.items() if k in ['2d_cylinder', 'cyl_boundary_layer', 'hemi', 'lid', 'rayleigh_benard', 'rayleigh_benard_cylinder', 'tgv', 'turb_channel', 'turb_pipe']}
+
+
+ def manipulate_case(example, case, tmp_path):
+@@ -149,7 +150,7 @@ def manipulate_case(example, case, tmp_path):
+ case_object["output_directory"] = str(tmp_path)
+
+
+-@pytest.mark.parametrize("example", ["hemi", "rayleigh_benard", "cylinder"])
++@pytest.mark.parametrize("example", ["hemi", "rayleigh_benard", "2d_cylinder"])
+ #@pytest.mark.parametrize("example", examples.keys())
+ def test_example_smoke(example, launcher_script, request, log_file, tmp_path):
+ """Run a smoke test for the specified Neko example.
+@@ -222,7 +223,7 @@ def test_example_poisson(log_file):
+ """
+
+ result = subprocess.run(
+- ["make", "-C", join(examples_dir, "poisson")],
++ ["gmake", "-C", join(examples_dir, "poisson")],
+ stdout=subprocess.PIPE,
+ stderr=subprocess.STDOUT,
+ text=True)
diff --git a/science/neko/pkg-descr b/science/neko/pkg-descr
new file mode 100644
index 000000000000..2b26292904f3
--- /dev/null
+++ b/science/neko/pkg-descr
@@ -0,0 +1,7 @@
+Gemmi is a library, accompanied by a set of programs, developed primarily for
+use in macromolecular crystallography (MX). For working with:
+* macromolecular models (content of PDB, PDBx/mmCIF and mmJSON files),
+* refinement restraints (CIF files),
+* reflection data (MTZ and mmCIF formats),
+* data on a 3D grid (electron density maps, masks, MRC/CCP4 format)
+* crystallographic symmetry.
diff --git a/science/neko/pkg-plist b/science/neko/pkg-plist
new file mode 100644
index 000000000000..730d3eddbe05
--- /dev/null
+++ b/science/neko/pkg-plist
@@ -0,0 +1,559 @@
+bin/adios2_to_nek5000
+bin/average_field_in_space
+bin/average_fields_in_time
+bin/calc_lift_from_field
+bin/genmeshbox
+bin/makeneko
+bin/map_to_equidistant_1d
+bin/mesh_checker
+bin/neko
+bin/postprocess_fluid_stats
+bin/prepart
+bin/psnr
+bin/rea2nbin
+include/neko.h
+include/neko/COMM.mod
+include/neko/CUDA_INTF.mod
+include/neko/CURVE.mod
+include/neko/DATADIST.mod
+include/neko/DEVICE.mod
+include/neko/DISTDATA.mod
+include/neko/ELEMENT.mod
+include/neko/ENTITY.mod
+include/neko/FACET_ZONE.mod
+include/neko/HEX.mod
+include/neko/HIP_INTF.mod
+include/neko/HTABLE.mod
+include/neko/JSON_UTILS.mod
+include/neko/LOGGER.mod
+include/neko/MATH.mod
+include/neko/MESH.mod
+include/neko/NEKO_CONFIG.mod
+include/neko/NMSH.mod
+include/neko/NUM_TYPES.mod
+include/neko/OPENCL_INTF.mod
+include/neko/OPENCL_PRGM_LIB.mod
+include/neko/POINT.mod
+include/neko/QUAD.mod
+include/neko/STACK.mod
+include/neko/STRUCTS.mod
+include/neko/TUPLE.mod
+include/neko/USET.mod
+include/neko/UTILS.mod
+include/neko/aabb.mod
+include/neko/aabb_el_finder.mod
+include/neko/aabb_pe_finder.mod
+include/neko/aabb_tree.mod
+include/neko/ab_time_scheme.mod
+include/neko/adv_dealias.mod
+include/neko/adv_dummy.mod
+include/neko/adv_no_dealias.mod
+include/neko/adv_oifs.mod
+include/neko/advection.mod
+include/neko/ax_helm.mod
+include/neko/ax_helm_cpu.mod
+include/neko/ax_helm_device.mod
+include/neko/ax_helm_full.mod
+include/neko/ax_helm_full_cpu.mod
+include/neko/ax_helm_full_device.mod
+include/neko/ax_helm_sx.mod
+include/neko/ax_helm_xsmm.mod
+include/neko/ax_product.mod
+include/neko/bc.mod
+include/neko/bc/bcknd/device/cuda/bc_utils.h
+include/neko/bc/bcknd/device/cuda/dirichlet_kernel.h
+include/neko/bc/bcknd/device/cuda/dong_outflow_kernel.h
+include/neko/bc/bcknd/device/cuda/facet_normal_kernel.h
+include/neko/bc/bcknd/device/cuda/inflow_kernel.h
+include/neko/bc/bcknd/device/cuda/inhom_dirichlet_kernel.h
+include/neko/bc/bcknd/device/cuda/neumann_kernel.h
+include/neko/bc/bcknd/device/cuda/symmetry_kernel.h
+include/neko/bc/bcknd/device/cuda/zero_dirichlet_kernel.h
+include/neko/bc/bcknd/device/hip/bc_utils.h
+include/neko/bc/bcknd/device/hip/dirichlet_kernel.h
+include/neko/bc/bcknd/device/hip/dong_outflow_kernel.h
+include/neko/bc/bcknd/device/hip/facet_normal_kernel.h
+include/neko/bc/bcknd/device/hip/inflow_kernel.h
+include/neko/bc/bcknd/device/hip/inhom_dirichlet_kernel.h
+include/neko/bc/bcknd/device/hip/neumann_kernel.h
+include/neko/bc/bcknd/device/hip/symmetry_kernel.h
+include/neko/bc/bcknd/device/hip/zero_dirichlet_kernel.h
+include/neko/bc/bcknd/device/opencl/bc_utils.h
+include/neko/bc/bcknd/device/opencl/dirichlet_kernel.cl
+include/neko/bc/bcknd/device/opencl/dong_outflow_kernel.cl
+include/neko/bc/bcknd/device/opencl/facet_normal_kernel.cl
+include/neko/bc/bcknd/device/opencl/inflow_kernel.cl
+include/neko/bc/bcknd/device/opencl/inhom_dirichlet_kernel.cl
+include/neko/bc/bcknd/device/opencl/neumann_kernel.cl
+include/neko/bc/bcknd/device/opencl/symmetry_kernel.cl
+include/neko/bc/bcknd/device/opencl/zero_dirichlet_kernel.cl
+include/neko/bc_list.mod
+include/neko/bdf_time_scheme.mod
+include/neko/bicgstab.mod
+include/neko/blasius.mod
+include/neko/boussinesq_source_term.mod
+include/neko/boussinesq_source_term_cpu.mod
+include/neko/boussinesq_source_term_device.mod
+include/neko/box_point_zone.mod
+include/neko/bp_file.mod
+include/neko/brinkman_source_term.mod
+include/neko/buffer.mod
+include/neko/buffer_1d.mod
+include/neko/buffer_4d.mod
+include/neko/buffer_4d_npar.mod
+include/neko/cacg.mod
+include/neko/cartesian_el_finder.mod
+include/neko/cartesian_pe_finder.mod
+include/neko/case.mod
+include/neko/centrifugal_source_term.mod
+include/neko/centrifugal_source_term_cpu.mod
+include/neko/centrifugal_source_term_device.mod
+include/neko/cg.mod
+include/neko/cg_cpld.mod
+include/neko/cg_cpld_device.mod
+include/neko/cg_device.mod
+include/neko/cg_sx.mod
+include/neko/cheby.mod
+include/neko/cheby_device.mod
+include/neko/checkpoint.mod
+include/neko/chkp_file.mod
+include/neko/chkp_output.mod
+include/neko/coefs.mod
+include/neko/combine_point_zone.mod
+include/neko/comm.mod
+include/neko/comm/comm.h
+include/neko/comm/comm_nccl.h
+include/neko/common/bcknd/device/cuda/makebdf_kernel.h
+include/neko/common/bcknd/device/cuda/makeext_kernel.h
+include/neko/common/bcknd/device/cuda/makeoifs_kernel.h
+include/neko/common/bcknd/device/cuda/projection_kernel.h
+include/neko/common/bcknd/device/cuda/sumab_kernel.h
+include/neko/common/bcknd/device/hip/makebdf_kernel.h
+include/neko/common/bcknd/device/hip/makeext_kernel.h
+include/neko/common/bcknd/device/hip/makeoifs_kernel.h
+include/neko/common/bcknd/device/hip/projection_kernel.h
+include/neko/common/bcknd/device/hip/sumab_kernel.h
+include/neko/common/bcknd/device/opencl/rhs_maker_kernel.cl
+include/neko/common/neko_log.h
+include/neko/compressible_ops_cpu.mod
+include/neko/compressible_ops_device.mod
+include/neko/const_source_term.mod
+include/neko/const_source_term_cpu.mod
+include/neko/const_source_term_device.mod
+include/neko/coriolis_source_term.mod
+include/neko/coriolis_source_term_cpu.mod
+include/neko/coriolis_source_term_device.mod
+include/neko/cpr.mod
+include/neko/craypat.mod
+include/neko/csv_file.mod
+include/neko/cuda_intf.mod
+include/neko/cuda_mappings.mod
+include/neko/cuda_math.mod
+include/neko/curl_simcomp.mod
+include/neko/curve.mod
+include/neko/cylinder_point_zone.mod
+include/neko/data_streamer.mod
+include/neko/datadist.mod
+include/neko/derivative_simcomp.mod
+include/neko/device.mod
+include/neko/device/cuda/check.h
+include/neko/device/device_config.h
+include/neko/device/hip/check.h
+include/neko/device/opencl/check.h
+include/neko/device/opencl/jit.h
+include/neko/device/opencl/prgm_lib.h
+include/neko/device_coef.mod
+include/neko/device_dirichlet.mod
+include/neko/device_dong_outflow.mod
+include/neko/device_dynamic_smagorinsky_nut.mod
+include/neko/device_facet_normal.mod
+include/neko/device_gradient_jump_penalty.mod
+include/neko/device_identity.mod
+include/neko/device_inflow.mod
+include/neko/device_inhom_dirichlet.mod
+include/neko/device_jacobi.mod
+include/neko/device_local_interpolation.mod
+include/neko/device_math.mod
+include/neko/device_mathops.mod
+include/neko/device_neumann.mod
+include/neko/device_projection.mod
+include/neko/device_schwarz.mod
+include/neko/device_sigma_nut.mod
+include/neko/device_smagorinsky_nut.mod
+include/neko/device_symmetry.mod
+include/neko/device_tree_amg_smoother.mod
+include/neko/device_vreman_nut.mod
+include/neko/device_wale_nut.mod
+include/neko/device_zero_dirichlet.mod
+include/neko/dirichlet.mod
+include/neko/distdata.mod
+include/neko/divergence_simcomp.mod
+include/neko/dofmap.mod
+include/neko/dong_outflow.mod
+include/neko/drag_torque.mod
+include/neko/dynamic_smagorinsky.mod
+include/neko/dynamic_smagorinsky_cpu.mod
+include/neko/dynamic_smagorinsky_device.mod
+include/neko/el_finder.mod
+include/neko/element.mod
+include/neko/elementwise_filter.mod
+include/neko/entity.mod
+include/neko/euler_res_cpu.mod
+include/neko/euler_res_device.mod
+include/neko/euler_res_sx.mod
+include/neko/euler_residual.mod
+include/neko/ext_time_scheme.mod
+include/neko/facet_normal.mod
+include/neko/facet_zone.mod
+include/neko/fast3d.mod
+include/neko/fdm.mod
+include/neko/fdm_cpu.mod
+include/neko/fdm_device.mod
+include/neko/fdm_sx.mod
+include/neko/fdm_xsmm.mod
+include/neko/field.mod
+include/neko/field_dirichlet.mod
+include/neko/field_dirichlet_vector.mod
+include/neko/field_list.mod
+include/neko/field_math.mod
+include/neko/field_series.mod
+include/neko/field_series_list.mod
+include/neko/field_writer.mod
+include/neko/file.mod
+include/neko/filter.mod
+include/neko/filter/bcknd/device/cuda/mapping_kernels.h
+include/neko/filter/bcknd/device/hip/mapping_kernels.h
+include/neko/filter/bcknd/device/opencl/mapping_kernels.cl
+include/neko/fld_file.mod
+include/neko/fld_file_data.mod
+include/neko/fld_file_output.mod
+include/neko/flow_ic.mod
+include/neko/flow_profile.mod
+include/neko/fluid/bcknd/device/cuda/compressible_ops_kernel.h
+include/neko/fluid/bcknd/device/cuda/euler_res_kernel.h
+include/neko/fluid/bcknd/device/cuda/prs_res_kernel.h
+include/neko/fluid/bcknd/device/cuda/vel_res_update_kernel.h
+include/neko/fluid/bcknd/device/hip/compressible_ops_kernel.h
+include/neko/fluid/bcknd/device/hip/euler_res_kernel.h
+include/neko/fluid/bcknd/device/hip/prs_res_kernel.h
+include/neko/fluid/bcknd/device/hip/vel_res_update_kernel.h
+include/neko/fluid/bcknd/device/opencl/compressible_ops_compute_entropy_kernel.cl
+include/neko/fluid/bcknd/device/opencl/compressible_ops_compute_max_wave_speed_kernel.cl
+include/neko/fluid/bcknd/device/opencl/euler_res_kernel.cl
+include/neko/fluid/bcknd/device/opencl/pnpn_res_kernel.cl
+include/neko/fluid/stress_formulation/bcknd/device/cuda/prs_stress_res_kernel.h
+include/neko/fluid/stress_formulation/bcknd/device/hip/prs_stress_res_kernel.h
+include/neko/fluid/stress_formulation/bcknd/device/opencl/prs_stress_res_kernel.cl
+include/neko/fluid_aux.mod
+include/neko/fluid_output.mod
+include/neko/fluid_pnpn.mod
+include/neko/fluid_scheme_base.mod
+include/neko/fluid_scheme_compressible.mod
+include/neko/fluid_scheme_compressible_euler.mod
+include/neko/fluid_scheme_incompressible.mod
+include/neko/fluid_source_term.mod
+include/neko/fluid_stats.mod
+include/neko/fluid_stats_output.mod
+include/neko/fluid_stats_simcomp.mod
+include/neko/fluid_volflow.mod
+include/neko/force_torque.mod
+include/neko/fusedcg_cpld_device.mod
+include/neko/fusedcg_device.mod
+include/neko/gather_scatter.mod
+include/neko/generic_file.mod
+include/neko/glb_intrp_comm.mod
+include/neko/global_interpolation.mod
+include/neko/gmres.mod
+include/neko/gmres_device.mod
+include/neko/gmres_sx.mod
+include/neko/gradient_jump_penalty.mod
+include/neko/gradient_simcomp.mod
+include/neko/gs/bcknd/device/cuda/gs_kernels.h
+include/neko/gs/bcknd/device/cuda/gs_nvshmem_kernels.h
+include/neko/gs/bcknd/device/hip/gs_kernels.h
+include/neko/gs/bcknd/device/opencl/gs_kernels.cl
+include/neko/gs_bcknd.mod
+include/neko/gs_comm.mod
+include/neko/gs_cpu.mod
+include/neko/gs_device.mod
+include/neko/gs_device_mpi.mod
+include/neko/gs_device_nccl.mod
+include/neko/gs_device_shmem.mod
+include/neko/gs_mpi.mod
+include/neko/gs_ops.mod
+include/neko/gs_sx.mod
+include/neko/hdf5_file.mod
+include/neko/hex.mod
+include/neko/hip_intf.mod
+include/neko/hip_mappings.mod
+include/neko/hip_math.mod
+include/neko/hsmg.mod
+include/neko/htable.mod
+include/neko/identity.mod
+include/neko/inflow.mod
+include/neko/interpolation.mod
+include/neko/intersection_detector.mod
+include/neko/jacobi.mod
+include/neko/jobctrl.mod
+include/neko/json_utils.mod
+include/neko/krylov.mod
+include/neko/krylov/bcknd/device/cuda/fusedcg_cpld_kernel.h
+include/neko/krylov/bcknd/device/cuda/fusedcg_kernel.h
+include/neko/krylov/bcknd/device/cuda/gmres_kernel.h
+include/neko/krylov/bcknd/device/cuda/pipecg_kernel.h
+include/neko/krylov/bcknd/device/hip/fusedcg_cpld_kernel.h
+include/neko/krylov/bcknd/device/hip/fusedcg_kernel.h
+include/neko/krylov/bcknd/device/hip/gmres_kernel.h
+include/neko/krylov/bcknd/device/hip/pipecg_kernel.h
+include/neko/krylov/bcknd/device/opencl/jacobi_kernel.cl
+include/neko/lambda2.mod
+include/neko/legendre_rst_finder.mod
+include/neko/les/bcknd/device/cuda/dynamic_smagorinsky_nut_kernel.h
+include/neko/les/bcknd/device/cuda/sigma_nut_kernel.h
+include/neko/les/bcknd/device/cuda/smagorinsky_nut_kernel.h
+include/neko/les/bcknd/device/cuda/vreman_nut_kernel.h
+include/neko/les/bcknd/device/cuda/wale_nut_kernel.h
+include/neko/les/bcknd/device/hip/dynamic_smagorinsky_nut_kernel.h
+include/neko/les/bcknd/device/hip/sigma_nut_kernel.h
+include/neko/les/bcknd/device/hip/smagorinsky_nut_kernel.h
+include/neko/les/bcknd/device/hip/vreman_nut_kernel.h
+include/neko/les/bcknd/device/hip/wale_nut_kernel.h
+include/neko/les_model.mod
+include/neko/les_simcomp.mod
+include/neko/local_interpolation.mod
+include/neko/logger.mod
+include/neko/map.mod
+include/neko/map_1d.mod
+include/neko/map_2d.mod
+include/neko/map_file.mod
+include/neko/mappings.mod
+include/neko/mappings_cpu.mod
+include/neko/mappings_device.mod
+include/neko/mask.mod
+include/neko/math.mod
+include/neko/math/bcknd/device/cuda/ax_helm_full_kernel.h
+include/neko/math/bcknd/device/cuda/ax_helm_kernel.h
+include/neko/math/bcknd/device/cuda/cdtp_kernel.h
+include/neko/math/bcknd/device/cuda/cfl_kernel.h
+include/neko/math/bcknd/device/cuda/conv1_kernel.h
+include/neko/math/bcknd/device/cuda/convect_scalar_kernel.h
+include/neko/math/bcknd/device/cuda/dudxyz_kernel.h
+include/neko/math/bcknd/device/cuda/fdm_kernel.h
+include/neko/math/bcknd/device/cuda/lambda2_kernel.h
+include/neko/math/bcknd/device/cuda/math_kernel.h
+include/neko/math/bcknd/device/cuda/mathops_kernel.h
+include/neko/math/bcknd/device/cuda/opgrad_kernel.h
+include/neko/math/bcknd/device/cuda/rotate_kernel.h
+include/neko/math/bcknd/device/cuda/schwarz_kernel.h
+include/neko/math/bcknd/device/cuda/set_convect_rst_kernel.h
+include/neko/math/bcknd/device/cuda/tensor_kernel.h
+include/neko/math/bcknd/device/device_mpi_op.h
+include/neko/math/bcknd/device/device_mpi_reduce.h
+include/neko/math/bcknd/device/device_nccl_op.h
+include/neko/math/bcknd/device/device_nccl_reduce.h
+include/neko/math/bcknd/device/hip/ax_helm_full_kernel.h
+include/neko/math/bcknd/device/hip/ax_helm_kernel.h
+include/neko/math/bcknd/device/hip/cdtp_kernel.h
+include/neko/math/bcknd/device/hip/cfl_kernel.h
+include/neko/math/bcknd/device/hip/conv1_kernel.h
+include/neko/math/bcknd/device/hip/convect_scalar_kernel.h
+include/neko/math/bcknd/device/hip/dudxyz_kernel.h
+include/neko/math/bcknd/device/hip/fdm_kernel.h
+include/neko/math/bcknd/device/hip/lambda2_kernel.h
+include/neko/math/bcknd/device/hip/math_kernel.h
+include/neko/math/bcknd/device/hip/mathops_kernel.h
+include/neko/math/bcknd/device/hip/opgrad_kernel.h
+include/neko/math/bcknd/device/hip/rotate_kernel.h
+include/neko/math/bcknd/device/hip/schwarz_kernel.h
+include/neko/math/bcknd/device/hip/set_convect_rst_kernel.h
+include/neko/math/bcknd/device/hip/tensor_kernel.h
+include/neko/math/bcknd/device/opencl/ax_helm_full_kernel.cl
+include/neko/math/bcknd/device/opencl/ax_helm_kernel.cl
+include/neko/math/bcknd/device/opencl/cdtp_kernel.cl
+include/neko/math/bcknd/device/opencl/cfl_kernel.cl
+include/neko/math/bcknd/device/opencl/conv1_kernel.cl
+include/neko/math/bcknd/device/opencl/convect_scalar_kernel.cl
+include/neko/math/bcknd/device/opencl/dudxyz_kernel.cl
+include/neko/math/bcknd/device/opencl/fdm_kernel.cl
+include/neko/math/bcknd/device/opencl/lambda2_kernel.cl
+include/neko/math/bcknd/device/opencl/math_kernel.cl
+include/neko/math/bcknd/device/opencl/mathops_kernel.cl
+include/neko/math/bcknd/device/opencl/opgrad_kernel.cl
+include/neko/math/bcknd/device/opencl/schwarz_kernel.cl
+include/neko/math/bcknd/device/opencl/set_convect_rst_kernel.cl
+include/neko/math/bcknd/device/opencl/tensor_kernel.cl
+include/neko/mathops.mod
+include/neko/matrix.mod
+include/neko/matrix_math.mod
+include/neko/mean_field.mod
+include/neko/mean_field_output.mod
+include/neko/mesh.mod
+include/neko/mesh_field.mod
+include/neko/mxm_wrapper.mod
+include/neko/neko.mod
+include/neko/neko_api.mod
+include/neko/neko_api_user.mod
+include/neko/neko_config.mod
+include/neko/neko_mpi_types.mod
+include/neko/neumann.mod
+include/neko/nmsh.mod
+include/neko/nmsh_file.mod
+include/neko/non_normal.mod
+include/neko/num_types.mod
+include/neko/nvtx.mod
+include/neko/octree.mod
+include/neko/opencl_intf.mod
+include/neko/opencl_mappings.mod
+include/neko/opencl_math.mod
+include/neko/opencl_prgm_lib.mod
+include/neko/operators.mod
+include/neko/opr_cpu.mod
+include/neko/opr_device.mod
+include/neko/opr_sx.mod
+include/neko/opr_xsmm.mod
+include/neko/output.mod
+include/neko/output_controller.mod
+include/neko/parmetis.mod
+include/neko/pde_filter.mod
+include/neko/pe_finder.mod
+include/neko/phmg.mod
+include/neko/pipecg.mod
+include/neko/pipecg_device.mod
+include/neko/pipecg_sx.mod
+include/neko/pnpn_res_cpu.mod
+include/neko/pnpn_res_device.mod
+include/neko/pnpn_res_stress_cpu.mod
+include/neko/pnpn_res_stress_device.mod
+include/neko/pnpn_res_sx.mod
+include/neko/pnpn_residual.mod
+include/neko/point.mod
+include/neko/point_interpolator.mod
+include/neko/point_zone.mod
+include/neko/point_zone_registry.mod
+include/neko/precon.mod
+include/neko/probes.mod
+include/neko/profiler.mod
+include/neko/projection.mod
+include/neko/projection_vel.mod
+include/neko/quad.mod
+include/neko/re2.mod
+include/neko/re2_file.mod
+include/neko/rea.mod
+include/neko/rea_file.mod
+include/neko/redist.mod
+include/neko/registry.mod
+include/neko/registry_entry.mod
+include/neko/rhs_maker.mod
+include/neko/rhs_maker_cpu.mod
+include/neko/rhs_maker_device.mod
+include/neko/rhs_maker_sx.mod
+include/neko/roctx.mod
+include/neko/rough_log_law.mod
+include/neko/rough_log_law_cpu.mod
+include/neko/rough_log_law_device.mod
+include/neko/runge_kutta_time_scheme.mod
+include/neko/runtime_stats.mod
+include/neko/scalar/bcknd/device/cuda/scalar_residual_update_kernel.h
+include/neko/scalar/bcknd/device/hip/scalar_residual_update_kernel.h
+include/neko/scalar/bcknd/device/opencl/scalar_residual_kernel.cl
+include/neko/scalar_aux.mod
+include/neko/scalar_ic.mod
+include/neko/scalar_pnpn.mod
+include/neko/scalar_residual.mod
+include/neko/scalar_residual_cpu.mod
+include/neko/scalar_residual_device.mod
+include/neko/scalar_residual_sx.mod
+include/neko/scalar_scheme.mod
+include/neko/scalar_source_term.mod
+include/neko/scalar_stats.mod
+include/neko/scalar_stats_output.mod
+include/neko/scalar_stats_simcomp.mod
+include/neko/scalars.mod
+include/neko/schwarz.mod
+include/neko/scratch_registry.mod
+include/neko/sem/bcknd/device/cuda/coef_kernel.h
+include/neko/sem/bcknd/device/hip/coef_kernel.h
+include/neko/sem/bcknd/device/opencl/coef_kernel.cl
+include/neko/sem/bcknd/device/opencl/local_interpolation_kernel.cl
+include/neko/shear_stress.mod
+include/neko/sigma.mod
+include/neko/sigma_cpu.mod
+include/neko/sigma_device.mod
+include/neko/signal.mod
+include/neko/signed_distance.mod
+include/neko/simcomp_executor.mod
+include/neko/simulation.mod
+include/neko/simulation_component.mod
+include/neko/smagorinsky.mod
+include/neko/smagorinsky_cpu.mod
+include/neko/smagorinsky_device.mod
+include/neko/source_term.mod
+include/neko/source_term_handler.mod
+include/neko/source_terms/bcknd/device/cuda/gradient_jump_penalty_kernel.h
+include/neko/source_terms/bcknd/device/hip/gradient_jump_penalty_kernel.h
+include/neko/space.mod
+include/neko/spalding.mod
+include/neko/spalding_cpu.mod
+include/neko/spalding_device.mod
+include/neko/speclib.mod
+include/neko/spectral_error.mod
+include/neko/sphere_point_zone.mod
+include/neko/sponge_source_term.mod
+include/neko/stack.mod
+include/neko/stats.mod
+include/neko/stats_quant.mod
+include/neko/stl.mod
+include/neko/stl_file.mod
+include/neko/structs.mod
+include/neko/sx_jacobi.mod
+include/neko/symmetry.mod
+include/neko/system.mod
+include/neko/tensor.mod
+include/neko/tensor_cpu.mod
+include/neko/tensor_device.mod
+include/neko/tensor_sx.mod
+include/neko/tensor_xsmm.mod
+include/neko/tet.mod
+include/neko/tet_mesh.mod
+include/neko/time_based_controller.mod
+include/neko/time_interpolator.mod
+include/neko/time_scheme.mod
+include/neko/time_scheme_controller.mod
+include/neko/time_state.mod
+include/neko/time_step_controller.mod
+include/neko/tree_amg.mod
+include/neko/tree_amg_aggregate.mod
+include/neko/tree_amg_multigrid.mod
+include/neko/tree_amg_smoother.mod
+include/neko/tree_amg_utils.mod
+include/neko/tri.mod
+include/neko/tri_mesh.mod
+include/neko/tuple.mod
+include/neko/user_access_singleton.mod
+include/neko/user_intf.mod
+include/neko/user_source_term.mod
+include/neko/user_stats.mod
+include/neko/uset.mod
+include/neko/utils.mod
+include/neko/vector.mod
+include/neko/vector_math.mod
+include/neko/vreman.mod
+include/neko/vreman_cpu.mod
+include/neko/vreman_device.mod
+include/neko/vtk_file.mod
+include/neko/wale.mod
+include/neko/wale_cpu.mod
+include/neko/wale_device.mod
+include/neko/wall_model.mod
+include/neko/wall_model_bc.mod
+include/neko/wall_model_device.mod
+include/neko/wall_models/bcknd/device/cuda/rough_log_law_kernel.h
+include/neko/wall_models/bcknd/device/cuda/spalding_kernel.h
+include/neko/wall_models/bcknd/device/cuda/wall_model_kernel.h
+include/neko/wall_models/bcknd/device/hip/rough_log_law_kernel.h
+include/neko/wall_models/bcknd/device/hip/spalding_kernel.h
+include/neko/wall_models/bcknd/device/hip/wall_model_kernel.h
+include/neko/weak_gradient_simcomp.mod
+include/neko/zero_dirichlet.mod
+lib/libneko.a
+libdata/pkgconfig/neko.pc