Molconn-Z 4.00 Manual: Toolkit Programmers Guide

eduSoft LC Toolkit Programmers' Guide

Monomer Objects

Header File

monomer.h

Monomer Creation

eslc_monomer_find_clone
Create a "clone" of the old monomer as it is now a part of the new biomolecule, and return its handle. The clone inherits all of the attributes of its "parent", including its atom list.

form

ehandle eslc_monomer_find_clone ( ehandle new_biomolecule_handle, ehandle old_monomer_handle )
input
new_biomolecule_handle
old_monomer_handle
output
none
return
handle for new monomer

Monomer Attributes

eslc_monomer_set_name
Set the name of a monomer.

form

int eslc_monomer_set_name ( ehandle monomer_handle, NameStr monomer_name )
input
monomer_handle
monomer_name
output
none
return
TRUE:success
FALSE:failure

eslc_monomer_get_name
Get the name of a monomer.

form

int eslc_monomer_get_name ( ehandle monomer_handle, NameStr *monomer_name )
input
monomer_handle
output
monomer_name
return
TRUE:success
FALSE:failure

eslc_monomer_set_chainname
Set the name of the chain including the monomer.

form

int eslc_monomer_set_chainname ( ehandle monomer_handle, ShortStr chain_name )
input
monomer_handle
chain_name
output
none
return
TRUE:success
FALSE:failure

eslc_monomer_get_chainname
Get the name of the chain including the monomer.

form

int eslc_monomer_get_chainname ( ehandle monomer_handle, ShortStr *chain_name )
input
monomer_handle
output
chain_name
return
TRUE:success
FALSE:failure

eslc_monomer_get_biomolecule
Get the handle for the biomolecule handle parent for the monomer.

form

int eslc_monomer_get_biomolecule ( ehandle monomer_handle, ehandle *biomolecule_handle )
input
monomer_handle
output
biomolecule_handle
return
TRUE:success
FALSE:failure

eslc_monomer_set_class
Set the class identifier for the monomer (class is the type of monomer, i.e., amino acid, nucleotide base, etc.). See monoprops.html or monomer.h for a description of class identifiers.

form

int eslc_monomer_set_class ( ehandle monomer_handle, int monomerclass )
input
monomer_handle
monomerclass
output
none
return
TRUE:success
FALSE:failure

eslc_monomer_get_class
Get the class identifier for the monomer (class is the type of monomer, i.e., amino acid, nucleotide base, etc.). See monoprops.html or monomer.h for a description of class identifiers.

form

int eslc_monomer_get_class ( ehandle monomer_handle, int *monomerclass )
input
monomer_handle
output
monomerclass
return
TRUE:success
FALSE:failure

eslc_monomer_set_motif
Set the motif identifier for the monomer (motif is the structural description, i.e., alpha helix, beta sheet, double helix, etc.). See monoprops.html or monomer.h for a description of motif identifiers.

form

int eslc_monomer_set_motif ( ehandle monomer_handle, int motif )
input
monomer_handle
motif
output
none
return
TRUE:success
FALSE:failure

eslc_monomer_get_motif
Get the motif identifier for the monomer (motif is the structural description, i.e., alpha helix, beta sheet, double helix, etc.). See monoprops.html or monomer.h for a description of motif identifiers.

form

int eslc_monomer_get_motif ( ehandle monomer_handle, int *motif )
input
monomer_handle
output
motif
return
TRUE:success
FALSE:failure

eslc_monomer_set_typeid
Set the type identifier for the monomer, i.e., its structure. See monomertypes.html or monomer.h for a description of typeids for monomers in the dictionary.

form

int eslc_monomer_set_typeid ( ehandle monomer_handle, int type_id )
input
monomer_handle
type_id
output
none
return
TRUE:success
FALSE:failure

eslc_monomer_get_typeid
Get the type identifier for the monomer, i.e., its structure. See monomertypes.html or monomer.h for a description of typeids for monomers in the dictionary.

form

int eslc_monomer_get_typeid ( ehandle monomer_handle, int *type_id )
input
monomer_handle
output
type_id
return
TRUE:success
FALSE:failure

eslc_monomer_set_acidbase
Set the acid-base flag for the monomer. The status of this flag determines the values for some derived properties, e.g., in HINT. This flag can also be set automatically, based on the presence (or absence) of certain key polar hydrogens, using the eslc_monomer_calculate_acidbase command. See monoprops.html or monomer.h for a description of acid-base flag values.

