From 0256efada856a2d672d6d79b5e82a9c833d32f80 Mon Sep 17 00:00:00 2001 From: Tana Tandaric <127224945+bananatana@users.noreply.github.com> Date: Thu, 18 Apr 2024 11:26:22 +0200 Subject: [PATCH] added (de)protonated AA added ASH, GLH, LYN, ARN. --- aminoAcids.py | 33 ++++++++++++++++++++++++++++++++- protein.py | 14 +++++++++++--- 2 files changed, 43 insertions(+), 4 deletions(-) diff --git a/aminoAcids.py b/aminoAcids.py index 8d91b36..cfe90ee 100644 --- a/aminoAcids.py +++ b/aminoAcids.py @@ -8,11 +8,15 @@ def __init__(self): self.codes321 = { 'ALA': 'A', 'ARG': 'R', + 'ARN': 'R', 'ASN': 'N', 'ASP': 'D', + 'ASH': 'D', 'CYS': 'C', + 'CYX': 'C', 'GLN': 'Q', 'GLU': 'E', + 'GLH': 'E', 'GLY': 'G', 'HIS': 'H', 'HIE': 'H', @@ -21,6 +25,7 @@ def __init__(self): 'ILE': 'I', 'LEU': 'L', 'LYS': 'K', + 'LYN': 'K', 'MET': 'M', 'PHE': 'F', 'PRO': 'P', @@ -69,6 +74,11 @@ def __init__(self): O = 1, C = 6, ), + 'ARN': Counter( + N = 4, + O = 1, + C = 6, + ), 'ASN': Counter( N = 2, O = 2, @@ -79,12 +89,23 @@ def __init__(self): O = 3, C = 4 ), + 'ASH': Counter( + N = 1, + O = 3, + C = 4 + ), 'CYS': Counter( N = 1, O = 1, C = 3, S = 1 ), + 'CYX': Counter( + N = 1, + O = 1, + C = 3, + S = 1 + ), 'GLN': Counter( N = 2, O = 2, @@ -95,6 +116,11 @@ def __init__(self): O = 3, C = 5 ), + 'GLH': Counter( + N = 1, + O = 3, + C = 5 + ), 'GLY': Counter( N = 1, O = 1, @@ -135,6 +161,11 @@ def __init__(self): O = 1, C = 6 ), + 'LYN': Counter( + N = 2, + O = 1, + C = 6 + ), 'MET': Counter( N = 1, O = 1, @@ -176,4 +207,4 @@ def __init__(self): O = 1, C = 5 ) - } \ No newline at end of file + } diff --git a/protein.py b/protein.py index 6040629..acb382e 100644 --- a/protein.py +++ b/protein.py @@ -29,8 +29,8 @@ class System(object): def __init__(self, **kwargs): - protein_res_names = ["ALA", "ARG", "ASN", "ASP", "CYS", "CYX", "GLN", "GLU", "GLY", "HIS", - "HIE", "HID", "HIP", "HISE", "HISD", "HISH", "ILE", "LEU", "LYS", + protein_res_names = ["ALA", "ARG","ARN", "ASN", "ASP", "ASH", "CYS", "CYX", "GLN", "GLH", "GLU", "GLY", "HIS", + "HIE", "HID", "HIP", "HISE", "HISD", "HISH", "ILE", "LEU", "LYS", "LYN", "MET", "PHE", "PRO", "SER", "THR", "TRP", "TYR", "VAL", ] self.pdb = kwargs["pdb"] @@ -249,7 +249,7 @@ def __init__(self, *args, **kwargs): def _setRes(self): """ - Change Histidines and Cysteins in pdb to the format preferred by gromacs. + Change Histidines and Cysteins and Protonated ASP and GLU and Deprotonated LYS pdb to the format preferred by gromacs. """ tgt = open(self.pdb.replace(".pdb", "-his.pdb"), "w") self.pdb_his = tgt.name @@ -264,6 +264,14 @@ def _setRes(self): tgt.write(line.replace('HIP ','HISH')) elif line.split()[3] == "CYX": tgt.write(line.replace('CYX ','CYS ')) + elif line.split()[3] == "ASH": + tgt.write(line.replace('ASH ','ASPH')) + elif line.split()[3] == "ASH": + tgt.write(line.replace('GLH ','GLUH')) + elif line.split()[3] == "LYN": + tgt.write(line.replace('LYN ','LYSN')) + elif line.split()[3] == "ARN": + tgt.write(line.replace('ARN ','ARGN')) else: tgt.write(line) else: