From 4a838f5463b53aa4cd5733f8042c58427dc74097 Mon Sep 17 00:00:00 2001
From: Christine Johnson <74597224+cjohnson-pi@users.noreply.github.com>
Date: Mon, 12 Jan 2026 14:21:29 +0000
Subject: [PATCH 1/7] changes from fcm - 32bit linear
---
.../driver/adjoint_test_parameters_mod.F90 | 12 +-
.../adjoint_tests/file/field_def_diags_ls.xml | 44 +++
.../app/adjoint_tests/file/file_def_ancil.xml | 9 +
.../file/file_def_check_restart.xml | 15 +
.../app/adjoint_tests/file/file_def_diags.xml | 17 +
.../adjoint_tests/file/file_def_diags_ls.xml | 13 +
.../adjoint_tests/file/file_def_initial.xml | 17 +
.../app/adjoint_tests/file/file_def_ls.xml | 19 +
.../app/adjoint_tests/file/file_def_read.xml | 19 +
rose-stem/app/adjoint_tests/file/iodef.xml | 327 +++------------
.../app/adjoint_tests/opt/rose-app-64bit.conf | 13 +
.../adjoint_tests/opt/rose-app-default.conf | 3 +
rose-stem/app/adjoint_tests/rose-app.conf | 8 +-
.../linear_model/file/field_def_diags_ls.xml | 44 +++
.../app/linear_model/file/file_def_ancil.xml | 9 +
.../file/file_def_check_restart.xml | 15 +
.../app/linear_model/file/file_def_diags.xml | 17 +
.../linear_model/file/file_def_diags_ls.xml | 13 +
.../linear_model/file/file_def_initial.xml | 17 +
.../app/linear_model/file/file_def_ls.xml | 19 +
.../app/linear_model/file/file_def_read.xml | 19 +
rose-stem/app/linear_model/file/iodef.xml | 373 +++---------------
.../adjoint_tests/tasks_adjoint_tests.cylc | 9 +-
.../linear_model/tasks_linear_model.cylc | 9 +-
.../meto/groups/groups_adjoint_tests.cylc | 15 +-
.../site/meto/groups/groups_linear_model.cylc | 18 +-
.../source/diagnostics/diagnostics_io_mod.x90 | 57 ++-
.../driver/gungho_diagnostics_driver_mod.F90 | 24 +-
28 files changed, 524 insertions(+), 650 deletions(-)
create mode 100644 rose-stem/app/adjoint_tests/file/field_def_diags_ls.xml
create mode 100644 rose-stem/app/adjoint_tests/file/file_def_ancil.xml
create mode 100644 rose-stem/app/adjoint_tests/file/file_def_check_restart.xml
create mode 100644 rose-stem/app/adjoint_tests/file/file_def_diags.xml
create mode 100644 rose-stem/app/adjoint_tests/file/file_def_diags_ls.xml
create mode 100644 rose-stem/app/adjoint_tests/file/file_def_initial.xml
create mode 100644 rose-stem/app/adjoint_tests/file/file_def_ls.xml
create mode 100644 rose-stem/app/adjoint_tests/file/file_def_read.xml
create mode 100644 rose-stem/app/adjoint_tests/opt/rose-app-64bit.conf
create mode 100644 rose-stem/app/linear_model/file/field_def_diags_ls.xml
create mode 100644 rose-stem/app/linear_model/file/file_def_ancil.xml
create mode 100644 rose-stem/app/linear_model/file/file_def_check_restart.xml
create mode 100644 rose-stem/app/linear_model/file/file_def_diags.xml
create mode 100644 rose-stem/app/linear_model/file/file_def_diags_ls.xml
create mode 100644 rose-stem/app/linear_model/file/file_def_initial.xml
create mode 100644 rose-stem/app/linear_model/file/file_def_ls.xml
create mode 100644 rose-stem/app/linear_model/file/file_def_read.xml
diff --git a/applications/adjoint_tests/source/driver/adjoint_test_parameters_mod.F90 b/applications/adjoint_tests/source/driver/adjoint_test_parameters_mod.F90
index 09f74b4c9..f4f06ea0c 100644
--- a/applications/adjoint_tests/source/driver/adjoint_test_parameters_mod.F90
+++ b/applications/adjoint_tests/source/driver/adjoint_test_parameters_mod.F90
@@ -28,12 +28,12 @@ module adjoint_test_parameters_mod
! if the ls is not realistic. ls can still be
! randomly assigned, but in a sensible range
! to prevent these issues.
- real(r_def), dimension(2), parameter :: ls_u_range = (/ 0.0_r_def, 10.0_r_def /)
+ real(r_def), dimension(2), parameter :: ls_u_range = (/ 0.1_r_def, 10.0_r_def /)
real(r_def), dimension(2), parameter :: ls_theta_range = (/ 280.0_r_def, 340.0_r_def /)
- real(r_def), dimension(2), parameter :: ls_rho_range = (/ 0.0_r_def, 1.0_r_def /)
- real(r_def), dimension(2), parameter :: ls_exner_range = (/ 0.0_r_def, 1.0_r_def /)
- real(r_def), dimension(2), parameter :: ls_md1_range = (/ 0.0_r_def, 1.0_r_def /)
- real(r_def), dimension(2), parameter :: ls_md2_range = (/ 0.0_r_def, 1.0_r_def /)
- real(r_def), dimension(2), parameter :: ls_md3_range = (/ 0.0_r_def, 1.0_r_def /)
+ real(r_def), dimension(2), parameter :: ls_rho_range = (/ 0.1_r_def, 1.0_r_def /)
+ real(r_def), dimension(2), parameter :: ls_exner_range = (/ 0.1_r_def, 1.0_r_def /)
+ real(r_def), dimension(2), parameter :: ls_md1_range = (/ 0.1_r_def, 1.0_r_def /)
+ real(r_def), dimension(2), parameter :: ls_md2_range = (/ 0.1_r_def, 1.0_r_def /)
+ real(r_def), dimension(2), parameter :: ls_md3_range = (/ 0.1_r_def, 1.0_r_def /)
end module adjoint_test_parameters_mod
diff --git a/rose-stem/app/adjoint_tests/file/field_def_diags_ls.xml b/rose-stem/app/adjoint_tests/file/field_def_diags_ls.xml
new file mode 100644
index 000000000..8a2c34e54
--- /dev/null
+++ b/rose-stem/app/adjoint_tests/file/field_def_diags_ls.xml
@@ -0,0 +1,44 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/rose-stem/app/adjoint_tests/file/file_def_ancil.xml b/rose-stem/app/adjoint_tests/file/file_def_ancil.xml
new file mode 100644
index 000000000..43c9e9e44
--- /dev/null
+++ b/rose-stem/app/adjoint_tests/file/file_def_ancil.xml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
diff --git a/rose-stem/app/adjoint_tests/file/file_def_check_restart.xml b/rose-stem/app/adjoint_tests/file/file_def_check_restart.xml
new file mode 100644
index 000000000..05ba6dcbc
--- /dev/null
+++ b/rose-stem/app/adjoint_tests/file/file_def_check_restart.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/rose-stem/app/adjoint_tests/file/file_def_diags.xml b/rose-stem/app/adjoint_tests/file/file_def_diags.xml
new file mode 100644
index 000000000..c12613f00
--- /dev/null
+++ b/rose-stem/app/adjoint_tests/file/file_def_diags.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/rose-stem/app/adjoint_tests/file/file_def_diags_ls.xml b/rose-stem/app/adjoint_tests/file/file_def_diags_ls.xml
new file mode 100644
index 000000000..0cdd03798
--- /dev/null
+++ b/rose-stem/app/adjoint_tests/file/file_def_diags_ls.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/rose-stem/app/adjoint_tests/file/file_def_initial.xml b/rose-stem/app/adjoint_tests/file/file_def_initial.xml
new file mode 100644
index 000000000..05a68968e
--- /dev/null
+++ b/rose-stem/app/adjoint_tests/file/file_def_initial.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/rose-stem/app/adjoint_tests/file/file_def_ls.xml b/rose-stem/app/adjoint_tests/file/file_def_ls.xml
new file mode 100644
index 000000000..63e02702a
--- /dev/null
+++ b/rose-stem/app/adjoint_tests/file/file_def_ls.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/rose-stem/app/adjoint_tests/file/file_def_read.xml b/rose-stem/app/adjoint_tests/file/file_def_read.xml
new file mode 100644
index 000000000..61cc7f81e
--- /dev/null
+++ b/rose-stem/app/adjoint_tests/file/file_def_read.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/rose-stem/app/adjoint_tests/file/iodef.xml b/rose-stem/app/adjoint_tests/file/iodef.xml
index ab5722770..075e428f3 100644
--- a/rose-stem/app/adjoint_tests/file/iodef.xml
+++ b/rose-stem/app/adjoint_tests/file/iodef.xml
@@ -5,285 +5,54 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/rose-stem/app/adjoint_tests/opt/rose-app-64bit.conf b/rose-stem/app/adjoint_tests/opt/rose-app-64bit.conf
new file mode 100644
index 000000000..c2ebcf72b
--- /dev/null
+++ b/rose-stem/app/adjoint_tests/opt/rose-app-64bit.conf
@@ -0,0 +1,13 @@
+[file:iodef_temp.xml]
+mode=auto
+source=$ROSE_SUITE_DIR/app/adjoint_tests/file/iodef.xml
+
+[namelist:helmholtz_solver]
+si_pressure_tolerance=1.0e-15
+
+[namelist:linear]
+fixed_ls=.false.
+
+[namelist:mixed_solver]
+mixed_solver_a_tol=1.0e-21
+si_tolerance=1.0e-21
diff --git a/rose-stem/app/adjoint_tests/opt/rose-app-default.conf b/rose-stem/app/adjoint_tests/opt/rose-app-default.conf
index e69de29bb..dba827637 100644
--- a/rose-stem/app/adjoint_tests/opt/rose-app-default.conf
+++ b/rose-stem/app/adjoint_tests/opt/rose-app-default.conf
@@ -0,0 +1,3 @@
+[file:iodef_temp.xml]
+mode=auto
+source=$ROSE_SUITE_DIR/app/adjoint_tests/file/iodef.xml
diff --git a/rose-stem/app/adjoint_tests/rose-app.conf b/rose-stem/app/adjoint_tests/rose-app.conf
index e1950c137..0f17ae2df 100644
--- a/rose-stem/app/adjoint_tests/rose-app.conf
+++ b/rose-stem/app/adjoint_tests/rose-app.conf
@@ -1,7 +1,7 @@
meta=lfric-adjoint_tests/vn2.2_t618
[command]
-default=$LAUNCH_SCRIPT/launch-exe
+default=rose env-cat iodef_temp.xml -o iodef.xml; $LAUNCH_SCRIPT/launch-exe
[env]
ENSEMBLE_MEMBER=0
@@ -421,7 +421,7 @@ normalise=.true.
preconditioner='tridiagonal'
si_pressure_a_tol=0
si_pressure_maximum_iterations=400
-si_pressure_tolerance=1.0e-15
+si_pressure_tolerance=1.0e-6
[namelist:iau]
!!iau_ainc_multifile=.false.
@@ -724,14 +724,14 @@ fail_on_non_converged=.false.
gcrk=10
guess_np1=.false.
!!jacobi_relaxation=0
-mixed_solver_a_tol=1.0e-21
+mixed_solver_a_tol=1.0e-7
monitor_convergence=.true.
normalise=.true.
reference_reset_time=3600.0
si_maximum_iterations=10
si_method='block_gcr'
si_preconditioner='pressure'
-si_tolerance=1.0e-21
+si_tolerance=1.0e-8
split_w=.true.
[namelist:mixing]
diff --git a/rose-stem/app/linear_model/file/field_def_diags_ls.xml b/rose-stem/app/linear_model/file/field_def_diags_ls.xml
new file mode 100644
index 000000000..8a2c34e54
--- /dev/null
+++ b/rose-stem/app/linear_model/file/field_def_diags_ls.xml
@@ -0,0 +1,44 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/rose-stem/app/linear_model/file/file_def_ancil.xml b/rose-stem/app/linear_model/file/file_def_ancil.xml
new file mode 100644
index 000000000..43c9e9e44
--- /dev/null
+++ b/rose-stem/app/linear_model/file/file_def_ancil.xml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
diff --git a/rose-stem/app/linear_model/file/file_def_check_restart.xml b/rose-stem/app/linear_model/file/file_def_check_restart.xml
new file mode 100644
index 000000000..05ba6dcbc
--- /dev/null
+++ b/rose-stem/app/linear_model/file/file_def_check_restart.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/rose-stem/app/linear_model/file/file_def_diags.xml b/rose-stem/app/linear_model/file/file_def_diags.xml
new file mode 100644
index 000000000..c12613f00
--- /dev/null
+++ b/rose-stem/app/linear_model/file/file_def_diags.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/rose-stem/app/linear_model/file/file_def_diags_ls.xml b/rose-stem/app/linear_model/file/file_def_diags_ls.xml
new file mode 100644
index 000000000..0cdd03798
--- /dev/null
+++ b/rose-stem/app/linear_model/file/file_def_diags_ls.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/rose-stem/app/linear_model/file/file_def_initial.xml b/rose-stem/app/linear_model/file/file_def_initial.xml
new file mode 100644
index 000000000..05a68968e
--- /dev/null
+++ b/rose-stem/app/linear_model/file/file_def_initial.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/rose-stem/app/linear_model/file/file_def_ls.xml b/rose-stem/app/linear_model/file/file_def_ls.xml
new file mode 100644
index 000000000..63e02702a
--- /dev/null
+++ b/rose-stem/app/linear_model/file/file_def_ls.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/rose-stem/app/linear_model/file/file_def_read.xml b/rose-stem/app/linear_model/file/file_def_read.xml
new file mode 100644
index 000000000..61cc7f81e
--- /dev/null
+++ b/rose-stem/app/linear_model/file/file_def_read.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/rose-stem/app/linear_model/file/iodef.xml b/rose-stem/app/linear_model/file/iodef.xml
index 8591084dc..075e428f3 100644
--- a/rose-stem/app/linear_model/file/iodef.xml
+++ b/rose-stem/app/linear_model/file/iodef.xml
@@ -5,331 +5,54 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- processed__tot_col_uv_kinetic_energy + processed__tot_col_w_kinetic_energy
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/rose-stem/site/common/adjoint_tests/tasks_adjoint_tests.cylc b/rose-stem/site/common/adjoint_tests/tasks_adjoint_tests.cylc
index cf00dc311..cfdfa8964 100644
--- a/rose-stem/site/common/adjoint_tests/tasks_adjoint_tests.cylc
+++ b/rose-stem/site/common/adjoint_tests/tasks_adjoint_tests.cylc
@@ -19,6 +19,13 @@
"resolution": "C12",
}) %}
+{% elif task_ns.conf_name == "64bit-C12" %}
+
+ {% do task_dict.update({
+ "opt_confs": ["64bit"],
+ "resolution": "C12",
+ }) %}
+
{% elif task_ns.conf_name == "canned" %}
{% do task_dict.update({
@@ -45,4 +52,4 @@
{% endif %}
{% endif %}
-{% do LOG.debug("Finished in site/common/adjoint_tests/tasks_jedi_lfric_tests.cylc") %}
\ No newline at end of file
+{% do LOG.debug("Finished in site/common/adjoint_tests/tasks_jedi_lfric_tests.cylc") %}
diff --git a/rose-stem/site/common/linear_model/tasks_linear_model.cylc b/rose-stem/site/common/linear_model/tasks_linear_model.cylc
index 750fb3604..06561ed41 100644
--- a/rose-stem/site/common/linear_model/tasks_linear_model.cylc
+++ b/rose-stem/site/common/linear_model/tasks_linear_model.cylc
@@ -13,7 +13,7 @@
"DT": 1800,
"tsteps": 12,
"mpi_parts": 6,
- "plot_str": "linear.py $NODAL_DATA_DIR/lfric_diag.nc $PLOT_DIR 70 linear_model-nwp-gal9_C12 theta:exner:rho:u_in_w2h:v_in_w2h:w_in_wth:m_v:m_cl:m_r:m_s 120:0:5",
+ "plot_str": "linear.py $NODAL_DATA_DIR/lfric_diag.nc $PLOT_DIR 70 linear_model-nwp-gal9_C12 theta:exner:rho:u_in_w3:v_in_w3:m_v:m_cl:m_r:m_cf 120:0:5",
}) %}
{% elif task_ns.conf_name == "nwp_gal9-C224_MG" %}
@@ -27,7 +27,7 @@
"xios_nodes": 4,
"mpi_parts_xios" : 16,
"log_level": "debug",
- "plot_str": "linear.py $NODAL_DATA_DIR/lfric_diag.nc $PLOT_DIR 70 linear_model-nwp-gal9_C224 theta:exner:rho:u_in_w2h 120:0:5",
+ "plot_str": "linear.py $NODAL_DATA_DIR/lfric_diag.nc $PLOT_DIR 70 linear_model-nwp-gal9_C224 theta:exner:rho:u_in_w3 120:0:5",
}) %}
{% elif task_ns.conf_name == "nwp_gal9_random-C12_MG" %}
@@ -38,7 +38,7 @@
"DT": 1800,
"tsteps": 12,
"mpi_parts": 6,
- "plot_str": "linear.py $NODAL_DATA_DIR/lfric_diag.nc $PLOT_DIR 70 linear_model-nwp-gal9_random theta:exner:rho:u_in_w2h:v_in_w2h:w_in_wth:m_v:m_cl:m_r:m_s 120:0:5",
+ "plot_str": "linear.py $NODAL_DATA_DIR/lfric_diag.nc $PLOT_DIR 70 linear_model-nwp-gal9_random theta:exner:rho:u_in_w3:v_in_w3:m_v:m_cl:m_r:m_cf 120:0:5",
}) %}
{% elif task_ns.conf_name == "nwp_gal9_zero-C12_MG" %}
@@ -49,6 +49,7 @@
"DT": 1800,
"tsteps": 12,
"mpi_parts": 6,
+ "plot_str": "linear.py $NODAL_DATA_DIR/lfric_diag.nc $PLOT_DIR 70 linear_model-nwp-gal9_random theta:exner:rho:m_v:m_cl:m_r:m_cf 120:0:5",
}) %}
{% elif task_ns.conf_name == "runge-kutta-C12" %}
@@ -80,7 +81,7 @@
"DT": 10,
"tsteps": 180,
"mpi_parts": 12,
- "plot_str": "linear.py $NODAL_DATA_DIR/lfric_diag.nc $PLOT_DIR 10 linear_model-dcmip theta:exner:rho:u_in_w2h:v_in_w2h:w_in_wth 120:0:5"
+ "plot_str": "linear.py $NODAL_DATA_DIR/lfric_diag.nc $PLOT_DIR 10 linear_model-dcmip theta:exner:rho:u_in_w3:v_in_w3 120:0:5"
}) %}
{% elif task_ns.conf_name == "canned" %}
diff --git a/rose-stem/site/meto/groups/groups_adjoint_tests.cylc b/rose-stem/site/meto/groups/groups_adjoint_tests.cylc
index 804f53ee8..bdfef1608 100644
--- a/rose-stem/site/meto/groups/groups_adjoint_tests.cylc
+++ b/rose-stem/site/meto/groups/groups_adjoint_tests.cylc
@@ -8,9 +8,9 @@
{# Azspice Groups #}
{% do site_groups.update({
"adjoint_tests_azspice_developer": [
- "adjoint_tests_default-C12_azspice_gnu_fast-debug-64bit-rsolver64",
- "adjoint_tests_default-C12_azspice_gnu_full-debug-64bit-rsolver64",
- "adjoint_tests_varying_ls-C12_azspice_gnu_fast-debug-64bit-rsolver64",
+ "adjoint_tests_default-C12_azspice_gnu_production-32bit",
+ "adjoint_tests_64bit-C12_azspice_gnu_fast-debug-64bit-rsolver64",
+ "adjoint_tests_64bit-C12_azspice_gnu_full-debug-64bit-rsolver64",
"adjoint_tests_azspice_canned",
],
"adjoint_tests_azspice": [
@@ -20,7 +20,7 @@
"adjoint_tests_canned_azspice_gnu_fast-debug-64bit-rsolver64",
],
"adjoint_tests_azspice_build": [
- "build_adjoint_tests_azspice_gnu_fast-debug-64bit",
+ "build_adjoint_tests_azspice_gnu_production-32bit",
"build_adjoint_tests_azspice_gnu_full-debug-64bit",
],
}) %}
@@ -28,8 +28,9 @@
{# EX1A Groups #}
{% do site_groups.update({
"adjoint_tests_ex1a_developer": [
- "adjoint_tests_default-C12_ex1a_gnu_fast-debug-64bit-rsolver64",
- "adjoint_tests_default-C12_ex1a_gnu_full-debug-64bit-rsolver64",
+ "adjoint_tests_default-C12_ex1a_gnu_production-32bit",
+ "adjoint_tests_64bit-C12_ex1a_gnu_fast-debug-64bit-rsolver64",
+ "adjoint_tests_64bit-C12_ex1a_gnu_full-debug-64bit-rsolver64",
"adjoint_tests_ex1a_canned",
],
"adjoint_tests_ex1a": [
@@ -39,7 +40,7 @@
"adjoint_tests_canned_ex1a_gnu_fast-debug-64bit-rsolver64",
],
"adjoint_tests_ex1a_build": [
- "build_adjoint_tests_ex1a_gnu_fast-debug-64bit",
+ "build_adjoint_tests_ex1a_gnu_production-32bit",
"build_adjoint_tests_ex1a_gnu_full-debug-64bit",
],
}) %}
diff --git a/rose-stem/site/meto/groups/groups_linear_model.cylc b/rose-stem/site/meto/groups/groups_linear_model.cylc
index 36b7b9491..ffd540f2f 100644
--- a/rose-stem/site/meto/groups/groups_linear_model.cylc
+++ b/rose-stem/site/meto/groups/groups_linear_model.cylc
@@ -8,6 +8,7 @@
{# Azspice Groups #}
{% do site_groups.update({
"linear_model_azspice_developer": [
+ "linear_model_nwp_gal9-C12_MG_azspice_gnu_production-32bit",
"linear_model_nwp_gal9-C12_MG_azspice_gnu_fast-debug-64bit",
"linear_model_nwp_gal9_random-C12_MG_azspice_gnu_fast-debug-64bit",
"linear_model_nwp_gal9_zero-C12_MG_azspice_gnu_fast-debug-64bit",
@@ -31,13 +32,22 @@
{# EX1A Groups #}
{% do site_groups.update({
"linear_model_ex1a_developer": [
- "linear_model_nwp_gal9-C224_MG_ex1a_gnu_fast-debug-64bit",
- "linear_model_nwp_gal9-C12_MG_ex1a_gnu_fast-debug-64bit",
- "linear_model_nwp_gal9_random-C12_MG_ex1a_gnu_fast-debug-64bit",
- "linear_model_nwp_gal9_zero-C12_MG_ex1a_gnu_fast-debug-64bit",
+ "linear_model_nwp_gal9-C224_MG_ex1a_gnu_production-32bit",
"linear_model_runge-kutta-C12_ex1a_gnu_fast-debug-64bit",
"linear_model_semi-implicit-C12_ex1a_gnu_fast-debug-64bit",
"linear_model_dcmip301-C24_ex1a_gnu_fast-debug-64bit",
+ "linear_model_nwp_gal9-C12_MG_ex1a_gnu_fast-debug-64bit",
+ "linear_model_nwp_gal9-C12_MG_ex1a_gnu_fast-debug-32bit",
+ "linear_model_nwp_gal9-C12_MG_ex1a_gnu_full-debug-64bit",
+ "linear_model_nwp_gal9-C12_MG_ex1a_gnu_full-debug-32bit",
+ "linear_model_nwp_gal9-C12_MG_ex1a_gnu_production-64bit",
+ "linear_model_nwp_gal9-C12_MG_ex1a_gnu_production-32bit",
+ "linear_model_nwp_gal9-C12_MG_ex1a_cce_fast-debug-64bit",
+ "linear_model_nwp_gal9-C12_MG_ex1a_cce_fast-debug-32bit",
+ "linear_model_nwp_gal9-C12_MG_ex1a_cce_production-64bit",
+ "linear_model_nwp_gal9-C12_MG_ex1a_cce_production-32bit",
+ "linear_model_nwp_gal9_random-C12_MG_ex1a_gnu_fast-debug-64bit",
+ "linear_model_nwp_gal9_zero-C12_MG_ex1a_gnu_fast-debug-64bit",
"linear_model_ex1a_canned",
],
"linear_model_ex1a": [
diff --git a/science/gungho/source/diagnostics/diagnostics_io_mod.x90 b/science/gungho/source/diagnostics/diagnostics_io_mod.x90
index ad2f7737a..2b3c5dcec 100755
--- a/science/gungho/source/diagnostics/diagnostics_io_mod.x90
+++ b/science/gungho/source/diagnostics/diagnostics_io_mod.x90
@@ -17,6 +17,7 @@ module diagnostics_io_mod
scalar_nodal_diagnostic_alg, &
scalar_ugrid_diagnostic_alg, &
vector_nodal_diagnostic_alg
+ use initialise_diagnostics_mod, only: diagnostic_to_be_sampled
use io_config_mod, only: use_xios_io, write_fluxes
use files_config_mod, only: diag_stem_name
use function_space_collection_mod, only: function_space_collection
@@ -139,9 +140,13 @@ subroutine write_scalar_diagnostic( field_name, field, &
! Check if we need to write an initial field
if (clock%is_initialisation()) then
- call output_field(1)%write_field(trim('init_'//field_name))
+ if (diagnostic_to_be_sampled(trim('init_'//field_name))) then
+ call output_field(1)%write_field(trim('init_'//field_name))
+ end if
else
- call output_field(1)%write_field(trim(field_name))
+ if (diagnostic_to_be_sampled(trim(field_name))) then
+ call output_field(1)%write_field(trim(field_name))
+ end if
end if
nullify(tmp_write_ptr)
@@ -308,23 +313,47 @@ subroutine write_vector_diagnostic( field_name, field, &
if (clock%is_initialisation()) then
if (field_name == 'u') then
- call u1_wind%write_field("init_u_in_w2h")
- call u2_wind%write_field("init_v_in_w2h")
- call u3_wind%write_field("init_w_in_wth")
+ if (diagnostic_to_be_sampled("init_u_in_w2h")) then
+ call u1_wind%write_field("init_u_in_w2h")
+ end if
+ if (diagnostic_to_be_sampled("init_v_in_w2h")) then
+ call u2_wind%write_field("init_v_in_w2h")
+ end if
+ if (diagnostic_to_be_sampled("init_w_in_wth")) then
+ call u3_wind%write_field("init_w_in_wth")
+ end if
else
- call u1_wind%write_field("init_"//trim(field_name)//"1")
- call u2_wind%write_field("init_"//trim(field_name)//"2")
- call u3_wind%write_field("init_"//trim(field_name)//"3")
+ if (diagnostic_to_be_sampled(trim(field_name)//"1")) then
+ call u1_wind%write_field("init_"//trim(field_name)//"1")
+ end if
+ if (diagnostic_to_be_sampled(trim(field_name)//"2")) then
+ call u2_wind%write_field("init_"//trim(field_name)//"2")
+ end if
+ if (diagnostic_to_be_sampled(trim(field_name)//"3")) then
+ call u3_wind%write_field("init_"//trim(field_name)//"3")
+ end if
end if
else
if (field_name == 'u') then
- call u1_wind%write_field("u_in_w2h")
- call u2_wind%write_field("v_in_w2h")
- call u3_wind%write_field("w_in_wth")
+ if (diagnostic_to_be_sampled("u_in_w2h")) then
+ call u1_wind%write_field("u_in_w2h")
+ end if
+ if (diagnostic_to_be_sampled("v_in_w2h")) then
+ call u2_wind%write_field("v_in_w2h")
+ end if
+ if (diagnostic_to_be_sampled("w_in_wth")) then
+ call u3_wind%write_field("w_in_wth")
+ end if
else
- call u1_wind%write_field(trim(field_name)//"1")
- call u2_wind%write_field(trim(field_name)//"2")
- call u3_wind%write_field(trim(field_name)//"3")
+ if (diagnostic_to_be_sampled(trim(field_name)//"1")) then
+ call u1_wind%write_field(trim(field_name)//"1")
+ end if
+ if (diagnostic_to_be_sampled(trim(field_name)//"2")) then
+ call u2_wind%write_field(trim(field_name)//"2")
+ end if
+ if (diagnostic_to_be_sampled(trim(field_name)//"3")) then
+ call u3_wind%write_field(trim(field_name)//"3")
+ end if
end if
end if
diff --git a/science/gungho/source/driver/gungho_diagnostics_driver_mod.F90 b/science/gungho/source/driver/gungho_diagnostics_driver_mod.F90
index 12cc745a4..b7d1f57b3 100644
--- a/science/gungho/source/driver/gungho_diagnostics_driver_mod.F90
+++ b/science/gungho/source/driver/gungho_diagnostics_driver_mod.F90
@@ -212,13 +212,25 @@ subroutine gungho_diagnostics_driver( modeldb, &
call u_in_w2h%set_write_behaviour(tmp_write_ptr)
call v_in_w2h%set_write_behaviour(tmp_write_ptr)
if (modeldb%clock%is_initialisation()) then
- call u_in_w2h%write_field("init_u_in_w2h")
- call v_in_w2h%write_field("init_v_in_w2h")
- call w_in_wth%write_field("init_w_in_wth")
+ if (diagnostic_to_be_sampled("init_u_in_w2h")) then
+ call u_in_w2h%write_field("init_u_in_w2h")
+ end if
+ if (diagnostic_to_be_sampled("init_v_in_w2h")) then
+ call v_in_w2h%write_field("init_v_in_w2h")
+ end if
+ if (diagnostic_to_be_sampled("init_w_in_wth")) then
+ call w_in_wth%write_field("init_w_in_wth")
+ end if
else
- call u_in_w2h%write_field("u_in_w2h")
- call v_in_w2h%write_field("v_in_w2h")
- call w_in_wth%write_field("w_in_wth")
+ if (diagnostic_to_be_sampled("u_in_w2h")) then
+ call u_in_w2h%write_field("u_in_w2h")
+ end if
+ if (diagnostic_to_be_sampled("v_in_w2h")) then
+ call v_in_w2h%write_field("v_in_w2h")
+ end if
+ if (diagnostic_to_be_sampled("w_in_wth")) then
+ call w_in_wth%write_field("w_in_wth")
+ end if
end if
else
call write_vector_diagnostic('u', u, &
From 1f30170b238696dc1a5e317c23a7aedf726c2fe8 Mon Sep 17 00:00:00 2001
From: Christine Johnson <74597224+cjohnson-pi@users.noreply.github.com>
Date: Mon, 19 Jan 2026 10:19:23 +0000
Subject: [PATCH 2/7] CLA
---
CONTRIBUTORS.md | 1 +
1 file changed, 1 insertion(+)
diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md
index d0f7ae14d..dc904219d 100644
--- a/CONTRIBUTORS.md
+++ b/CONTRIBUTORS.md
@@ -4,3 +4,4 @@
| ----------- | --------- | ----------- | ---- |
| james-bruten-mo | James Bruten | Met Office | 2025-12-09 |
| jennyhickson | Jenny Hickson | Met Office | 2025-12-10 |
+| cjohnson-pi | Christine Johnson | Met Office | 2026-01-19 |
From 98cb62d81bc7adac8023cab5a8b63a5ec715df19 Mon Sep 17 00:00:00 2001
From: cjohnson-pi <74597224+cjohnson-pi@users.noreply.github.com>
Date: Mon, 19 Jan 2026 10:22:55 +0000
Subject: [PATCH 3/7] Update CONTRIBUTORS.md
---
CONTRIBUTORS.md | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md
index 8df582df7..2d5611223 100644
--- a/CONTRIBUTORS.md
+++ b/CONTRIBUTORS.md
@@ -1,5 +1,4 @@
# Contributors
-
| GitHub user | Real Name | Affiliation | Date |
| --------------- | ----------------- | ----------- | ---------- |
| james-bruten-mo | James Bruten | Met Office | 2025-12-09 |
@@ -12,4 +11,4 @@
| DrTVockerodtMO | Terence Vockerodt | Met Office | 2026-01-08 |
| MetBenjaminWent | Benjamin Went | Met Office | 2026-01-15 |
| timgraham-Met | Tim Graham | Met Office | 2026-01-15 |
-| cjohnson-pi | Christine Johnson | Met Office | 2026-01-19 |
\ No newline at end of file
+| cjohnson-pi | Christine Johnson | Met Office | 2026-01-19 |
From 853bc29ff7f4961ce517e6100537e0e06d16718f Mon Sep 17 00:00:00 2001
From: Christine Johnson <74597224+cjohnson-pi@users.noreply.github.com>
Date: Mon, 19 Jan 2026 10:33:54 +0000
Subject: [PATCH 4/7] update rose
---
rose-stem/site/meto/groups/groups_linear_model.cylc | 11 ++---------
1 file changed, 2 insertions(+), 9 deletions(-)
diff --git a/rose-stem/site/meto/groups/groups_linear_model.cylc b/rose-stem/site/meto/groups/groups_linear_model.cylc
index 377a5b59a..062689d42 100644
--- a/rose-stem/site/meto/groups/groups_linear_model.cylc
+++ b/rose-stem/site/meto/groups/groups_linear_model.cylc
@@ -32,16 +32,11 @@
{# EX1A Groups #}
{% do site_groups.update({
"linear_model_ex1a_developer": [
-<<<<<<< HEAD
- "linear_model_nwp_gal9-C224_MG_ex1a_gnu_production-32bit",
-=======
- "linear_model_nwp_gal9-C12_MG_ex1a_gnu_fast-debug-64bit",
- "linear_model_nwp_gal9_random-C12_MG_ex1a_gnu_fast-debug-64bit",
- "linear_model_nwp_gal9_zero-C12_MG_ex1a_gnu_fast-debug-64bit",
->>>>>>> origin/stable
"linear_model_runge-kutta-C12_ex1a_gnu_fast-debug-64bit",
"linear_model_semi-implicit-C12_ex1a_gnu_fast-debug-64bit",
"linear_model_dcmip301-C24_ex1a_gnu_fast-debug-64bit",
+ "linear_model_nwp_gal9_random-C12_MG_ex1a_gnu_fast-debug-64bit",
+ "linear_model_nwp_gal9_zero-C12_MG_ex1a_gnu_fast-debug-64bit",
"linear_model_nwp_gal9-C12_MG_ex1a_gnu_fast-debug-64bit",
"linear_model_nwp_gal9-C12_MG_ex1a_gnu_fast-debug-32bit",
"linear_model_nwp_gal9-C12_MG_ex1a_gnu_full-debug-64bit",
@@ -52,8 +47,6 @@
"linear_model_nwp_gal9-C12_MG_ex1a_cce_fast-debug-32bit",
"linear_model_nwp_gal9-C12_MG_ex1a_cce_production-64bit",
"linear_model_nwp_gal9-C12_MG_ex1a_cce_production-32bit",
- "linear_model_nwp_gal9_random-C12_MG_ex1a_gnu_fast-debug-64bit",
- "linear_model_nwp_gal9_zero-C12_MG_ex1a_gnu_fast-debug-64bit",
"linear_model_ex1a_canned",
],
"linear_model_ex1a": [
From fe54e63d8d2b4baea5f0946734a66546c423b0c1 Mon Sep 17 00:00:00 2001
From: Christine Johnson <74597224+cjohnson-pi@users.noreply.github.com>
Date: Mon, 19 Jan 2026 15:14:58 +0000
Subject: [PATCH 5/7] kgos
---
...odel_nwp_gal9-C12_MG_azspice_gnu_production-32bit.txt | 9 +++++++++
...r_model_nwp_gal9-C12_MG_ex1a_cce_fast-debug-32bit.txt | 9 +++++++++
...r_model_nwp_gal9-C12_MG_ex1a_cce_fast-debug-64bit.txt | 9 +++++++++
...r_model_nwp_gal9-C12_MG_ex1a_cce_production-32bit.txt | 9 +++++++++
...r_model_nwp_gal9-C12_MG_ex1a_cce_production-64bit.txt | 9 +++++++++
...r_model_nwp_gal9-C12_MG_ex1a_gnu_fast-debug-32bit.txt | 9 +++++++++
...r_model_nwp_gal9-C12_MG_ex1a_gnu_full-debug-32bit.txt | 9 +++++++++
...r_model_nwp_gal9-C12_MG_ex1a_gnu_full-debug-64bit.txt | 9 +++++++++
...r_model_nwp_gal9-C12_MG_ex1a_gnu_production-32bit.txt | 9 +++++++++
...r_model_nwp_gal9-C12_MG_ex1a_gnu_production-64bit.txt | 9 +++++++++
10 files changed, 90 insertions(+)
create mode 100644 rose-stem/site/meto/kgos/linear_model/azspice/checksum_linear_model_nwp_gal9-C12_MG_azspice_gnu_production-32bit.txt
create mode 100644 rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_cce_fast-debug-32bit.txt
create mode 100644 rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_cce_fast-debug-64bit.txt
create mode 100644 rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_cce_production-32bit.txt
create mode 100644 rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_cce_production-64bit.txt
create mode 100644 rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_gnu_fast-debug-32bit.txt
create mode 100644 rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_gnu_full-debug-32bit.txt
create mode 100644 rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_gnu_full-debug-64bit.txt
create mode 100644 rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_gnu_production-32bit.txt
create mode 100644 rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_gnu_production-64bit.txt
diff --git a/rose-stem/site/meto/kgos/linear_model/azspice/checksum_linear_model_nwp_gal9-C12_MG_azspice_gnu_production-32bit.txt b/rose-stem/site/meto/kgos/linear_model/azspice/checksum_linear_model_nwp_gal9-C12_MG_azspice_gnu_production-32bit.txt
new file mode 100644
index 000000000..c934afe08
--- /dev/null
+++ b/rose-stem/site/meto/kgos/linear_model/azspice/checksum_linear_model_nwp_gal9-C12_MG_azspice_gnu_production-32bit.txt
@@ -0,0 +1,9 @@
+Inner product checksum rho = 3D4ACAE6
+Inner product checksum theta = 4B0FFC49
+Inner product checksum u = 6B52658C
+Inner product checksum mr1 = 39DC40E0
+Inner product checksum mr2 = 37599186
+Inner product checksum mr3 = 36FF90E9
+Inner product checksum mr4 = 376A1F26
+Inner product checksum mr5 = 0
+Inner product checksum mr6 = 0
diff --git a/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_cce_fast-debug-32bit.txt b/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_cce_fast-debug-32bit.txt
new file mode 100644
index 000000000..e80557eca
--- /dev/null
+++ b/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_cce_fast-debug-32bit.txt
@@ -0,0 +1,9 @@
+Inner product checksum rho = 3D4ACE5F
+Inner product checksum theta = 4B0FFDD1
+Inner product checksum u = 6B52681C
+Inner product checksum mr1 = 39DC44FB
+Inner product checksum mr2 = 3759A01B
+Inner product checksum mr3 = 36FFA7F1
+Inner product checksum mr4 = 376A28C7
+Inner product checksum mr5 = 0
+Inner product checksum mr6 = 0
diff --git a/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_cce_fast-debug-64bit.txt b/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_cce_fast-debug-64bit.txt
new file mode 100644
index 000000000..229501ffa
--- /dev/null
+++ b/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_cce_fast-debug-64bit.txt
@@ -0,0 +1,9 @@
+Inner product checksum rho = 3FA958EF383B0782
+Inner product checksum theta = 4161FFBE25C862BD
+Inner product checksum u = 456A4D0A84F080A3
+Inner product checksum mr1 = 3F3B887BAF34DBFF
+Inner product checksum mr2 = 3EEB31093A6C92AD
+Inner product checksum mr3 = 3EDFF31B7D494BE0
+Inner product checksum mr4 = 3EED42825E6771A0
+Inner product checksum mr5 = 0
+Inner product checksum mr6 = 0
diff --git a/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_cce_production-32bit.txt b/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_cce_production-32bit.txt
new file mode 100644
index 000000000..e6510b951
--- /dev/null
+++ b/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_cce_production-32bit.txt
@@ -0,0 +1,9 @@
+Inner product checksum rho = 3D4AF97F
+Inner product checksum theta = 4B0FFB8A
+Inner product checksum u = 6B5264A4
+Inner product checksum mr1 = 39DC524B
+Inner product checksum mr2 = 3759A43A
+Inner product checksum mr3 = 36FF9496
+Inner product checksum mr4 = 376A002D
+Inner product checksum mr5 = 0
+Inner product checksum mr6 = 0
diff --git a/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_cce_production-64bit.txt b/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_cce_production-64bit.txt
new file mode 100644
index 000000000..aaea37eb9
--- /dev/null
+++ b/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_cce_production-64bit.txt
@@ -0,0 +1,9 @@
+Inner product checksum rho = 3FA958F7049182F0
+Inner product checksum theta = 4161FFBD6EBABDF1
+Inner product checksum u = 456A4D0A64E2B7A7
+Inner product checksum mr1 = 3F3B8855C1E5D2B9
+Inner product checksum mr2 = 3EEB3109C255DDD4
+Inner product checksum mr3 = 3EDFF31B85B04D4A
+Inner product checksum mr4 = 3EED428246BF621C
+Inner product checksum mr5 = 0
+Inner product checksum mr6 = 0
diff --git a/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_gnu_fast-debug-32bit.txt b/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_gnu_fast-debug-32bit.txt
new file mode 100644
index 000000000..c2ac32349
--- /dev/null
+++ b/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_gnu_fast-debug-32bit.txt
@@ -0,0 +1,9 @@
+Inner product checksum rho = 3D4ACBD4
+Inner product checksum theta = 4B0FFCD7
+Inner product checksum u = 6B526688
+Inner product checksum mr1 = 39DC44FD
+Inner product checksum mr2 = 37599DDD
+Inner product checksum mr3 = 36FF9C03
+Inner product checksum mr4 = 376A223A
+Inner product checksum mr5 = 0
+Inner product checksum mr6 = 0
diff --git a/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_gnu_full-debug-32bit.txt b/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_gnu_full-debug-32bit.txt
new file mode 100644
index 000000000..c2ac32349
--- /dev/null
+++ b/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_gnu_full-debug-32bit.txt
@@ -0,0 +1,9 @@
+Inner product checksum rho = 3D4ACBD4
+Inner product checksum theta = 4B0FFCD7
+Inner product checksum u = 6B526688
+Inner product checksum mr1 = 39DC44FD
+Inner product checksum mr2 = 37599DDD
+Inner product checksum mr3 = 36FF9C03
+Inner product checksum mr4 = 376A223A
+Inner product checksum mr5 = 0
+Inner product checksum mr6 = 0
diff --git a/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_gnu_full-debug-64bit.txt b/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_gnu_full-debug-64bit.txt
new file mode 100644
index 000000000..8839d63b9
--- /dev/null
+++ b/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_gnu_full-debug-64bit.txt
@@ -0,0 +1,9 @@
+Inner product checksum rho = 3FA958F09D97D52D
+Inner product checksum theta = 4161FFBE7B6B7DE1
+Inner product checksum u = 456A4D0ACAB467CA
+Inner product checksum mr1 = 3F3B888D5EA6A45C
+Inner product checksum mr2 = 3EEB310977D9678E
+Inner product checksum mr3 = 3EDFF31B705B97D8
+Inner product checksum mr4 = 3EED42824B13222B
+Inner product checksum mr5 = 0
+Inner product checksum mr6 = 0
diff --git a/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_gnu_production-32bit.txt b/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_gnu_production-32bit.txt
new file mode 100644
index 000000000..ee7721fa6
--- /dev/null
+++ b/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_gnu_production-32bit.txt
@@ -0,0 +1,9 @@
+Inner product checksum rho = 3D4ACB2D
+Inner product checksum theta = 4B0FFC10
+Inner product checksum u = 6B526556
+Inner product checksum mr1 = 39DC4799
+Inner product checksum mr2 = 375987FC
+Inner product checksum mr3 = 36FF91E4
+Inner product checksum mr4 = 376A23BA
+Inner product checksum mr5 = 0
+Inner product checksum mr6 = 0
diff --git a/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_gnu_production-64bit.txt b/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_gnu_production-64bit.txt
new file mode 100644
index 000000000..57c69ccdd
--- /dev/null
+++ b/rose-stem/site/meto/kgos/linear_model/ex1a/checksum_linear_model_nwp_gal9-C12_MG_ex1a_gnu_production-64bit.txt
@@ -0,0 +1,9 @@
+Inner product checksum rho = 3FA958F2AD005117
+Inner product checksum theta = 4161FFC01F219433
+Inner product checksum u = 456A4D0C6EB9A688
+Inner product checksum mr1 = 3F3B888EDFD9349C
+Inner product checksum mr2 = 3EEB3108D38837C3
+Inner product checksum mr3 = 3EDFF31B73A51CE4
+Inner product checksum mr4 = 3EED42827244488E
+Inner product checksum mr5 = 0
+Inner product checksum mr6 = 0
From c746e8fc0371438bc3bb7dd7429cfc162273dd59 Mon Sep 17 00:00:00 2001
From: Christine Johnson <74597224+cjohnson-pi@users.noreply.github.com>
Date: Tue, 20 Jan 2026 10:28:05 +0000
Subject: [PATCH 6/7] correction for adjoint_tests 32bit
---
.../solver/adjt_mixed_operator_alg_mod.x90 | 10 ++++----
...djt_mixed_schur_preconditioner_alg_mod.x90 | 10 ++++----
.../solver/adjt_mixed_solver_alg_mod.x90 | 10 ++++----
.../solver/adjt_pressure_precon_alg_mod.x90 | 6 ++---
.../adjt_scaled_matrix_vector_alg_mod.x90 | 6 ++---
...adjt_semi_implicit_solver_step_alg_mod.x90 | 24 +++++++++----------
.../driver/adjoint_test_parameters_mod.F90 | 2 +-
7 files changed, 34 insertions(+), 34 deletions(-)
diff --git a/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_operator_alg_mod.x90 b/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_operator_alg_mod.x90
index 1ec40ca09..dac95c19e 100644
--- a/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_operator_alg_mod.x90
+++ b/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_operator_alg_mod.x90
@@ -7,7 +7,7 @@
module adjt_mixed_operator_alg_mod
- use constants_mod, only: i_def, r_def, l_def, r_solver
+ use constants_mod, only: i_def, r_def, l_def, r_solver, EPS
use log_mod, only: log_event, &
log_scratch_space, &
LOG_LEVEL_DEBUG, &
@@ -83,7 +83,7 @@ contains
real(kind=r_def) :: machine_tol, machine_tol_r_solver
real(kind=r_def) :: relative_diff, relative_diff_r_solver
real(kind=r_def), parameter :: overall_tolerance = 1000.0_r_def
- real(kind=r_def), parameter :: eps = 1e-30_r_def
+ !real(kind=r_def), parameter :: eps = 1e-30_r_def
if (subroutine_timers) call timer('adjt_mixed_operator_alg')
@@ -165,9 +165,9 @@ contains
write(log_scratch_space, *) "w inner product = ", w_inner_prod
call log_event( log_scratch_space, LOG_LEVEL_DEBUG )
- p_sf = 1.0_r_def / (p_inner_prod + eps)
- uv_sf = 1.0_r_def / (uv_inner_prod + eps)
- w_sf = 1.0_r_def / (w_inner_prod + eps)
+ p_sf = 1.0_r_def / (p_inner_prod + EPS)
+ uv_sf = 1.0_r_def / (uv_inner_prod + EPS)
+ w_sf = 1.0_r_def / (w_inner_prod + EPS)
inner1 = 0.0_r_def
inner1 = inner1 + p_inner_prod * p_sf
diff --git a/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_schur_preconditioner_alg_mod.x90 b/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_schur_preconditioner_alg_mod.x90
index 7a4560938..17dd75100 100644
--- a/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_schur_preconditioner_alg_mod.x90
+++ b/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_schur_preconditioner_alg_mod.x90
@@ -7,7 +7,7 @@
module adjt_mixed_schur_preconditioner_alg_mod
- use constants_mod, only: i_def, r_def, l_def, r_solver
+ use constants_mod, only: i_def, r_def, l_def, r_solver, EPS
use log_mod, only: log_event, &
log_scratch_space, &
LOG_LEVEL_INFO, &
@@ -125,7 +125,7 @@ contains
real(kind=r_def), parameter :: overall_tolerance = 1000.0_r_def
real(kind=r_def) :: machine_tol, machine_tol_r_solver
real(kind=r_def) :: relative_diff, relative_diff_r_solver
- real(kind=r_def), parameter :: eps = 1e-30_r_def
+ !real(kind=r_def), parameter :: eps = 1e-30_r_def
if (subroutine_timers) call timer('adjt_mixed_schur_preconditioner_alg')
@@ -253,9 +253,9 @@ contains
write(log_scratch_space, *) "w inner product = ", w_inner_prod
call log_event( log_scratch_space, LOG_LEVEL_DEBUG )
- p_sf = 1.0_r_def / (p_inner_prod + eps)
- uv_sf = 1.0_r_def / (uv_inner_prod + eps)
- w_sf = 1.0_r_def / (w_inner_prod + eps)
+ p_sf = 1.0_r_def / (p_inner_prod + EPS)
+ uv_sf = 1.0_r_def / (uv_inner_prod + EPS)
+ w_sf = 1.0_r_def / (w_inner_prod + EPS)
inner1 = 0.0_r_def
inner1 = inner1 + p_inner_prod * p_sf
diff --git a/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_solver_alg_mod.x90 b/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_solver_alg_mod.x90
index 67317630f..eb99dc072 100644
--- a/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_solver_alg_mod.x90
+++ b/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_solver_alg_mod.x90
@@ -7,7 +7,7 @@
module adjt_mixed_solver_alg_mod
- use constants_mod, only: i_def, r_def, l_def, r_solver
+ use constants_mod, only: i_def, r_def, l_def, r_solver, EPS
use log_mod, only: log_event, &
log_scratch_space, &
LOG_LEVEL_INFO, &
@@ -142,7 +142,7 @@ contains
real(kind=r_def), parameter :: overall_tolerance = 1000.0_r_def
real(kind=r_def) :: machine_tol, machine_tol_r_solver
real(kind=r_def) :: relative_diff, relative_diff_r_solver
- real(kind=r_def), parameter :: eps = 1e-30_r_def
+ ! real(kind=r_def), parameter :: eps = 1e-30_r_def
if (subroutine_timers) call timer('adjt_mixed_solver_alg')
@@ -284,9 +284,9 @@ contains
call log_event( log_scratch_space, LOG_LEVEL_DEBUG )
! Scaling factors are scaled up a bit to avoid numerical issues
- p_sf = 1.0E4_r_def / (p_inner_prod + eps)
- uv_sf = 1.0E4_r_def / (uv_inner_prod + eps)
- w_sf = 1.0E4_r_def / (w_inner_prod + eps)
+ p_sf = 1.0E4_r_def / (p_inner_prod + EPS)
+ uv_sf = 1.0E4_r_def / (uv_inner_prod + EPS)
+ w_sf = 1.0E4_r_def / (w_inner_prod + EPS)
inner1 = 0.0_r_def
inner1 = inner1 + p_inner_prod * p_sf
diff --git a/applications/adjoint_tests/source/algorithm/solver/adjt_pressure_precon_alg_mod.x90 b/applications/adjoint_tests/source/algorithm/solver/adjt_pressure_precon_alg_mod.x90
index 225e7610b..f9877b0fe 100644
--- a/applications/adjoint_tests/source/algorithm/solver/adjt_pressure_precon_alg_mod.x90
+++ b/applications/adjoint_tests/source/algorithm/solver/adjt_pressure_precon_alg_mod.x90
@@ -7,7 +7,7 @@
module adjt_pressure_precon_alg_mod
- use constants_mod, only: i_def, r_def, l_def, r_solver
+ use constants_mod, only: i_def, r_def, l_def, r_solver, EPS
use log_mod, only: log_event, &
log_scratch_space, &
LOG_LEVEL_INFO, &
@@ -114,7 +114,7 @@ contains
real(kind=r_def), parameter :: overall_tolerance = 1000.0_r_def
real(kind=r_def) :: machine_tol, machine_tol_r_solver
real(kind=r_def) :: relative_diff, relative_diff_r_solver
- real(kind=r_def), parameter :: eps = 1e-30_r_def
+ !real(kind=r_def), parameter :: eps = 1e-30_r_def
if (subroutine_timers) call timer('adjt_pressure_precon_alg')
@@ -235,7 +235,7 @@ contains
write(log_scratch_space, *) "p inner product = ", p_inner_prod
call log_event( log_scratch_space, LOG_LEVEL_DEBUG )
- p_sf = 1.0_r_def / (p_inner_prod + eps)
+ p_sf = 1.0_r_def / (p_inner_prod + EPS)
inner1 = 0.0_r_def
inner1 = inner1 + p_inner_prod * p_sf
diff --git a/applications/adjoint_tests/source/algorithm/solver/adjt_scaled_matrix_vector_alg_mod.x90 b/applications/adjoint_tests/source/algorithm/solver/adjt_scaled_matrix_vector_alg_mod.x90
index 81c23dd57..535593208 100644
--- a/applications/adjoint_tests/source/algorithm/solver/adjt_scaled_matrix_vector_alg_mod.x90
+++ b/applications/adjoint_tests/source/algorithm/solver/adjt_scaled_matrix_vector_alg_mod.x90
@@ -9,7 +9,7 @@
!> @brief Module containing adjoint test for scaled_matrix_vector_kernel
module adjt_scaled_matrix_vector_alg_mod
- use constants_mod, only: i_def, r_def, l_def, r_solver
+ use constants_mod, only: i_def, r_def, l_def, r_solver, EPS
use field_mod, only: field_type
use finite_element_config_mod, only: element_order_h, element_order_v
use fs_continuity_mod, only: W2, W3, Wtheta
@@ -77,7 +77,7 @@ module adjt_scaled_matrix_vector_alg_mod
real(kind=r_def) :: machine_tolerance
real(kind=r_def) :: relative_diff
real(kind=r_def), parameter :: overall_tolerance = 1500.0_r_def
- real(kind=r_def), parameter :: eps = 1e-30_r_def
+ !real(kind=r_def), parameter :: eps = 1e-30_r_def
! Setup
@@ -128,7 +128,7 @@ module adjt_scaled_matrix_vector_alg_mod
write(log_scratch_space, *) "vector inner product = ", vector_inner_prod
call log_event( log_scratch_space, LOG_LEVEL_DEBUG )
- vector_sf = 1.0_r_def / (vector_inner_prod + eps)
+ vector_sf = 1.0_r_def / (vector_inner_prod + EPS)
inner1 = 0.0_r_def
inner1 = inner1 + vector_inner_prod * vector_sf
diff --git a/applications/adjoint_tests/source/algorithm/solver/adjt_semi_implicit_solver_step_alg_mod.x90 b/applications/adjoint_tests/source/algorithm/solver/adjt_semi_implicit_solver_step_alg_mod.x90
index 6672c772c..6f745a31a 100644
--- a/applications/adjoint_tests/source/algorithm/solver/adjt_semi_implicit_solver_step_alg_mod.x90
+++ b/applications/adjoint_tests/source/algorithm/solver/adjt_semi_implicit_solver_step_alg_mod.x90
@@ -7,7 +7,7 @@
module adjt_semi_implicit_solver_step_alg_mod
- use constants_mod, only: i_def, r_def, l_def, r_solver
+ use constants_mod, only: i_def, r_def, l_def, r_solver, EPS
use log_mod, only: log_event, &
log_scratch_space, &
LOG_LEVEL_INFO, &
@@ -306,7 +306,7 @@ contains
real(kind=r_def), parameter :: overall_tolerance = 1000.0_r_def
real(kind=r_def) :: machine_tol, machine_tol_r_solver
real(kind=r_def) :: relative_diff, relative_diff_r_solver
- real(kind=r_def), parameter :: eps = 1e-30_r_def
+ !real(kind=r_def), parameter :: eps = 1e-30_r_def
integer(kind=i_def) :: i
@@ -362,17 +362,17 @@ contains
end do
! Scaling factors are scaled up a bit to avoid numerical issues
- state_sf(igh_u) = 1.0E4_r_def / (state_inner_prod(igh_u) + eps)
- state_sf(igh_t) = 1.0E4_r_def / (state_inner_prod(igh_t) + eps)
- state_sf(igh_d) = 1.0E4_r_def / (state_inner_prod(igh_d) + eps)
- state_sf(igh_p) = 1.0E4_r_def / (state_inner_prod(igh_p) + eps)
- rhs_sf(igh_u) = 1.0E4_r_def / (rhs_inner_prod(igh_u) + eps)
- rhs_sf(igh_t) = 1.0E4_r_def / (rhs_inner_prod(igh_t) + eps)
- rhs_sf(igh_d) = 1.0E4_r_def / (rhs_inner_prod(igh_d) + eps)
- rhs_sf(igh_p) = 1.0E4_r_def / (rhs_inner_prod(igh_p) + eps)
- moist_dyn_gas_law_sf = 1.0E4_r_def / (moist_dyn_gas_law_inner_prod + eps)
+ state_sf(igh_u) = 1.0E4_r_def / (state_inner_prod(igh_u) + EPS)
+ state_sf(igh_t) = 1.0E4_r_def / (state_inner_prod(igh_t) + EPS)
+ state_sf(igh_d) = 1.0E4_r_def / (state_inner_prod(igh_d) + EPS)
+ state_sf(igh_p) = 1.0E4_r_def / (state_inner_prod(igh_p) + EPS)
+ rhs_sf(igh_u) = 1.0E4_r_def / (rhs_inner_prod(igh_u) + EPS)
+ rhs_sf(igh_t) = 1.0E4_r_def / (rhs_inner_prod(igh_t) + EPS)
+ rhs_sf(igh_d) = 1.0E4_r_def / (rhs_inner_prod(igh_d) + EPS)
+ rhs_sf(igh_p) = 1.0E4_r_def / (rhs_inner_prod(igh_p) + EPS)
+ moist_dyn_gas_law_sf = 1.0E4_r_def / (moist_dyn_gas_law_inner_prod + EPS)
do i = 1, nummr
- mr_sf(i) = 1.0E4_r_def / (mr_inner_prod(i) + eps)
+ mr_sf(i) = 1.0E4_r_def / (mr_inner_prod(i) + EPS)
end do
inner1 = 0.0_r_def
diff --git a/applications/adjoint_tests/source/driver/adjoint_test_parameters_mod.F90 b/applications/adjoint_tests/source/driver/adjoint_test_parameters_mod.F90
index f4f06ea0c..9db0ddb99 100644
--- a/applications/adjoint_tests/source/driver/adjoint_test_parameters_mod.F90
+++ b/applications/adjoint_tests/source/driver/adjoint_test_parameters_mod.F90
@@ -28,7 +28,7 @@ module adjoint_test_parameters_mod
! if the ls is not realistic. ls can still be
! randomly assigned, but in a sensible range
! to prevent these issues.
- real(r_def), dimension(2), parameter :: ls_u_range = (/ 0.1_r_def, 10.0_r_def /)
+ real(r_def), dimension(2), parameter :: ls_u_range = (/ 1.e2_r_def, 1.e3_r_def /)
real(r_def), dimension(2), parameter :: ls_theta_range = (/ 280.0_r_def, 340.0_r_def /)
real(r_def), dimension(2), parameter :: ls_rho_range = (/ 0.1_r_def, 1.0_r_def /)
real(r_def), dimension(2), parameter :: ls_exner_range = (/ 0.1_r_def, 1.0_r_def /)
From c9d26e0d818966fd877b8f89a3a5e790f6ab4666 Mon Sep 17 00:00:00 2001
From: Christine Johnson <74597224+cjohnson-pi@users.noreply.github.com>
Date: Tue, 20 Jan 2026 10:32:24 +0000
Subject: [PATCH 7/7] tidy
---
.../source/algorithm/solver/adjt_mixed_operator_alg_mod.x90 | 1 -
.../algorithm/solver/adjt_mixed_schur_preconditioner_alg_mod.x90 | 1 -
.../source/algorithm/solver/adjt_mixed_solver_alg_mod.x90 | 1 -
.../source/algorithm/solver/adjt_pressure_precon_alg_mod.x90 | 1 -
.../algorithm/solver/adjt_scaled_matrix_vector_alg_mod.x90 | 1 -
.../algorithm/solver/adjt_semi_implicit_solver_step_alg_mod.x90 | 1 -
6 files changed, 6 deletions(-)
diff --git a/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_operator_alg_mod.x90 b/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_operator_alg_mod.x90
index dac95c19e..611b8f322 100644
--- a/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_operator_alg_mod.x90
+++ b/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_operator_alg_mod.x90
@@ -83,7 +83,6 @@ contains
real(kind=r_def) :: machine_tol, machine_tol_r_solver
real(kind=r_def) :: relative_diff, relative_diff_r_solver
real(kind=r_def), parameter :: overall_tolerance = 1000.0_r_def
- !real(kind=r_def), parameter :: eps = 1e-30_r_def
if (subroutine_timers) call timer('adjt_mixed_operator_alg')
diff --git a/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_schur_preconditioner_alg_mod.x90 b/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_schur_preconditioner_alg_mod.x90
index 17dd75100..76d382211 100644
--- a/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_schur_preconditioner_alg_mod.x90
+++ b/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_schur_preconditioner_alg_mod.x90
@@ -125,7 +125,6 @@ contains
real(kind=r_def), parameter :: overall_tolerance = 1000.0_r_def
real(kind=r_def) :: machine_tol, machine_tol_r_solver
real(kind=r_def) :: relative_diff, relative_diff_r_solver
- !real(kind=r_def), parameter :: eps = 1e-30_r_def
if (subroutine_timers) call timer('adjt_mixed_schur_preconditioner_alg')
diff --git a/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_solver_alg_mod.x90 b/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_solver_alg_mod.x90
index eb99dc072..7efb9b6c2 100644
--- a/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_solver_alg_mod.x90
+++ b/applications/adjoint_tests/source/algorithm/solver/adjt_mixed_solver_alg_mod.x90
@@ -142,7 +142,6 @@ contains
real(kind=r_def), parameter :: overall_tolerance = 1000.0_r_def
real(kind=r_def) :: machine_tol, machine_tol_r_solver
real(kind=r_def) :: relative_diff, relative_diff_r_solver
- ! real(kind=r_def), parameter :: eps = 1e-30_r_def
if (subroutine_timers) call timer('adjt_mixed_solver_alg')
diff --git a/applications/adjoint_tests/source/algorithm/solver/adjt_pressure_precon_alg_mod.x90 b/applications/adjoint_tests/source/algorithm/solver/adjt_pressure_precon_alg_mod.x90
index f9877b0fe..ba2ac5c4e 100644
--- a/applications/adjoint_tests/source/algorithm/solver/adjt_pressure_precon_alg_mod.x90
+++ b/applications/adjoint_tests/source/algorithm/solver/adjt_pressure_precon_alg_mod.x90
@@ -114,7 +114,6 @@ contains
real(kind=r_def), parameter :: overall_tolerance = 1000.0_r_def
real(kind=r_def) :: machine_tol, machine_tol_r_solver
real(kind=r_def) :: relative_diff, relative_diff_r_solver
- !real(kind=r_def), parameter :: eps = 1e-30_r_def
if (subroutine_timers) call timer('adjt_pressure_precon_alg')
diff --git a/applications/adjoint_tests/source/algorithm/solver/adjt_scaled_matrix_vector_alg_mod.x90 b/applications/adjoint_tests/source/algorithm/solver/adjt_scaled_matrix_vector_alg_mod.x90
index 535593208..33a2a9f96 100644
--- a/applications/adjoint_tests/source/algorithm/solver/adjt_scaled_matrix_vector_alg_mod.x90
+++ b/applications/adjoint_tests/source/algorithm/solver/adjt_scaled_matrix_vector_alg_mod.x90
@@ -77,7 +77,6 @@ module adjt_scaled_matrix_vector_alg_mod
real(kind=r_def) :: machine_tolerance
real(kind=r_def) :: relative_diff
real(kind=r_def), parameter :: overall_tolerance = 1500.0_r_def
- !real(kind=r_def), parameter :: eps = 1e-30_r_def
! Setup
diff --git a/applications/adjoint_tests/source/algorithm/solver/adjt_semi_implicit_solver_step_alg_mod.x90 b/applications/adjoint_tests/source/algorithm/solver/adjt_semi_implicit_solver_step_alg_mod.x90
index 6f745a31a..ef6fb8710 100644
--- a/applications/adjoint_tests/source/algorithm/solver/adjt_semi_implicit_solver_step_alg_mod.x90
+++ b/applications/adjoint_tests/source/algorithm/solver/adjt_semi_implicit_solver_step_alg_mod.x90
@@ -306,7 +306,6 @@ contains
real(kind=r_def), parameter :: overall_tolerance = 1000.0_r_def
real(kind=r_def) :: machine_tol, machine_tol_r_solver
real(kind=r_def) :: relative_diff, relative_diff_r_solver
- !real(kind=r_def), parameter :: eps = 1e-30_r_def
integer(kind=i_def) :: i