form

int eslc_monomer_set_acidbase ( ehandle monomer_handle, int acidbase )
input
monomer_handle
acidbase
output
none
return
TRUE:success
FALSE:failure

eslc_monomer_get_acidbase
Get the acid-base flag for the monomer. The status of this flag determines the values for some derived properties, e.g., in HINT. See monoprops.html or monomer.h for a description of acid-base flag values.

form

int eslc_monomer_get_acidbase ( ehandle monomer_handle, int *acidbase )
input
monomer_handle
output
acidbase
return
TRUE:success
FALSE:failure

eslc_monomer_set_terminationtype
Set the termination type flag for the monomer. Termination types include descriptors like, N-terminus, C-terminus, O3', O5', etc. This flag can also be set automatically, based on the presence (or absence) of certain key hydrogens and connections, using the eslc_monomer_calculate_terminationtype command. See monoprops.html or monomer.h for a description of termination type flag values.

form

int eslc_monomer_set_terminationtype ( ehandle monomer_handle, int terminationtype )
input
monomer_handle
terminationtype
output
none
return
TRUE:success
FALSE:failure

eslc_monomer_get_terminationtype
Get the termination type flag for the monomer. Termination types include descriptors like, N-terminus, C-terminus, O3', O5', etc. See monoprops.html or monomer.h for a description of termination type flag values.

form

int eslc_monomer_get_terminationtype ( ehandle monomer_handle, int *terminationtype )
input
monomer_handle
output
terminationtype
TRUE:success
FALSE:failure

eslc_monomer_set_hydrogenstatus
Set the hydrogenstatus flag for the monomer. Hydrogen status indicates what hydrogens are present in the monomer model, i.e., all hydrogens, "essential" (polar) hydrogens or none. This flag is normally set when a PDB file is read, or can be set automatically, based on the presence (or absence) of specific hydrogens and connections, using the eslc_monomer_calculate_hydrogenstatus command. See monoprops.html or monomer.h for a description of hydrogenstatus flag values.

form

int eslc_monomer_set_hydrogenstatus ( ehandle monomer_handle, int hydrogenstatus )
input
monomer_handle
hydrogenstatus
output
none
return
TRUE:success
FALSE:failure

eslc_monomer_get_hydrogenstatus
Get the hydrogenstatus flag for the monomer. Hydrogen status indicates what hydrogens are present in the monomer model, i.e., all hydrogens, "essential" (polar) hydrogens or none. This flag is normally set when a PDB file is read. See monoprops.html or monomer.h for a description of hydrogenstatus flag values.

form

int eslc_monomer_get_hydrogenstatus ( ehandle monomer_handle, int *hydrogenstatus )
input
monomer_handle
output
hydrogenstatus
return
TRUE:success
FALSE:failure

eslc_monomer_set_atomcount
Set the count of atoms in the monomer.

form

int eslc_monomer_set_atomcount ( ehandle monomer_handle, int atomcount )
input
monomer_handle
atomcount
output
none
return
TRUE:success
FALSE:failure

eslc_monomer_get_atomcount
Get the count of atoms in the monomer.

form

int eslc_monomer_get_atomcount ( ehandle monomer_handle, int *atomcount )
input
monomer_handle
output
atomcount
return
TRUE:success
FALSE:failure

eslc_monomer_set_all_atoms
Set, from the list, all of the atoms in the monomer. This list documents the atom numbers from the atom structure of the biomolecule.

form

int eslc_monomer_set_all_atoms ( ehandle monomer_handle, int atomcount, int *list )
input
monomer_handle
atomcount
list
output
none
return
TRUE:success
FALSE:failure

eslc_monomer_get_all_atoms
Get a list of all of the atoms in the monomer. This list documents the atom numbers from the atom structure of the biomolecule.

form

int eslc_monomer_get_all_atoms ( ehandle monomer_handle, int *list )
input
monomer_handle
output
list
return
TRUE:success
FALSE:failure

eslc_monomer_get_molweight
Get the molecular weight of the monomer.

form

int eslc_monomer_get_molweight ( ehandle monomer_handle, float *molweight )
input
monomer_handle
output
molweight
return
TRUE:success
FALSE:failure

Monomer Methods

eslc_monomer_typeid_find_typename
Find (and return) the monomer type name given the monomer type_id and forcefield. The type name is a short string (usually) depicting the expected abbreviated names for the monomer type. See monomertypes.html or monomer.h for a description of typeids and names for monomers in the dictionary. See forcefields.html for a list of force field definitions supported by the toolkit.

