@RonShepard, RE repetition and possible typo of namelist-group names, @Beliavsky already suggested a different approach above, which looks nice (to me):
@sblionel, @RonShepard I wonder what both of you think about the redundancy of declaring a lot of variable names both in the declaration and namelist statements (as suggested by @Machalot above), because I also have similar problems (for which I use derived types as a workaround). Also, because Fortran lacks introspection, even the use of TOML or other modern formats requires further redundant works for setting variable values from input data (e.g., as discussed in the following thread). Because of the lack of introspection in Fortran, I use namelist everyday (as opposed to the “rarely used NAMELIST feature doesn’t help” assumption by @sblionel).