A transit calculation option has been added in the new optimization branch. This is capable of performing both linear transits, and non-linear transits, and is the default when the LINEARTRANSIT or TRANSIT subkey is included in the GEOMETRY block key.
The new transit code works differently to the old: the transit is represented as a sequence of constrained optimizations. The CONSTRAINTS block key should be used to delineate the constraints applied at each stage of the transit.
To perform a linear transit, start and end values are supplied.
Constraints angle 2 1 3 start=100.0 end=120.0 End Geometry Transit 4 Optim Deloc End
In the example above, 4 stages are required; ADF will interpolate the start and end values supplied for the angle between atoms 2, 1, and 3. Note that TRANSIT can now be used in place of LINEARTRANSIT, due to the more general nature of the new transit calculations.
Non-linear transits are possible, and can even be combined with linear transits in other coordinates. To perform a non-linear transit in a particular coordinate, explicit values must be given.
Constraints dist 1 2 0.8 0.9 1.1 1.15 angle 2 1 3 start=100.0 end=120.0 End Geometry Transit 4 Optim Deloc End
In the example above, 4 values are given for the distance between atoms 1 and 2. This distance constraint will be applied simultaneously with the linear transit constraints for the angle, with other degrees of freedom optimized at each stage of the transit.
It is worth noting that fixed constraints can also be used in a transit.
Constraints dist 1 2 0.8 0.9 1.1 1.15 angle 2 1 3 100.0 End Geometry Transit 4 Optim Deloc End
In this example, the angle between atoms 2, 1, and 3 will be fixed at 100.0 degrees at all stages of the transit.
Finally, it should be pointed out that fully converged constraints are used by default in the transit calculations. They do not have to be fully met in the input, but if the input geometry is far from meeting the constraints, a large, erratic first geometry step may result.
You can avoid fully enforcing constraints, by addind a CONSTRAINTS subkey to the geometry block key:
Geometry .. CONSTRAINTS partialconverge End
In this case the constraints are not required to be fully met at each intermediate geometry, but are fully met at the converged geometries,