form

char *eslc_monomer_typeid_find_typename ( int type_id, int forcefield )
input
type_id
forcefield
output
none
return
type name as string

eslc_monomer_typename_find_typeid
Find (and return) the monomer type_id given the monomer type name and forcefield. The type name is a short string (usually) depicting the expected abbreviated names for the monomer type. See monomertypes.html or monomer.h for a description of typeids and names for monomers in the dictionary. See forcefields.html for a list of force field definitions supported by the toolkit.

form

int eslc_monomer_typename_find_typeid ( char *monomertypename, int forcefield )
input
monomertypename
forcefield
output
none
return
type_id

eslc_monomer_find_water
Find (and return) the atom number of the water oxygen if this monomer is a water. If it is not a water return zero.

form

int eslc_monomer_find_water ( ehandle monomer_handle )
input
monomer_handle
output
none
return
success: Atom number of Water O
failure: zero

eslc_monomer_find_numerical_in_monomername
Find (extract) the numerical portion of a monomer name and return it.

form

char *eslc_monomer_find_numerical_in_monomername ( char *monomername )
input
monomername
output
none
return
numerical as string

eslc_monomer_typeid_find_description
Find (and return) the monomer type description given the monomer type_id. The type description is a string that is generally the name of the monomer type, i.e., not abbreviated. See monomertypes.html or monomer.h for a description of typeids and names for monomers in the dictionary.

form

char *eslc_monomer_typeid_find_description ( int type_id )
input
type_id
output
none
return
type description as string

eslc_monomer_calculate_acidbase
Calculate the ionization state of the monomer, i.e., determine whether the monomer is in an acidic, basic or neutral form. The presence or absence of key polar hydrogen atoms is used to make this assessment. The result is retrieved with eslc_monomer_get_acidbase.

form

int eslc_monomer_calculate_acidbase ( ehandle monomer_handle )
input
monomer_handle
output
none
return
TRUE:success
FALSE:failure

eslc_monomer_calculate_terminationtype
Calculate the termination type, i.e., whether the monomer is at a chain terminus, and what its type is. The presence or absence of key hydrogen atoms and other connections is used to make this assessment. The result is retrieved with eslc_monomer_get_terminationtype.

form

int eslc_monomer_calculate_terminationtype ( ehandle monomer_handle )
input
monomer_handle
output
none
return
TRUE:success
FALSE:failure

eslc_monomer_typeid_calculate_class
Determine, using the type id for a monomer, its class, i.e., protein residue, nucleotide base, etc. See monomerprop.html for definitions of monomer classes. form
int eslc_monomer_typeid_calculate_class ( ehandle monomer_handle )
input
monomer_handle
output
none
return
TRUE:success
FALSE:failure

eslc_monomer_calculate_hydrogenstatus
Calculate the hydrogen status, i.e., assess whether the monomer has all explicit hydrogens, (only) essential explicit hydrogens, or no explicit hydrogens. (Any other condition will be marked invalid.) The result is retrieved with eslc_monomer_get_hydrogenstatus.

form

int eslc_monomer_calculate_hydrogenstatus ( ehandle monomer_handle )
input
monomer_handle
output
none
return
TRUE:success
FALSE:failure

eslc_calculate_monomer_formula
Calculate the molecular formula of a monomer.

form

int eslc_calculate_monomer_formula ( ehandle monomer_handle )
input
monomer_handle
output
none
return
TRUE:success
FALSE:failure

eslc_monomer_calculate_molweight
Calculate the molecular weight of a monomer.

form

int eslc_monomer_calculate_molweight ( ehandle monomer_handle )
input
monomer_handle
output
none
return
TRUE:success
FALSE:failure

eslc_get_monomer_molweight
Get the molcular weight of a monomer.

form

int eslc_get_monomer_molweight ( ehandle monomer_handle, float *molecularweight )
input
monomer_handle
output
molecularweight
return
TRUE:success
FALSE:failure

eslc_find_monomer_formula_string
Find (and return as a string) the molecular formula of a monomer.

form

char *eslc_find_monomer_formula_string ( ehandle monomer_handle )
input
monomer_handle
output
none
return
a string in the format H(x)C(y)O(z)

eslc_is_monomer_valid
Verify whether the monomer specified by the monomer_handle exists and is valid.

form

