#include <stdlib.h>#include <string.h>#include "mode.h"#include "ichitaut.h"#include "ichicomn.h"#include "ichitime.h"#include "ichicant.h"#include "util.h"#include "bcf_s.h"
Include dependency graph for ichitaut.c:Data Structures | |
| struct | tagChargeType |
Typedefs | |
| typedef struct tagChargeType | CHARGE_TYPE |
Functions | |
| int | SetTautomericBonds (inp_ATOM *at, int nNumBondPos, T_BONDPOS *BondPos) |
| int | CompRankTautomer (const void *a1, const void *a2, void *) |
| int | RegisterEndPoints (CANON_GLOBALS *pCG, T_GROUP_INFO *t_group_info, T_ENDPOINT *EndPoint, int nNumEndPoints, inp_ATOM *at, int num_atoms, C_GROUP_INFO *cgi, struct BalancedNetworkStructure *pBNS) |
| int | cmpTGroupNumber (const void *a1, const void *a2) |
| int | comp_candidates (const void *a1, const void *a2) |
| int | MoveEndpoint (inp_ATOM *at, S_CANDIDATE *s_candidate, AT_NUMB endpoint, AT_NUMB *nTGroupNewNumbers, AT_NUMB *nTGroupPosition, int nNewTGroupOrd, T_GROUP_INFO *t_group_info) |
| int | FindAccessibleEndPoints (CANON_GLOBALS *pCG, T_ENDPOINT *EndPoint, int *nNumEndPoints, T_BONDPOS *BondPos, int *nNumBondPos, struct BalancedNetworkStructure *pBNS, struct BalancedNetworkData *pBD, inp_ATOM *at, int num_atoms, C_GROUP_INFO *cgi, int taut_mode) |
| int | GetChargeType (inp_ATOM *atom, int iat, S_CHAR *cChargeSubtype) |
| int | GetNeutralRepsIfNeeded (AT_NUMB *pri, AT_NUMB *prj, inp_ATOM *at, int num_atoms, T_ENDPOINT *EndPoint, int nNumEndPoints, C_GROUP_INFO *cgi) |
| int | bCanBeACPoint (inp_ATOM *at, S_CHAR cCharge, S_CHAR cChangeValence, S_CHAR neutral_bonds_valence, S_CHAR neutral_valence, S_CHAR nEndpointValence, S_CHAR *cChargeSubtype) |
| int | CmpCCandidates (const void *a1, const void *a2) |
| int | RegisterCPoints (C_GROUP *c_group, int *pnum_c, int max_num_c, T_GROUP_INFO *t_group_info, int point1, int point2, int ctype, inp_ATOM *at, int num_atoms) |
| int | GetSaltChargeType (inp_ATOM *at, int at_no, T_GROUP_INFO *t_group_info, int *s_subtype) |
| int | GetOtherSaltChargeType (inp_ATOM *at, int at_no, T_GROUP_INFO *t_group_info, int *s_subtype, int bAccept_O) |
| int | MergeSaltTautGroupsBlind (inp_ATOM *at, int s_type, int num_atoms, S_GROUP_INFO *s_group_info, int nNumCandidates, T_GROUP_INFO *t_group_info, C_GROUP_INFO *c_group_info, struct BalancedNetworkStructure *pBNS) |
| int | ConnectSaltTGroups2SuperTGroup (inp_ATOM *at, int num_atoms, S_GROUP_INFO *s_group_info, int nNumCandidates, T_GROUP_INFO *t_group_info, C_GROUP_INFO *c_group_info, struct BalancedNetworkStructure *pBNS, int *nNewTGroupNumber, int *vertSuperTGroup) |
| int | bDoNotMergeNonTautAtom (inp_ATOM *at, int at_no) |
| int | GetOtherSaltType (inp_ATOM *at, int at_no, int *s_subtype) |
| int | is_centerpoint_elem (U_CHAR el_number) |
| int | is_centerpoint_elem_KET (U_CHAR el_number) |
| int | is_centerpoint_elem_strict (U_CHAR el_number) |
| int | AddAtom2num (AT_RANK num[], inp_ATOM *atom, int at_no, int bSubtract) |
| void | AddAtom2DA (AT_RANK num_DA[], inp_ATOM *atom, int at_no, int bSubtract) |
| int | AddEndPoint (T_ENDPOINT *pEndPoint, inp_ATOM *at, int iat) |
| int | nGetEndpointInfo (inp_ATOM *atom, int iat, ENDPOINT_INFO *eif) |
| int | nGetEndpointInfo_PT_22_00 (inp_ATOM *atom, int iat, ENDPOINT_INFO *eif) |
| int | nGetEndpointInfo_PT_16_00 (inp_ATOM *atom, int iat, ENDPOINT_INFO *eif) |
| int | nGetEndpointInfo_PT_06_00 (inp_ATOM *atom, int iat, ENDPOINT_INFO *eif) |
| int | nGetEndpointInfo_PT_39_00 (inp_ATOM *atom, int iat, ENDPOINT_INFO *eif) |
| int | nGetEndpointInfo_PT_13_00 (inp_ATOM *atom, int iat, ENDPOINT_INFO *eif) |
| int | nGetEndpointInfo_PT_18_00 (inp_ATOM *atom, int iat, ENDPOINT_INFO *eif) |
| int | nGetEndpointInfo_KET (inp_ATOM *atom, int iat, ENDPOINT_INFO *eif) |
| int | MarkChargeGroups (struct tagCANON_GLOBALS *pCG, inp_ATOM *at, int num_atoms, C_GROUP_INFO *c_group_info, T_GROUP_INFO *t_group_info, struct BalancedNetworkStructure *pBNS, struct BalancedNetworkData *pBD) |
| int | MarkSaltChargeGroups2 (CANON_GLOBALS *pCG, inp_ATOM *at, int num_atoms, S_GROUP_INFO *s_group_info, T_GROUP_INFO *t_group_info, C_GROUP_INFO *c_group_info, struct BalancedNetworkStructure *pBNS, struct BalancedNetworkData *pBD) |
| int | MarkSaltChargeGroups (CANON_GLOBALS *pCG, inp_ATOM *at, int num_atoms, S_GROUP_INFO *s_group_info, T_GROUP_INFO *t_group_info, C_GROUP_INFO *c_group_info, struct BalancedNetworkStructure *pBNS, struct BalancedNetworkData *pBD) |
| int | MergeSaltTautGroups (CANON_GLOBALS *pCG, inp_ATOM *at, int num_atoms, S_GROUP_INFO *s_group_info, T_GROUP_INFO *t_group_info, C_GROUP_INFO *c_group_info, struct BalancedNetworkStructure *pBNS) |
| int | MakeIsotopicHGroup (inp_ATOM *at, int num_atoms, S_GROUP_INFO *s_group_info, T_GROUP_INFO *t_group_info) |
| int | MarkTautomerGroups (CANON_GLOBALS *pCG, inp_ATOM *at, int num_atoms, T_GROUP_INFO *t_group_info, C_GROUP_INFO *c_group_info, struct BalancedNetworkStructure *pBNS, struct BalancedNetworkData *pBD) |
| int | free_t_group_info (T_GROUP_INFO *t_group_info) |
| int | make_a_copy_of_t_group_info (T_GROUP_INFO *t_group_info, T_GROUP_INFO *t_group_info_orig) |
| int | set_tautomer_iso_sort_keys (T_GROUP_INFO *t_group_info) |
| int | CountTautomerGroups (sp_ATOM *at, int num_atoms, T_GROUP_INFO *t_group_info) |
| int | SortTautomerGroupsAndEndpoints (CANON_GLOBALS *pCG, T_GROUP_INFO *t_group_info, int num_atoms, int num_at_tg, AT_RANK *nRank) |
Variables | |
| const CHARGE_TYPE | CType [] |
| #define ACCEPTOR_PAIR 1 |
| #define ACTUAL_ORDER | ( | PBNS, | |
| IAT, | |||
| IBOND, | |||
| BTYPE | |||
| ) |
| #define ALLOWED_EDGE | ( | PBNS, | |
| IAT, | |||
| IBOND | |||
| ) | ( !(PBNS) || !(PBNS)->edge || !(PBNS)->vert || !(PBNS)->edge[(PBNS)->vert[IAT].iedge[IBOND]].forbidden) |
| #define ALT_PATH_FOUND (MAX_ATOMS+1) |
| #define C_SUBTYPE_CHARGED 0 |
| #define C_SUBTYPE_CHARGED 0 |
| #define C_SUBTYPE_CHARGED_H_ACCEPT (C_SUBTYPE_CHARGED|C_SUBTYPE_H_ACCEPT) |
| #define C_SUBTYPE_CHARGED_H_ACCEPT_p_DONOR (C_SUBTYPE_CHARGED|C_SUBTYPE_H_ACCEPT|C_SUBTYPE_p_DONOR) |
| #define C_SUBTYPE_CHARGED_H_DONOR (C_SUBTYPE_CHARGED|C_SUBTYPE_H_DONOR |C_SUBTYPE_p_DONOR) |
| #define C_SUBTYPE_CHARGED_NON_TAUT (C_SUBTYPE_CHARGED) |
| #define C_SUBTYPE_CHARGED_p_DONOR (C_SUBTYPE_CHARGED|C_SUBTYPE_p_DONOR) |
| #define C_SUBTYPE_H_ACCEPT 4 |
| #define C_SUBTYPE_H_ACCEPT 4 |
| #define C_SUBTYPE_H_DONOR 8 |
| #define C_SUBTYPE_H_DONOR 8 |
| #define C_SUBTYPE_NEUTRAL 16 |
| #define C_SUBTYPE_NEUTRAL 16 |
| #define C_SUBTYPE_NEUTRAL_H_ACCEPT (C_SUBTYPE_NEUTRAL|C_SUBTYPE_H_ACCEPT) |
| #define C_SUBTYPE_NEUTRAL_H_ACCEPT_p_ACCEPT (C_SUBTYPE_NEUTRAL|C_SUBTYPE_H_ACCEPT|C_SUBTYPE_p_ACCEPT) |
| #define C_SUBTYPE_NEUTRAL_H_DONOR (C_SUBTYPE_NEUTRAL|C_SUBTYPE_H_DONOR) |
| #define C_SUBTYPE_NEUTRAL_NON_TAUT (C_SUBTYPE_NEUTRAL) |
| #define C_SUBTYPE_p_ACCEPT 2 /* new */ |
| #define C_SUBTYPE_p_ACCEPT 2 /* new */ |
| #define C_SUBTYPE_p_DONOR 1 /* new */ |
| #define C_SUBTYPE_p_DONOR 1 /* new */ |
| #define cPAIR | ( | a, | |
| b | |||
| ) | cPair[a+b*nNumLeftCandidates] |
| #define DISABLE_CANDIDATE 10 |
| #define DONOR_PAIR 2 |
| #define MAX_ALT_PATH_LEN 8 |
| #define MAX_LOCAL_TGNUM 0 /* was 32; disable since it has not been used */ |
| #define MAX_STACK_ARRAY_LEN 127 |
| #define MAX_TGROUP_ARRAY_LEN 127 |
| #define NO_ENDPOINT (MAX_ATOMS+2) /* the two defines must be different */ |
| typedef struct tagChargeType CHARGE_TYPE |
Here is the caller graph for this function:
Here is the caller graph for this function:| int AddEndPoint | ( | T_ENDPOINT * | pEndPoint, |
| inp_ATOM * | at, | ||
| int | iat | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int bCanBeACPoint | ( | inp_ATOM * | at, |
| S_CHAR | cCharge, | ||
| S_CHAR | cChangeValence, | ||
| S_CHAR | neutral_bonds_valence, | ||
| S_CHAR | neutral_valence, | ||
| S_CHAR | nEndpointValence, | ||
| S_CHAR * | cChargeSubtype | ||
| ) |
Here is the caller graph for this function:| int bDoNotMergeNonTautAtom | ( | inp_ATOM * | at, |
| int | at_no | ||
| ) |
Here is the caller graph for this function:| int CmpCCandidates | ( | const void * | a1, |
| const void * | a2 | ||
| ) |
Here is the caller graph for this function:| int cmpTGroupNumber | ( | const void * | a1, |
| const void * | a2 | ||
| ) |
| int comp_candidates | ( | const void * | a1, |
| const void * | a2 | ||
| ) |
Here is the caller graph for this function:| int CompRankTautomer | ( | const void * | a1, |
| const void * | a2, | ||
| void * | p | ||
| ) |
Here is the caller graph for this function:| int ConnectSaltTGroups2SuperTGroup | ( | inp_ATOM * | at, |
| int | num_atoms, | ||
| S_GROUP_INFO * | s_group_info, | ||
| int | nNumCandidates, | ||
| T_GROUP_INFO * | t_group_info, | ||
| C_GROUP_INFO * | c_group_info, | ||
| struct BalancedNetworkStructure * | pBNS, | ||
| int * | nNewTGroupNumber, | ||
| int * | vertSuperTGroup | ||
| ) |
| int CountTautomerGroups | ( | sp_ATOM * | at, |
| int | num_atoms, | ||
| T_GROUP_INFO * | t_group_info | ||
| ) |
Here is the caller graph for this function:| int FindAccessibleEndPoints | ( | CANON_GLOBALS * | pCG, |
| T_ENDPOINT * | EndPoint, | ||
| int * | nNumEndPoints, | ||
| T_BONDPOS * | BondPos, | ||
| int * | nNumBondPos, | ||
| struct BalancedNetworkStructure * | pBNS, | ||
| struct BalancedNetworkData * | pBD, | ||
| inp_ATOM * | at, | ||
| int | num_atoms, | ||
| C_GROUP_INFO * | cgi, | ||
| int | taut_mode | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int free_t_group_info | ( | T_GROUP_INFO * | t_group_info | ) |
Here is the caller graph for this function:
Here is the call graph for this function:
Here is the caller graph for this function:| int GetNeutralRepsIfNeeded | ( | AT_NUMB * | pri, |
| AT_NUMB * | prj, | ||
| inp_ATOM * | at, | ||
| int | num_atoms, | ||
| T_ENDPOINT * | EndPoint, | ||
| int | nNumEndPoints, | ||
| C_GROUP_INFO * | cgi | ||
| ) |
Here is the caller graph for this function:| int GetOtherSaltChargeType | ( | inp_ATOM * | at, |
| int | at_no, | ||
| T_GROUP_INFO * | t_group_info, | ||
| int * | s_subtype, | ||
| int | bAccept_O | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int GetOtherSaltType | ( | inp_ATOM * | at, |
| int | at_no, | ||
| int * | s_subtype | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int GetSaltChargeType | ( | inp_ATOM * | at, |
| int | at_no, | ||
| T_GROUP_INFO * | t_group_info, | ||
| int * | s_subtype | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int is_centerpoint_elem | ( | U_CHAR | el_number | ) |
Here is the caller graph for this function:| int is_centerpoint_elem_KET | ( | U_CHAR | el_number | ) |
Here is the caller graph for this function:| int is_centerpoint_elem_strict | ( | U_CHAR | el_number | ) |
Here is the caller graph for this function:| int make_a_copy_of_t_group_info | ( | T_GROUP_INFO * | t_group_info, |
| T_GROUP_INFO * | t_group_info_orig | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int MakeIsotopicHGroup | ( | inp_ATOM * | at, |
| int | num_atoms, | ||
| S_GROUP_INFO * | s_group_info, | ||
| T_GROUP_INFO * | t_group_info | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int MarkChargeGroups | ( | struct tagCANON_GLOBALS * | pCG, |
| inp_ATOM * | at, | ||
| int | num_atoms, | ||
| C_GROUP_INFO * | c_group_info, | ||
| T_GROUP_INFO * | t_group_info, | ||
| struct BalancedNetworkStructure * | pBNS, | ||
| struct BalancedNetworkData * | pBD | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int MarkSaltChargeGroups | ( | CANON_GLOBALS * | pCG, |
| inp_ATOM * | at, | ||
| int | num_atoms, | ||
| S_GROUP_INFO * | s_group_info, | ||
| T_GROUP_INFO * | t_group_info, | ||
| C_GROUP_INFO * | c_group_info, | ||
| struct BalancedNetworkStructure * | pBNS, | ||
| struct BalancedNetworkData * | pBD | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int MarkSaltChargeGroups2 | ( | CANON_GLOBALS * | pCG, |
| inp_ATOM * | at, | ||
| int | num_atoms, | ||
| S_GROUP_INFO * | s_group_info, | ||
| T_GROUP_INFO * | t_group_info, | ||
| C_GROUP_INFO * | c_group_info, | ||
| struct BalancedNetworkStructure * | pBNS, | ||
| struct BalancedNetworkData * | pBD | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int MarkTautomerGroups | ( | CANON_GLOBALS * | pCG, |
| inp_ATOM * | at, | ||
| int | num_atoms, | ||
| T_GROUP_INFO * | t_group_info, | ||
| C_GROUP_INFO * | c_group_info, | ||
| struct BalancedNetworkStructure * | pBNS, | ||
| struct BalancedNetworkData * | pBD | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int MergeSaltTautGroups | ( | CANON_GLOBALS * | pCG, |
| inp_ATOM * | at, | ||
| int | num_atoms, | ||
| S_GROUP_INFO * | s_group_info, | ||
| T_GROUP_INFO * | t_group_info, | ||
| C_GROUP_INFO * | c_group_info, | ||
| struct BalancedNetworkStructure * | pBNS | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int MergeSaltTautGroupsBlind | ( | inp_ATOM * | at, |
| int | s_type, | ||
| int | num_atoms, | ||
| S_GROUP_INFO * | s_group_info, | ||
| int | nNumCandidates, | ||
| T_GROUP_INFO * | t_group_info, | ||
| C_GROUP_INFO * | c_group_info, | ||
| struct BalancedNetworkStructure * | pBNS | ||
| ) |
| int MoveEndpoint | ( | inp_ATOM * | at, |
| S_CANDIDATE * | s_candidate, | ||
| AT_NUMB | endpoint, | ||
| AT_NUMB * | nTGroupNewNumbers, | ||
| AT_NUMB * | nTGroupPosition, | ||
| int | nNewTGroupOrd, | ||
| T_GROUP_INFO * | t_group_info | ||
| ) |
| int nGetEndpointInfo | ( | inp_ATOM * | atom, |
| int | iat, | ||
| ENDPOINT_INFO * | eif | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int nGetEndpointInfo_KET | ( | inp_ATOM * | atom, |
| int | iat, | ||
| ENDPOINT_INFO * | eif | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int nGetEndpointInfo_PT_06_00 | ( | inp_ATOM * | atom, |
| int | iat, | ||
| ENDPOINT_INFO * | eif | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int nGetEndpointInfo_PT_13_00 | ( | inp_ATOM * | atom, |
| int | iat, | ||
| ENDPOINT_INFO * | eif | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int nGetEndpointInfo_PT_16_00 | ( | inp_ATOM * | atom, |
| int | iat, | ||
| ENDPOINT_INFO * | eif | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int nGetEndpointInfo_PT_18_00 | ( | inp_ATOM * | atom, |
| int | iat, | ||
| ENDPOINT_INFO * | eif | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int nGetEndpointInfo_PT_22_00 | ( | inp_ATOM * | atom, |
| int | iat, | ||
| ENDPOINT_INFO * | eif | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int nGetEndpointInfo_PT_39_00 | ( | inp_ATOM * | atom, |
| int | iat, | ||
| ENDPOINT_INFO * | eif | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int RegisterCPoints | ( | C_GROUP * | c_group, |
| int * | pnum_c, | ||
| int | max_num_c, | ||
| T_GROUP_INFO * | t_group_info, | ||
| int | point1, | ||
| int | point2, | ||
| int | ctype, | ||
| inp_ATOM * | at, | ||
| int | num_atoms | ||
| ) |
Here is the caller graph for this function:| int RegisterEndPoints | ( | CANON_GLOBALS * | pCG, |
| T_GROUP_INFO * | t_group_info, | ||
| T_ENDPOINT * | EndPoint, | ||
| int | nNumEndPoints, | ||
| inp_ATOM * | at, | ||
| int | num_atoms, | ||
| C_GROUP_INFO * | cgi, | ||
| struct BalancedNetworkStructure * | pBNS | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int set_tautomer_iso_sort_keys | ( | T_GROUP_INFO * | t_group_info | ) |
Here is the caller graph for this function:
Here is the caller graph for this function:| int SortTautomerGroupsAndEndpoints | ( | CANON_GLOBALS * | pCG, |
| T_GROUP_INFO * | t_group_info, | ||
| int | num_atoms, | ||
| int | num_at_tg, | ||
| AT_RANK * | nRank | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| const CHARGE_TYPE CType[] |