Introduction Identification
Every object in GAMGI is identified by a name and a number.


Names are used to allow users to identify the objects. Although GAMGI always checks them for correctness and consistency, names are not used internally, for identification purposes or others. Names are totally controlled by users: if they wish, GAMGI can generate default names for new objects, but only users can change names after that.

Names can have a maximum of 20 characters and each character can be a letter (a-z and A-Z), a number (0-9) or any of the following characters: ( ) [ ] { } < > _ . + -. Some of these characters are particularly usefull to name coordination compounds and charged species, for example,

Although names can start with any of these characters, it might be good practise to start names with a letter, for compatibility with other programs.


Numbers are used to allow GAMGI to identify the objects. Objects of different classes may have the same number, but objects of the same class must have different numbers.

Numbers are totally controlled by GAMGI: they are generated, modified and removed by GAMGI, without any user intervention. Although numbers can be quite useful for users, its meaning is often unclear, due to the recycling mechanisms that GAMGI applies: i) numbers are recycled when objects are removed and may reappear later attached to new objects; ii) when recovering with undo/save techniques, new numbers will be attached to the recovered objects.

Any positive integer is a valid identification number. When recycled numbers are available, GAMGI reapplies them in the order they are listed. Otherwise, GAMGI applys new numbers in increasing order.