Create a spin system representing a pseudo-atom.
spin_name: The name of the pseudo-atom spin.
spin_num: The spin number.
res_id: The molecule and residue ID string identifying the position to add the pseudo-spin to.
members: A list of the atoms (as spin ID strings) that the pseudo-atom is composed of.
averaging: The positional averaging technique.
This will create a spin data container representing a number of pre-existing spin containers as a pseudo-atom. The optional spin number must not already exist.
The identification string is composed of three components: the molecule ID token beginning with the `#' character, the residue ID token beginning with the `:' character, and the atom or spin system ID token beginning with the `@' character. Each token can be composed of multiple elements - one per spin - separated by the `,' character and each individual element can either be a number (which must be an integer, in string format), a name, or a range of numbers separated by the `-' character. Negative numbers are supported. The full ID string specification is `#<mol_name> :<res_id>[, <res_id>[, <res_id>, ...]] @<atom_id>[, <atom_id>[, <atom_id>, ...]]', where the token elements are `<mol_name>', the name of the molecule, `<res_id>', the residue identifier which can be a number, name, or range of numbers, `<atom_id>', the atom or spin system identifier which can be a number, name, or range of numbers.
If one of the tokens is left out then all elements will be assumed to match. For example if the string does not contain the `#' character then all molecules will match the string. If only the molecule ID component is specified, then all spins of the molecule will match.
Regular expression can be used to select spins. For example the string `@H*' will select the protons `H', `H2', `H98'.
The following will create the pseudo-atom named `Q9' consisting of the protons `@H16', `@H17', `@H18':
[numbers=none] relax> spin.create_pseudo('Q9', members=['@H16', '@H17', '@H18'])