We will not discuss the input parsing, as it is technical and unrelated to how to use ddX. It is sufficient to know that, when a Tinker input file is read, all the relevant ddX parameters are read and stored in the ddx_interface module. The initialization of ddX is not done at this step, as many important tasks of Tinker -such as molecular dynamics -require updating the geometry, and as the geometry changes the ddX initialization needs to be done from scratch. So it is more convenient to move the ddX initialization to where the energy and forces are computed.