atomes 1.1.15
atomes: an atomic scale modeling tool box
|
Functions to prepare the force field XML files from the sources in atomes
Functions to read the force field XML files.
More...
#include "global.h"
#include "interface.h"
#include "dlp_field.h"
#include "force_fields.h"
#include <libxml/xmlreader.h>
Go to the source code of this file.
Data Structures | |
struct | f_bond |
struct | f_angl |
Macros | |
#define | N_FIELDS 21 |
#define | N_PARAMS |
#define | ALL_PARAMS 9 |
#define | FATS 0 |
#define | FEQI 1 |
#define | FBDS 2 |
#define | FANG 3 |
#define | FDIH 4 |
#define | FIMP 5 |
#define | FINV 6 |
#define | FNBD 7 |
#define | FINC 8 |
#define | USE_ATOMS |
Typedefs | |
typedef struct f_bond | f_bond |
typedef struct f_angl | f_angl |
Functions | |
xmlNodePtr | findnode (xmlNodePtr startnode, char *nname) |
find XML node | |
int | clean_xml_data (xmlDoc *doc, xmlTextReaderPtr reader) |
free XML data | |
int | get_pdim (int fid, int prop, int col) |
retrieve number of parameters for property in force field database | |
int | get_fkey (int fid, int prop, int col) |
retrieve key for property in force field database | |
int | find_atom_id (int print, char *keyw) |
find atom id in force field database | |
gchar * | find_atom_key (int fid, int prop, char *keyw) |
retrieve property key in force field database for atom | |
int | find_atom_z (char *keyw) |
find atom Z | |
void | print_object_dim_and_key_tables (int fid) |
print tables dimensions and keys to file | |
void | set_data (int pid, int obj, int oid, int faid) |
save retrieved force field data | |
int | get_z (int faid) |
get field atom Z | |
int | get_atoms (int z) |
retrieve all field atom(s) with matching Z | |
int | get_bond (int faid, int bid) |
retrieve all bonding parameter(s) for this field atom | |
int | get_angle (int faid, int aid) |
retrieve all angle parameter(s) for this field atom | |
int | get_apex (int faid, int aid) |
retrieve all angle apex parameter(s) for this field atom | |
int | get_torsion (int faid, int tid, int a, int b) |
retrieve all torsion parameter(s) for this field atom | |
int | get_improper (int faid, int a, int b) |
retrieve all improper parameter(s) for this field atom | |
int | get_vdw (int faid) |
retrieve all VdW parameter(s) for this field atom | |
void | field_has_element (int aid) |
retrieve force field parameters for this atom | |
void | print_atom_table (int fid) |
print force field atom data to file | |
gboolean | not_done (int eid, int a, int b) |
was this case already considered ? | |
void | print_this_bond (int eid, int h, int fid, int inum, char *at_a, char *at_b, char **the_bond) |
print this bond to file | |
void | print_bond_table (int fid, int inum) |
print force field bond table to file | |
gboolean | not_done_an (int eid, int a, int b, int c) |
was this case already considered ? | |
void | print_this_angle (int eid, int h, int fid, int inum, int ub, char *at_a, char *at_b, char *at_c, char **the_angle) |
print this angle to file | |
void | print_angle_table (int fid, int inum) |
print angle(s) table to file | |
void | print_dihedral_table (int fid, int inum) |
print dihedral(s) table to file | |
void | print_improper_table (int fid, int inum) |
print improper(s) table to file | |
void | print_inversion_table (int fid, int inum) |
print inversion(s) table to file | |
void | print_vdw_table (int fid, int inum) |
print VdW table to file | |
int | field_find_atoms () |
retrieve matching atom from force field data base | |
gboolean | is_a_match (int *data, int num, int val[4]) |
is this a match ? | |
void | find_object_ijkl (int hid, int foid, int oid, int sa, int za, int sb, int zb, int sc, int zc, int sd, int zd) |
retrieve parameter from force field database | |
void | field_find_bonds () |
retrieve available bond parameters in force field database | |
void | field_find_angles () |
retrieve available angle parameters in force field database | |
void | field_find_dihedrals (int id) |
retrieve available dihedral parameters in force field database | |
void | field_find_vdw () |
retrieve available VdW parameters in force field database | |
float | get_force_field_atom_mass (int sp, int num) |
get force field atomic mass | |
void | clean_this_field_data (xmlDoc *doc, xmlTextReaderPtr reader) |
free force field XML file data | |
gchar * | open_field_file (int field) |
open force field XML file | |
G_MODULE_EXPORT void | setup_this_force_field (int id) |
setup force field parameters | |
Variables | |
char * | field_keyw [N_FIELDS] |
char * | field_ffl [N_FIELDS] |
char * | field_name [N_FIELDS] |
char * | field_acro [N_FIELDS] |
char *** | field_atoms |
char *** | field_equi [2] |
char *** | field_bonds [3] |
char *** | field_angles [2] |
char *** | field_dihedrals [2] |
char *** | field_inversions |
char *** | field_impropers |
char *** | field_vdw |
int * | field_objects |
int * | field_dim |
gboolean | is_99 |
int * | atoms_id |
int ** | atoms_id_list |
int ** | extraz_id |
FILE * | fp |
gchar * | ffo_file [21] |
gchar * | prop_name [11] |
gchar * | table_name [11] = {"qbonds", "sbonds", "mbonds", "qangles", "sangles", "dih", "tor", "inv", "imp", "vdw", "bdi"} |
int | ffdim [14][2] = {{1, 0}, {1, 1}, {1, 1}, {2, 2}, {2, 4}, {2, 3}, {3, 2}, {3, 4}, {4, 3}, {4, 4}, {4, 2}, {4, 3}, {1, 2}, {2, 0}} |
int | ffpot [N_FIELDS][10] |
field_object_match ** | all_data [10] |
field_object_match * | om_tmp |
f_bond * | the_bonds [2] |
f_bond * | tmpbd |
f_angl * | the_angles [2] |
f_angl * | tmpan |
field_object_match * | field_objects_id [6] = {NULL, NULL, NULL, NULL, NULL, NULL} |
field_object_match * | tmp_obj_id |
char *** | ff_atoms |
field_data * | ff_bonds [3] |
field_data * | ff_angles [2] |
field_data * | ff_dih [2] |
field_data * | ff_imp |
field_data * | ff_inv |
field_data * | ff_vdw |
int | ff_unit |
int * | ff_objects |
int * | ff_dim |
int * | ff_info |
int * | ff_key |
int | is_extra |
gchar * | filetoread |
Functions to prepare the force field XML files from the sources in atomes
Functions to read the force field XML files.
Definition in file force_fields.c.
#define ALL_PARAMS 9 |
Definition at line 95 of file force_fields.c.
#define FANG 3 |
Definition at line 102 of file force_fields.c.
#define FATS 0 |
Definition at line 99 of file force_fields.c.
#define FBDS 2 |
Definition at line 101 of file force_fields.c.
#define FDIH 4 |
Definition at line 103 of file force_fields.c.
#define FEQI 1 |
Definition at line 100 of file force_fields.c.
#define FIMP 5 |
Definition at line 104 of file force_fields.c.
#define FINC 8 |
Definition at line 107 of file force_fields.c.
#define FINV 6 |
Definition at line 105 of file force_fields.c.
#define FNBD 7 |
Definition at line 106 of file force_fields.c.
#define N_FIELDS 21 |
Definition at line 93 of file force_fields.c.
#define N_PARAMS |
Definition at line 94 of file force_fields.c.
#define USE_ATOMS |
Definition at line 109 of file force_fields.c.
typedef struct f_angl f_angl |
Definition at line 1302 of file force_fields.c.
typedef struct f_bond f_bond |
Definition at line 1062 of file force_fields.c.
void clean_this_field_data | ( | xmlDoc * | doc, |
xmlTextReaderPtr | reader ) |
free force field XML file data
doc | the xmlDoc pointer to free |
reader | the XML reader to free |
Definition at line 2314 of file force_fields.c.
|
extern |
free XML data
doc | the XML doc pointer to free |
reader | the XML reader to free |
Definition at line 322 of file w_library.c.
void field_find_angles | ( | ) |
retrieve available angle parameters in force field database
Definition at line 2173 of file force_fields.c.
int field_find_atoms | ( | ) |
retrieve matching atom from force field data base
Definition at line 1963 of file force_fields.c.
void field_find_bonds | ( | ) |
retrieve available bond parameters in force field database
Definition at line 2139 of file force_fields.c.
void field_find_dihedrals | ( | int | id | ) |
retrieve available dihedral parameters in force field database
id | 0 = dihedral(s), 1 = improper(s), 2 = inversion(s) |
Definition at line 2207 of file force_fields.c.
void field_find_vdw | ( | ) |
retrieve available VdW parameters in force field database
Definition at line 2247 of file force_fields.c.
void field_has_element | ( | int | aid | ) |
retrieve force field parameters for this atom
aid | the target atom id |
Definition at line 1013 of file force_fields.c.
int find_atom_id | ( | int | print, |
char * | keyw ) |
find atom id in force field database
print debug information ? | |
keyw | the key entry for atom in the force field database |
Definition at line 612 of file force_fields.c.
gchar * find_atom_key | ( | int | fid, |
int | prop, | ||
char * | keyw ) |
retrieve property key in force field database for atom
fid | the force field id |
prop | the type of property |
keyw | the key entry for atom in the force field database |
Definition at line 636 of file force_fields.c.
int find_atom_z | ( | char * | keyw | ) |
void find_object_ijkl | ( | int | hid, |
int | foid, | ||
int | oid, | ||
int | sa, | ||
int | za, | ||
int | sb, | ||
int | zb, | ||
int | sc, | ||
int | zc, | ||
int | sd, | ||
int | zd ) |
retrieve parameter from force field database
hid | iteration parameter |
foid | force table id |
oid | type of structural element |
sa | 1st chemical species |
za | 1st Z |
sb | 2nd chemical species |
zb | 2nd Z |
sc | 3rd chemical species, if any |
zc | 3rd Z, if any |
sd | 4th chemical species, if any |
zd | 4th Z, if any |
Definition at line 2046 of file force_fields.c.
|
extern |
find XML node
startnode | Starting node |
nname | Node name to find |
Definition at line 548 of file read_isaacs.c.
int get_angle | ( | int | faid, |
int | aid ) |
retrieve all angle parameter(s) for this field atom
faid | the field atom id |
aid | the structural element id |
Definition at line 856 of file force_fields.c.
int get_apex | ( | int | faid, |
int | aid ) |
retrieve all angle apex parameter(s) for this field atom
faid | the field atom id |
aid | the structural element id |
Definition at line 882 of file force_fields.c.
int get_atoms | ( | int | z | ) |
retrieve all field atom(s) with matching Z
z | the target Z |
Definition at line 807 of file force_fields.c.
int get_bond | ( | int | faid, |
int | bid ) |
retrieve all bonding parameter(s) for this field atom
faid | the field atom id |
bid | the structural element id |
Definition at line 830 of file force_fields.c.
int get_fkey | ( | int | fid, |
int | prop, | ||
int | col ) |
retrieve key for property in force field database
fid | the force field id |
prop | the property id |
col | the column id |
Definition at line 307 of file force_fields.c.
float get_force_field_atom_mass | ( | int | sp, |
int | num ) |
get force field atomic mass
sp | the target chemical species |
num | the atom id |
Definition at line 2289 of file force_fields.c.
int get_improper | ( | int | faid, |
int | a, | ||
int | b ) |
retrieve all improper parameter(s) for this field atom
faid | the field atom id |
a | 1st atom position |
b | 2nd atom position |
Definition at line 937 of file force_fields.c.
int get_pdim | ( | int | fid, |
int | prop, | ||
int | col ) |
retrieve number of parameters for property in force field database
fid | the force field id |
prop | the type of property |
col | the column id |
Definition at line 289 of file force_fields.c.
int get_torsion | ( | int | faid, |
int | tid, | ||
int | a, | ||
int | b ) |
retrieve all torsion parameter(s) for this field atom
faid | the field atom id |
tid | the structural element id |
a | 1st atom position |
b | 2nd atom position |
Definition at line 910 of file force_fields.c.
int get_vdw | ( | int | faid | ) |
retrieve all VdW parameter(s) for this field atom
faid | the field atom id |
Definition at line 962 of file force_fields.c.
int get_z | ( | int | faid | ) |
gboolean is_a_match | ( | int * | data, |
int | num, | ||
int | val[4] ) |
is this a match ?
data | the set of parameter(s) |
num | the number of parameter |
val | the target value(s) |
Definition at line 2018 of file force_fields.c.
gboolean not_done | ( | int | eid, |
int | a, | ||
int | b ) |
was this case already considered ?
eid | equivalence id (not used for the time being) |
a | 1st atom id |
b | 2nd atom id |
Definition at line 1084 of file force_fields.c.
gboolean not_done_an | ( | int | eid, |
int | a, | ||
int | b, | ||
int | c ) |
was this case already considered ?
eid | equivalence id (not used for the time being) |
a | 1st atom id |
b | 2nd atom id |
c | 3rd atom id |
Definition at line 1326 of file force_fields.c.
gchar * open_field_file | ( | int | field | ) |
open force field XML file
field | the id of the force field to open |
Definition at line 2373 of file force_fields.c.
void print_angle_table | ( | int | fid, |
int | inum ) |
print angle(s) table to file
fid | the field id |
inum | the object id |
Definition at line 1433 of file force_fields.c.
void print_atom_table | ( | int | fid | ) |
print force field atom data to file
fid | the force field id |
Definition at line 1045 of file force_fields.c.
void print_bond_table | ( | int | fid, |
int | inum ) |
print force field bond table to file
fid | the force field id |
inum | the structural element id |
Definition at line 1185 of file force_fields.c.
void print_dihedral_table | ( | int | fid, |
int | inum ) |
print dihedral(s) table to file
fid | the force field id |
inum | the object id |
Definition at line 1683 of file force_fields.c.
void print_improper_table | ( | int | fid, |
int | inum ) |
print improper(s) table to file
fid | the force field id |
inum | the object id |
Definition at line 1752 of file force_fields.c.
void print_inversion_table | ( | int | fid, |
int | inum ) |
print inversion(s) table to file
fid | the force field id |
inum | the object id |
Definition at line 1815 of file force_fields.c.
void print_object_dim_and_key_tables | ( | int | fid | ) |
print tables dimensions and keys to file
fid | the force field id |
Definition at line 709 of file force_fields.c.
void print_this_angle | ( | int | eid, |
int | h, | ||
int | fid, | ||
int | inum, | ||
int | ub, | ||
char * | at_a, | ||
char * | at_b, | ||
char * | at_c, | ||
char ** | the_angle ) |
print this angle to file
eid | equivalence id (not used for the time being) |
h | 0 = angle, 1 = angle restraints |
fid | the force field id |
inum | the structural element id |
ub | Urey-Bradley parameter for the CHARRM FF, 2 for CHARMM FF, 0 otherwise |
at_a | 1st atom name |
at_b | 2nd atom name |
at_c | 3rd atom name |
the_angle | the force field parameter(s) for this angle |
Definition at line 1353 of file force_fields.c.
void print_this_bond | ( | int | eid, |
int | h, | ||
int | fid, | ||
int | inum, | ||
char * | at_a, | ||
char * | at_b, | ||
char ** | the_bond ) |
print this bond to file
eid | equivalence id (not used for the time being) |
h | the bond type |
fid | the force field id |
inum | the structural element id |
at_a | 1st atom name |
at_b | 2nd atom name |
the_bond | the force field parameter(s) for this bond |
Definition at line 1109 of file force_fields.c.
void print_vdw_table | ( | int | fid, |
int | inum ) |
print VdW table to file
fid | the force field id |
inum | the object id |
Definition at line 1856 of file force_fields.c.
void set_data | ( | int | pid, |
int | obj, | ||
int | oid, | ||
int | faid ) |
save retrieved force field data
pid | the type of structural element |
obj | the element id |
oid | the parameter id the force field database |
faid | the field atom id |
Definition at line 766 of file force_fields.c.
G_MODULE_EXPORT void setup_this_force_field | ( | int | id | ) |
setup force field parameters
id | the force field id |
Definition at line 2823 of file force_fields.c.
field_object_match** all_data[10] |
Definition at line 753 of file force_fields.c.
int* atoms_id |
Definition at line 238 of file force_fields.c.
int** atoms_id_list |
Definition at line 239 of file force_fields.c.
int** extraz_id |
Definition at line 240 of file force_fields.c.
field_data* ff_angles[2] |
Definition at line 1946 of file force_fields.c.
char*** ff_atoms |
Definition at line 1942 of file force_fields.c.
field_data* ff_bonds[3] |
Definition at line 1945 of file force_fields.c.
field_data* ff_dih[2] |
Definition at line 1947 of file force_fields.c.
int* ff_dim |
Definition at line 1954 of file force_fields.c.
field_data* ff_imp |
Definition at line 1948 of file force_fields.c.
int* ff_info |
Definition at line 1955 of file force_fields.c.
field_data* ff_inv |
Definition at line 1949 of file force_fields.c.
int* ff_key |
Definition at line 1956 of file force_fields.c.
int* ff_objects |
Definition at line 1953 of file force_fields.c.
int ff_unit |
Definition at line 1952 of file force_fields.c.
field_data* ff_vdw |
Definition at line 1950 of file force_fields.c.
int ffdim[14][2] = {{1, 0}, {1, 1}, {1, 1}, {2, 2}, {2, 4}, {2, 3}, {3, 2}, {3, 4}, {4, 3}, {4, 4}, {4, 2}, {4, 3}, {1, 2}, {2, 0}} |
Definition at line 255 of file force_fields.c.
gchar* ffo_file[21] |
Definition at line 244 of file force_fields.c.
int ffpot[N_FIELDS][10] |
Definition at line 257 of file force_fields.c.
char* field_acro[N_FIELDS] |
Definition at line 200 of file force_fields.c.
char*** field_angles[2] |
Definition at line 227 of file force_fields.c.
char*** field_atoms |
Definition at line 222 of file force_fields.c.
char*** field_bonds[3] |
Definition at line 225 of file force_fields.c.
char*** field_dihedrals[2] |
Definition at line 228 of file force_fields.c.
int* field_dim |
Definition at line 234 of file force_fields.c.
char*** field_equi[2] |
Definition at line 223 of file force_fields.c.
char* field_ffl[N_FIELDS] |
Definition at line 156 of file force_fields.c.
char*** field_impropers |
Definition at line 230 of file force_fields.c.
char*** field_inversions |
Definition at line 229 of file force_fields.c.
char* field_keyw[N_FIELDS] |
Definition at line 134 of file force_fields.c.
char* field_name[N_FIELDS] |
Definition at line 178 of file force_fields.c.
int* field_objects |
Definition at line 233 of file force_fields.c.
field_object_match* field_objects_id[6] = {NULL, NULL, NULL, NULL, NULL, NULL} |
Definition at line 1939 of file force_fields.c.
char*** field_vdw |
Definition at line 231 of file force_fields.c.
gchar* filetoread |
Definition at line 2304 of file force_fields.c.
FILE* fp |
Definition at line 242 of file force_fields.c.
gboolean is_99 |
Definition at line 236 of file force_fields.c.
int is_extra |
Definition at line 2007 of file force_fields.c.
field_object_match* om_tmp |
Definition at line 754 of file force_fields.c.
gchar* prop_name[11] |
Definition at line 250 of file force_fields.c.
gchar* table_name[11] = {"qbonds", "sbonds", "mbonds", "qangles", "sangles", "dih", "tor", "inv", "imp", "vdw", "bdi"} |
Definition at line 253 of file force_fields.c.
f_angl* the_angles[2] |
Definition at line 1313 of file force_fields.c.
f_bond* the_bonds[2] |
Definition at line 1072 of file force_fields.c.
field_object_match* tmp_obj_id |
Definition at line 1940 of file force_fields.c.
f_angl* tmpan |
Definition at line 1314 of file force_fields.c.
f_bond* tmpbd |
Definition at line 1073 of file force_fields.c.