23extern const int aa_isotope_numbers[6];
25extern const double aa_elem_masses[19];
27extern const double aa_elem_nominal_masses[19];
29extern const double aa_elem_probabilities[19];
31extern const int aa_symbol_to_elem_counts[256*6];
40 memset(atomCounts, 0,
sizeof(
decltype(atomCounts[0]))*6);
42 for(
size_t idx = 0; fasta[idx] !=
'\0'; ++idx)
44 const int* counts = &aa_symbol_to_elem_counts[fasta[idx]*6];
45 for(
int ii = 0; ii < 6; ++ii)
46 atomCounts[ii] += counts[ii];
58 const int H_INDEX = 1;
59 const int O_INDEX = 3;
61 atomCounts[H_INDEX] += 2;
62 atomCounts[O_INDEX] += 1;
void parse_fasta(const char *fasta, int atomCounts[6])
Count elemental composition of an unmodificed sequence of amino acids, resulting in CHNOSSe counts.
void parse_fasta_full(const char *fasta, int atomCounts[6])
Turn an input FASTA aminoacid sequence into atom counts, in CHNOSSe order.