int eslc_is_monomer_valid ( ehandle monomer_handle )
input
monomer_handle
output
none
return
TRUE:monomer is valid
FALSE:monomer is not valid

eslc_monomer_find_hydrogencount
Find (and return) the count of hydrogens (implicit and explicit) in the monomer.

form

int eslc_monomer_find_hydrogencount ( ehandle monomer_handle )
input
monomer_handle
output
none
return
count of hydrogens

eslc_monomer_find_protonation
Calculate for a particular monomer its protonation range. This includes the miniumum (i.e., basic), neutral and maximum (i.e., acidic) states for the residue. Laso returned is the current protonation state for the residue. This routine is part of the Computational Titration algorithm and is used to set the limits on the titration.

form

int eslc_monomer_find_protonation ( ehandle monomer_handle, int *minimumprotons, int *neutralprotons, int *maximumprotons )
input
monomer_handle
minimum protons
neutral protons
maximum protons
return
current protons

eslc_monomer_find_terminalprotonation
Calculate for a particular terminal (C or N) its protonation range. This includes the miniumum (i.e., basic), neutral and maximum (i.e., acidic) states for the residue. Laso returned is the current protonation state for the residue. This routine is part of the Computational Titration algorithm and is used to set the limits on the titration.

form

int eslc_monomer_find_terminalprotonation ( ehandle monomer_handle, int *minimumprotons, int *neutralprotons, int *maximumprotons )
input
monomer_handle
minimum protons
neutral protons
maximum protons
return
current protons

eslc_monomer_reassign_biomolecule
Reassign the primary "ownership" of a monomer to a new biomolecule. While more than one biomolecule can "claim" ownership of a monomer, each monomer can point to only one biomolecule as its parent. Note that the new biomolecule must already claim the monomer before this command can be invoked.

form

int eslc_monomer_reassign_biomolecule ( ehandle monomer_handle, ehandle new_biomolecule_handle )
input
monomer_handle
new_biomolecule_handle
output
none
return
TRUE:success
FALSE:failure

eslc_monomer_find_atomcount_by_atomicnumber
Find (and return) the count of atoms in the monomer for the input atomic number (i.e., element).

form

int eslc_monomer_find_atomcount_by_atomicnumber ( ehandle monomer_handle, int atomicnumber )
input
monomer_handle
atomicnumber
output
none
return
atom count

eslc_monomer_find_heavyatomcount
Find (and return) the number of heavy, i.e., non-hydrogen, atoms in the monomer.

form

int eslc_monomer_find_heavyatomcount ( ehandle monomer_handle )
input
monomer_handle
output
none
return
count of heavy atoms

eslc_monomer_find_essentialatomcount
Find (and return) the number of essential atoms in the monomer. Hydrogen atoms bonded to carbon or silicon are not counted.

form

int eslc_monomer_find_essentialatomcount ( ehandle monomer_handle )
input
monomer_handle
output
none
return
count of heavy atoms

eslc_monomer_update_if_water
Determine if the target monomer is, in actuality, a water molecule and update all of the appropriate properties, e.g., class motif, acidbase, etc. to reflect its status as a water molecule and potentially part of a solvent array.

form

int eslc_monomer_update_if_water ( ehandle monomer_handle )
input
monomer_handle
output
none
return
TRUE: monomer is water and operation successful
FALSE: monomer not water or operation unsuccessful

eslc_monomer_aa_his_check_typeid Refine monomer type id assignment if monomer is a histidine. Histidine can be either in delta or epsilon form and/or may be protonated. Separate type id codes exist for these forms.

form

int eslc_monomer_aa_his_check_typeid ( ehandle monomer_handle )
input
monomer_handle
output
none
return
TRUE: operation successful
FALSE: operation unsuccessful

eslc_monomer_calculate_protonmodelmultiplicity
Used in Computational Titration. Determine multiplicity of protonation states for the residue. Two values are returned: the low protonation state multiplicity and the high protonation state multiplicity. These represent the number of unique ways the residue can be protonated under these two conditions. For example, the low protonation state multiplicity for Asp is 1 (only one way it can be deprotonated) but the high protonation state multiplicity is 2 (two independent oxygens that can be protonated).

form

int eslc_monomer_calculate_protonmodelmultiplicity ( ehandle monomer_handle, int *lowprotonmultiplicity, int *highprotonmultiplicity )
input
monomer_handle
output
lowprotonmultiplicity
highprotonmultiplicity
return
TRUE: successful
FALSE: unsuccessful