#include "pdb.h" double reference_volume[21] = { 63.83 , /* GLY */ 90.09 , /* ALA */ 139.17 , /* VAL */ 164.53 , /* LEU */ 164.88 , /* ILE */ 123.49 , /* PRO */ 167.76 , /* MET */ 193.21 , /* PHE */ 197.48 , /* TYR */ 232.60 , /* TRP */ 94.21 , /* SER */ 119.91 , /* THR */ 127.47 , /* ASN */ 149.75 , /* GLN */ 113.15 , /* CYS */ 159.43 , /* HIS */ 139.76 , /* GLU */ 117.24 , /* ASP */ 193.48 , /* ARG */ 169.99 , /* LYS */ 104.45 /* ssbonded */ }; double residue_molecular_weight[21] = { 57.05 , /* GLY */ 71.09 , /* ALA */ 99.14 , /* VAL */ 113.16 , /* LEU */ 113.16 , /* ILE */ 97.12 , /* PRO */ 131.19 , /* MET */ 147.18 , /* PHE */ 163.18 , /* TYR */ 186.21 , /* TRP */ 87.08 , /* SER */ 101.11 , /* THR */ 114.11 , /* ASN */ 128.14 , /* GLN */ 103.1 , /* CYS */ 137.14 , /* HIS */ 128.12 , /* GLU */ 114.09 , /* ASP */ 157.19 , /* ARG */ 129.17 , /* LYS */ 102.1 /* ssbonded */ }; double residue_frequency[21] = { 0.072 , /* GLY */ 0.083 , /* ALA */ 0.066 , /* VAL */ 0.090 , /* LEU */ 0.052 , /* ILE */ 0.051 , /* PRO */ 0.024 , /* MET */ 0.039 , /* PHE */ 0.032 , /* TYR */ 0.013 , /* TRP */ 0.069 , /* SER */ 0.058 , /* THR */ 0.044 , /* ASN */ 0.040 , /* GLN */ 0.009 , /* CYS */ 0.022 , /* HIS */ 0.062 , /* GLU */ 0.053 , /* ASP */ 0.057 , /* ARG */ 0.057 , /* LYS */ 0.008 /* ssbonded */ }; void maybe_read_reference_volume(int force) { char *reference_file = command_line_arg("reference") ; if (reference_file != NULL) { FILE *ff = fopen(reference_file, "r") ; int index ; double reference ; char buffer[100] ; if (ff == NULL) serious_error(ARG_TYPE_STRING, "Failed to open file", reference_file) ; while (1) { #if defined (__linux__) index = fscanf(ff,"%s %lf", buffer, &reference) ; #else index = fscanf(ff,"%s %Lf", buffer, &reference) ; #endif if (index == EOF) break; if (index == 1) serious_error(ARG_TYPE_STRING, "Wrong refrence volume specified for residue", buffer) ; if (buffer[3] == '(' && buffer[4] == 'S') index = 20 ; else { residue_description *rd = find_residue_type (buffer) ; if (rd == NULL) serious_error(ARG_TYPE_STRING, "Wrong residue name", buffer) ; index = rd-> index ; } reference_volume[index] = reference ; } } else if (force) serious_error (ARG_TYPE_STRING, "Reference file must be given as argument", "") ; }