public subroutine set_coordinate_system_from_config()
Set the coordinate system from the GEOM compile-time define.
Called once before usr_init, so a case does not have to call
set_coordinate_system itself. Cases that do are still fine: the call is
idempotent, and the consistency check in set_coordinate_system catches a
name that disagrees with what the code was built for.
Doing this centrally matters because set_coordinate_system is the only
writer of coordinate, ndir, r_, phi_ and z_. Leaving coordinate at its
-1 default is silently catastrophic rather than loud: read_par_files
skips the conversion of angular domain bounds, and the select case in
get_surface_area and in the cell-volume fill match nothing, so surfaceC
and dvolume are simply never written.
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.