The common variable ITRACE controls the production of additional output during various THINK operations. This output is often voluminous and is not required during normal usage. However, it can be very helpful when trying to understand exactly why THINK is behaving in a certain manner (eg rejecting molecules during a search).
ITRACE is a bit mask, which allows the controls to be enabled individually. By default it is set to zero (all additional output disabled). To enable output in more than one area, the corresponding values from the table below should be added together, and ITRACE set to the resulting value. For instance, to enable search and profile output, ITRACE should be set to 1025 (1+1024).
| Bit | Value | Purpose | |||||||||||
| 0 | 1 | Search explanations (reasons why molecules are rejected during a search):
|
|||||||||||
| 1 | 2 | Geometry matching (can be very voluminous) | |||||||||||
| 2 | 4 | Graphical monitoring of search refinement | |||||||||||
| 3 | 8 | List atom matching possibilities | |||||||||||
| 4 | 16 | Debugging substructure matching and backtracking during searches (used with bit 10; not recommended for users) | |||||||||||
| 5 | 32 | Reserved for internal use | |||||||||||
| 6 | 64 | Debugging memory pool usage (not recommended for users) | |||||||||||
| 7 | 128 | Debugging trace for error status | |||||||||||
| 8 | 256 | Reserved for internal use | |||||||||||
| 9 | 512 | Reserved for internal use | |||||||||||
| 10 | 1024 | Profile output showing the time spent in various steps (eg during searches) - this also shows which steps were actually executed |
All other bits are reserved for internal use.