OSCR

pH-dependent structural dynamics of neuropeptide Y in aqueous solution.

Code ↔ Paper

4 matches between paragraphs of the paper and lines of its authors' code, computed by the harvester (lexical-v1). Click a colored paragraph or line to see its counterpart.

The 4 matches
  1. [1] § Results › H-bond networks ↔ new_analysis_dialog.py, lines 439–528 · score 0.64 · bond criterion, hydrogen atom, bond angle, algorithm, protein, donor
  2. [2] § Methods ↔ new_analysis_dialog.py, lines 439–528 · score 0.63 · bond donor, bond criteria, bond angle, distance, acceptor, water
  3. [3] § Methods ↔ bridge2.py, lines 729–808 · score 0.53 · bond donor, bond angle, acceptor, bridges, distance, water
  4. [4] § Methods ↔ main_window.py, lines 763–892 · score 0.50 · bond connections, bond graph, edges, computation, Bridge, nodes

Paper

Loaded from Europe PMC by your browser, not stored by OSCR: doi.org · Europe PMC

The paper is loaded when this pane is shown.

The authors' code

Python · 530 lines · 26 KB · no license · 2 matches

  1. # -*- coding: utf-8 -*-
  2. ################################################################################
  3. ## Form generated from reading UI file 'new_analysis_dialog.ui'
  4. ##
  5. ## Created by: Qt User Interface Compiler version 5.15.2
  6. ##
  7. ## WARNING! All changes made in this file will be lost when recompiling UI file!
  8. ################################################################################
  9. from PySide2.QtCore import *
  10. from PySide2.QtGui import *
  11. from PySide2.QtWidgets import *
  12. class Ui_Dialog(object):
  13. def setupUi(self, Dialog):
  14. if not Dialog.objectName():
  15. Dialog.setObjectName(u"Dialog")
  16. Dialog.setWindowModality(Qt.WindowModal)
  17. Dialog.resize(813, 745)
  18. sizePolicy = QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)
  19. sizePolicy.setHorizontalStretch(0)
  20. sizePolicy.setVerticalStretch(0)
  21. sizePolicy.setHeightForWidth(Dialog.sizePolicy().hasHeightForWidth())
  22. Dialog.setSizePolicy(sizePolicy)
  23. Dialog.setModal(True)
  24. self.verticalLayout_4 = QVBoxLayout(Dialog)
  25. self.verticalLayout_4.setObjectName(u"verticalLayout_4")
  26. self.group_init = QGroupBox(Dialog)
  27. self.group_init.setObjectName(u"group_init")
  28. self.verticalLayout = QVBoxLayout(self.group_init)
  29. self.verticalLayout.setObjectName(u"verticalLayout")
  30. self.gridLayout_2 = QGridLayout()
  31. self.gridLayout_2.setObjectName(u"gridLayout_2")
  32. self.label_2 = QLabel(self.group_init)
  33. self.label_2.setObjectName(u"label_2")
  34. self.label_2.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
  35. self.gridLayout_2.addWidget(self.label_2, 0, 0, 1, 1)
  36. self.line_bonds_structure = QLineEdit(self.group_init)
  37. self.line_bonds_structure.setObjectName(u"line_bonds_structure")
  38. self.gridLayout_2.addWidget(self.line_bonds_structure, 0, 1, 1, 1)
  39. self.label_3 = QLabel(self.group_init)
  40. self.label_3.setObjectName(u"label_3")
  41. self.label_3.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
  42. self.gridLayout_2.addWidget(self.label_3, 1, 0, 1, 1)
  43. self.checkBox_bonds_donors_without_hydrogen = QCheckBox(self.group_init)
  44. self.checkBox_bonds_donors_without_hydrogen.setObjectName(u"checkBox_bonds_donors_without_hydrogen")
  45. self.gridLayout_2.addWidget(self.checkBox_bonds_donors_without_hydrogen, 0, 2, 1, 1)
  46. self.button_structure = QPushButton(self.group_init)
  47. self.button_structure.setObjectName(u"button_structure")
  48. self.button_structure.setText(u"Browse...")
  49. self.gridLayout_2.addWidget(self.button_structure, 0, 3, 1, 1)
  50. self.line_bonds_trajectories = QLineEdit(self.group_init)
  51. self.line_bonds_trajectories.setObjectName(u"line_bonds_trajectories")
  52. self.gridLayout_2.addWidget(self.line_bonds_trajectories, 1, 1, 1, 2)
  53. self.button_trajectories = QPushButton(self.group_init)
  54. self.button_trajectories.setObjectName(u"button_trajectories")
  55. self.button_trajectories.setText(u"Browse...")
  56. self.gridLayout_2.addWidget(self.button_trajectories, 1, 3, 1, 1)
  57. self.verticalLayout.addLayout(self.gridLayout_2)
  58. self.verticalLayout_4.addWidget(self.group_init)
  59. self.groupBox = QGroupBox(Dialog)
  60. self.groupBox.setObjectName(u"groupBox")
  61. self.verticalLayout_3 = QVBoxLayout(self.groupBox)
  62. self.verticalLayout_3.setObjectName(u"verticalLayout_3")
  63. self.horizontalLayout_4 = QHBoxLayout()
  64. self.horizontalLayout_4.setObjectName(u"horizontalLayout_4")
  65. self.label_8 = QLabel(self.groupBox)
  66. self.label_8.setObjectName(u"label_8")
  67. self.label_8.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
  68. self.horizontalLayout_4.addWidget(self.label_8)
  69. self.line_bonds_selection = QLineEdit(self.groupBox)
  70. self.line_bonds_selection.setObjectName(u"line_bonds_selection")
  71. self.horizontalLayout_4.addWidget(self.line_bonds_selection)
  72. self.verticalLayout_3.addLayout(self.horizontalLayout_4)
  73. self.verticalLayout_5 = QVBoxLayout()
  74. self.verticalLayout_5.setObjectName(u"verticalLayout_5")
  75. self.checkBox_residuewise = QCheckBox(self.groupBox)
  76. self.checkBox_residuewise.setObjectName(u"checkBox_residuewise")
  77. self.checkBox_residuewise.setChecked(True)
  78. self.verticalLayout_5.addWidget(self.checkBox_residuewise)
  79. self.horizontalLayout_8 = QHBoxLayout()
  80. self.horizontalLayout_8.setObjectName(u"horizontalLayout_8")
  81. self.horizontalLayout_8.setContentsMargins(-1, 0, -1, -1)
  82. self.label_14 = QLabel(self.groupBox)
  83. self.label_14.setObjectName(u"label_14")
  84. self.horizontalLayout_8.addWidget(self.label_14)
  85. self.checkBox_all_nitrogen = QCheckBox(self.groupBox)
  86. self.checkBox_all_nitrogen.setObjectName(u"checkBox_all_nitrogen")
  87. self.horizontalLayout_8.addWidget(self.checkBox_all_nitrogen)
  88. self.checkBox_all_oxygen = QCheckBox(self.groupBox)
  89. self.checkBox_all_oxygen.setObjectName(u"checkBox_all_oxygen")
  90. self.horizontalLayout_8.addWidget(self.checkBox_all_oxygen)
  91. self.checkBox_all_sulphur = QCheckBox(self.groupBox)
  92. self.checkBox_all_sulphur.setObjectName(u"checkBox_all_sulphur")
  93. self.horizontalLayout_8.addWidget(self.checkBox_all_sulphur)
  94. self.label_13 = QLabel(self.groupBox)
  95. self.label_13.setObjectName(u"label_13")
  96. self.horizontalLayout_8.addWidget(self.label_13)
  97. self.horizontalSpacer_8 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
  98. self.horizontalLayout_8.addItem(self.horizontalSpacer_8)
  99. self.verticalLayout_5.addLayout(self.horizontalLayout_8)
  100. self.checkBox_consider_backbone = QCheckBox(self.groupBox)
  101. self.checkBox_consider_backbone.setObjectName(u"checkBox_consider_backbone")
  102. self.verticalLayout_5.addWidget(self.checkBox_consider_backbone)
  103. self.verticalLayout_3.addLayout(self.verticalLayout_5)
  104. self.horizontalLayout_7 = QHBoxLayout()
  105. self.horizontalLayout_7.setObjectName(u"horizontalLayout_7")
  106. self.groupBox_5 = QGroupBox(self.groupBox)
  107. self.groupBox_5.setObjectName(u"groupBox_5")
  108. self.horizontalLayout = QHBoxLayout(self.groupBox_5)
  109. self.horizontalLayout.setObjectName(u"horizontalLayout")
  110. self.label_6 = QLabel(self.groupBox_5)
  111. self.label_6.setObjectName(u"label_6")
  112. self.horizontalLayout.addWidget(self.label_6)
  113. self.line_bonds_start = QLineEdit(self.groupBox_5)
  114. self.line_bonds_start.setObjectName(u"line_bonds_start")
  115. self.line_bonds_start.setMaximumSize(QSize(60, 16777215))
  116. self.horizontalLayout.addWidget(self.line_bonds_start)
  117. self.label_7 = QLabel(self.groupBox_5)
  118. self.label_7.setObjectName(u"label_7")
  119. self.horizontalLayout.addWidget(self.label_7)
  120. self.line_bonds_stop = QLineEdit(self.groupBox_5)
  121. self.line_bonds_stop.setObjectName(u"line_bonds_stop")
  122. self.line_bonds_stop.setMaximumSize(QSize(60, 16777215))
  123. self.horizontalLayout.addWidget(self.line_bonds_stop)
  124. self.label_54 = QLabel(self.groupBox_5)
  125. self.label_54.setObjectName(u"label_54")
  126. self.horizontalLayout.addWidget(self.label_54)
  127. self.line_bonds_step = QLineEdit(self.groupBox_5)
  128. self.line_bonds_step.setObjectName(u"line_bonds_step")
  129. self.line_bonds_step.setMaximumSize(QSize(60, 16777215))
  130. self.horizontalLayout.addWidget(self.line_bonds_step)
  131. self.horizontalLayout_7.addWidget(self.groupBox_5)
  132. self.groupBox_6 = QGroupBox(self.groupBox)
  133. self.groupBox_6.setObjectName(u"groupBox_6")
  134. self.horizontalLayout_2 = QHBoxLayout(self.groupBox_6)
  135. self.horizontalLayout_2.setObjectName(u"horizontalLayout_2")
  136. self.label_4 = QLabel(self.groupBox_6)
  137. self.label_4.setObjectName(u"label_4")
  138. self.label_4.setAlignment(Qt.AlignLeading|Qt.AlignLeft|Qt.AlignVCenter)
  139. self.horizontalLayout_2.addWidget(self.label_4)
  140. self.line_bonds_distance = QLineEdit(self.groupBox_6)
  141. self.line_bonds_distance.setObjectName(u"line_bonds_distance")
  142. self.line_bonds_distance.setMaximumSize(QSize(60, 16777215))
  143. self.horizontalLayout_2.addWidget(self.line_bonds_distance)
  144. self.checkBox_angle = QCheckBox(self.groupBox_6)
  145. self.checkBox_angle.setObjectName(u"checkBox_angle")
  146. self.checkBox_angle.setChecked(True)
  147. self.horizontalLayout_2.addWidget(self.checkBox_angle)
  148. self.line_bonds_angle = QLineEdit(self.groupBox_6)
  149. self.line_bonds_angle.setObjectName(u"line_bonds_angle")
  150. self.line_bonds_angle.setMaximumSize(QSize(60, 16777215))
  151. self.horizontalLayout_2.addWidget(self.line_bonds_angle)
  152. self.horizontalLayout_7.addWidget(self.groupBox_6)
  153. self.horizontalSpacer_3 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
  154. self.horizontalLayout_7.addItem(self.horizontalSpacer_3)
  155. self.verticalLayout_3.addLayout(self.horizontalLayout_7)
  156. self.verticalLayout_4.addWidget(self.groupBox)
  157. self.groupBox_15 = QGroupBox(Dialog)
  158. self.groupBox_15.setObjectName(u"groupBox_15")
  159. self.verticalLayout_2 = QVBoxLayout(self.groupBox_15)
  160. self.verticalLayout_2.setObjectName(u"verticalLayout_2")
  161. self.radio_in_selection = QRadioButton(self.groupBox_15)
  162. self.radio_in_selection.setObjectName(u"radio_in_selection")
  163. self.radio_in_selection.setChecked(True)
  164. self.verticalLayout_2.addWidget(self.radio_in_selection)
  165. self.horizontalLayout_12 = QHBoxLayout()
  166. self.horizontalLayout_12.setObjectName(u"horizontalLayout_12")
  167. self.radio_around = QRadioButton(self.groupBox_15)
  168. self.radio_around.setObjectName(u"radio_around")
  169. self.horizontalLayout_12.addWidget(self.radio_around)
  170. self.line_around_value = QLineEdit(self.groupBox_15)
  171. self.line_around_value.setObjectName(u"line_around_value")
  172. self.line_around_value.setMaximumSize(QSize(50, 16777215))
  173. self.line_around_value.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
  174. self.horizontalLayout_12.addWidget(self.line_around_value)
  175. self.label = QLabel(self.groupBox_15)
  176. self.label.setObjectName(u"label")
  177. self.horizontalLayout_12.addWidget(self.label)
  178. self.horizontalSpacer_7 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
  179. self.horizontalLayout_12.addItem(self.horizontalSpacer_7)
  180. self.checkBox_not_water_water = QCheckBox(self.groupBox_15)
  181. self.checkBox_not_water_water.setObjectName(u"checkBox_not_water_water")
  182. self.checkBox_not_water_water.setChecked(True)
  183. self.horizontalLayout_12.addWidget(self.checkBox_not_water_water)
  184. self.verticalLayout_2.addLayout(self.horizontalLayout_12)
  185. self.horizontalLayout_6 = QHBoxLayout()
  186. self.horizontalLayout_6.setObjectName(u"horizontalLayout_6")
  187. self.radio_wire_dict = QRadioButton(self.groupBox_15)
  188. self.radio_wire_dict.setObjectName(u"radio_wire_dict")
  189. self.radio_wire_dict.setChecked(False)
  190. self.horizontalLayout_6.addWidget(self.radio_wire_dict)
  191. self.line_wire_max_water = QLineEdit(self.groupBox_15)
  192. self.line_wire_max_water.setObjectName(u"line_wire_max_water")
  193. self.line_wire_max_water.setMaximumSize(QSize(50, 16777215))
  194. self.line_wire_max_water.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
  195. self.horizontalLayout_6.addWidget(self.line_wire_max_water)
  196. self.label_5 = QLabel(self.groupBox_15)
  197. self.label_5.setObjectName(u"label_5")
  198. self.horizontalLayout_6.addWidget(self.label_5)
  199. self.horizontalSpacer = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
  200. self.horizontalLayout_6.addItem(self.horizontalSpacer)
  201. self.checkBox_wires_allow_direct_bonds = QCheckBox(self.groupBox_15)
  202. self.checkBox_wires_allow_direct_bonds.setObjectName(u"checkBox_wires_allow_direct_bonds")
  203. self.horizontalLayout_6.addWidget(self.checkBox_wires_allow_direct_bonds)
  204. self.checkBo_wires_convex = QCheckBox(self.groupBox_15)
  205. self.checkBo_wires_convex.setObjectName(u"checkBo_wires_convex")
  206. self.horizontalLayout_6.addWidget(self.checkBo_wires_convex)
  207. self.verticalLayout_2.addLayout(self.horizontalLayout_6)
  208. self.horizontalLayout_5 = QHBoxLayout()
  209. self.horizontalLayout_5.setObjectName(u"horizontalLayout_5")
  210. self.horizontalLayout_5.setContentsMargins(-1, 0, -1, -1)
  211. self.radioButton_hydrophobic_contacts = QRadioButton(self.groupBox_15)
  212. self.radioButton_hydrophobic_contacts.setObjectName(u"radioButton_hydrophobic_contacts")
  213. self.horizontalLayout_5.addWidget(self.radioButton_hydrophobic_contacts)
  214. self.lineEdit_hydrophobic_distance = QLineEdit(self.groupBox_15)
  215. self.lineEdit_hydrophobic_distance.setObjectName(u"lineEdit_hydrophobic_distance")
  216. self.lineEdit_hydrophobic_distance.setMaximumSize(QSize(50, 16777215))
  217. self.lineEdit_hydrophobic_distance.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
  218. self.horizontalLayout_5.addWidget(self.lineEdit_hydrophobic_distance)
  219. self.label_12 = QLabel(self.groupBox_15)
  220. self.label_12.setObjectName(u"label_12")
  221. self.horizontalLayout_5.addWidget(self.label_12)
  222. self.horizontalSpacer_5 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
  223. self.horizontalLayout_5.addItem(self.horizontalSpacer_5)
  224. self.checkBox_partially_hydrophobic = QCheckBox(self.groupBox_15)
  225. self.checkBox_partially_hydrophobic.setObjectName(u"checkBox_partially_hydrophobic")
  226. self.horizontalLayout_5.addWidget(self.checkBox_partially_hydrophobic)
  227. self.verticalLayout_2.addLayout(self.horizontalLayout_5)
  228. self.verticalLayout_4.addWidget(self.groupBox_15)
  229. self.groupBox_4 = QGroupBox(Dialog)
  230. self.groupBox_4.setObjectName(u"groupBox_4")
  231. self.verticalLayout_8 = QVBoxLayout(self.groupBox_4)
  232. self.verticalLayout_8.setObjectName(u"verticalLayout_8")
  233. self.horizontalLayout_13 = QHBoxLayout()
  234. self.horizontalLayout_13.setObjectName(u"horizontalLayout_13")
  235. self.checkBox_frame_time = QCheckBox(self.groupBox_4)
  236. self.checkBox_frame_time.setObjectName(u"checkBox_frame_time")
  237. self.horizontalLayout_13.addWidget(self.checkBox_frame_time)
  238. self.lineEdit_frame_time = QLineEdit(self.groupBox_4)
  239. self.lineEdit_frame_time.setObjectName(u"lineEdit_frame_time")
  240. self.lineEdit_frame_time.setMaximumSize(QSize(60, 16777215))
  241. self.lineEdit_frame_time.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
  242. self.horizontalLayout_13.addWidget(self.lineEdit_frame_time)
  243. self.comboBox_frame_time_unit = QComboBox(self.groupBox_4)
  244. self.comboBox_frame_time_unit.addItem("")
  245. self.comboBox_frame_time_unit.addItem("")
  246. self.comboBox_frame_time_unit.addItem("")
  247. self.comboBox_frame_time_unit.addItem("")
  248. self.comboBox_frame_time_unit.setObjectName(u"comboBox_frame_time_unit")
  249. self.comboBox_frame_time_unit.setEnabled(True)
  250. self.comboBox_frame_time_unit.setMaximumSize(QSize(50, 16777215))
  251. self.horizontalLayout_13.addWidget(self.comboBox_frame_time_unit)
  252. self.horizontalSpacer_11 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
  253. self.horizontalLayout_13.addItem(self.horizontalSpacer_11)
  254. self.verticalLayout_8.addLayout(self.horizontalLayout_13)
  255. self.horizontalLayout_14 = QHBoxLayout()
  256. self.horizontalLayout_14.setObjectName(u"horizontalLayout_14")
  257. self.label_10 = QLabel(self.groupBox_4)
  258. self.label_10.setObjectName(u"label_10")
  259. self.horizontalLayout_14.addWidget(self.label_10)
  260. self.lineEdit_add_residue = QLineEdit(self.groupBox_4)
  261. self.lineEdit_add_residue.setObjectName(u"lineEdit_add_residue")
  262. self.lineEdit_add_residue.setMaximumSize(QSize(60, 16777215))
  263. self.lineEdit_add_residue.setLayoutDirection(Qt.LeftToRight)
  264. self.lineEdit_add_residue.setAlignment(Qt.AlignLeading|Qt.AlignLeft|Qt.AlignVCenter)
  265. self.horizontalLayout_14.addWidget(self.lineEdit_add_residue)
  266. self.horizontalSpacer_20 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
  267. self.horizontalLayout_14.addItem(self.horizontalSpacer_20)
  268. self.verticalLayout_8.addLayout(self.horizontalLayout_14)
  269. self.verticalLayout_4.addWidget(self.groupBox_4)
  270. self.horizontalLayout_11 = QHBoxLayout()
  271. self.horizontalLayout_11.setObjectName(u"horizontalLayout_11")
  272. self.horizontalSpacer_2 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
  273. self.horizontalLayout_11.addItem(self.horizontalSpacer_2)
  274. self.button_cancel = QPushButton(Dialog)
  275. self.button_cancel.setObjectName(u"button_cancel")
  276. self.horizontalLayout_11.addWidget(self.button_cancel)
  277. self.button_load = QPushButton(Dialog)
  278. self.button_load.setObjectName(u"button_load")
  279. self.horizontalLayout_11.addWidget(self.button_load)
  280. self.horizontalSpacer_6 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
  281. self.horizontalLayout_11.addItem(self.horizontalSpacer_6)
  282. self.verticalLayout_4.addLayout(self.horizontalLayout_11)
  283. self.retranslateUi(Dialog)
  284. QMetaObject.connectSlotsByName(Dialog)
  285. # setupUi
  286. def retranslateUi(self, Dialog):
  287. Dialog.setWindowTitle(QCoreApplication.translate("Dialog", u"New Analysis", None))
  288. self.group_init.setTitle(QCoreApplication.translate("Dialog", u"Files", None))
  289. self.label_2.setText(QCoreApplication.translate("Dialog", u"structure", None))
  290. #if QT_CONFIG(tooltip)
  291. self.line_bonds_structure.setToolTip(QCoreApplication.translate("Dialog", u"<html><head/><body><p align=\"justify\">A structure file (.psf or .pdb or other) has to be provided.</p></body></html>", None))
  292. #endif // QT_CONFIG(tooltip)
  293. self.line_bonds_structure.setText("")
  294. self.label_3.setText(QCoreApplication.translate("Dialog", u"trajectories", None))
  295. #if QT_CONFIG(tooltip)
  296. self.checkBox_bonds_donors_without_hydrogen.setToolTip(QCoreApplication.translate("Dialog", u"<html><head/><body><p>For structure files, that do not contain hydrogen atoms.</p><p align=\"justify\">This option turns off the angle check in the H bond detection and uses all possible donors regardless of their protonation state. If set to false, only protonated donors are considered.</p></body></html>", None))
  297. #endif // QT_CONFIG(tooltip)
  298. self.checkBox_bonds_donors_without_hydrogen.setText(QCoreApplication.translate("Dialog", u"no hydrogen", None))
  299. #if QT_CONFIG(tooltip)
  300. self.line_bonds_trajectories.setToolTip(QCoreApplication.translate("Dialog", u"<html><head/><body><p align=\"justify\">One or more trajectory files (.dcd or other) can be provided opionally.</p></body></html>", None))
  301. #endif // QT_CONFIG(tooltip)
  302. self.line_bonds_trajectories.setText("")
  303. self.groupBox.setTitle(QCoreApplication.translate("Dialog", u"Search", None))
  304. self.label_8.setText(QCoreApplication.translate("Dialog", u"static selection", None))
  305. #if QT_CONFIG(tooltip)
  306. self.line_bonds_selection.setToolTip(QCoreApplication.translate("Dialog", u"<html><head/><body><p align=\"justify\">Provide a static selection. It will not be updated and cant contain timedependent parts.</p></body></html>", None))
  307. #endif // QT_CONFIG(tooltip)
  308. self.line_bonds_selection.setText(QCoreApplication.translate("Dialog", u"protein", None))
  309. self.line_bonds_selection.setPlaceholderText(QCoreApplication.translate("Dialog", u"e.g. protein (default)", None))
  310. self.checkBox_residuewise.setText(QCoreApplication.translate("Dialog", u"compute residuewise", None))
  311. self.label_14.setText(QCoreApplication.translate("Dialog", u"include all ", None))
  312. self.checkBox_all_nitrogen.setText(QCoreApplication.translate("Dialog", u"N*", None))
  313. self.checkBox_all_oxygen.setText(QCoreApplication.translate("Dialog", u"O*", None))
  314. self.checkBox_all_sulphur.setText(QCoreApplication.translate("Dialog", u"S*", None))
  315. self.label_13.setText(QCoreApplication.translate("Dialog", u" atoms as donors and acceptors", None))
  316. self.checkBox_consider_backbone.setText(QCoreApplication.translate("Dialog", u"include backbone atoms", None))
  317. self.groupBox_5.setTitle(QCoreApplication.translate("Dialog", u"Frames", None))
  318. self.label_6.setText(QCoreApplication.translate("Dialog", u"first", None))
  319. self.line_bonds_start.setText(QCoreApplication.translate("Dialog", u"1", None))
  320. self.label_7.setText(QCoreApplication.translate("Dialog", u"last", None))
  321. self.line_bonds_stop.setText(QCoreApplication.translate("Dialog", u"-1", None))
  322. self.label_54.setText(QCoreApplication.translate("Dialog", u"stride", None))
  323. self.line_bonds_step.setText(QCoreApplication.translate("Dialog", u"1", None))
  324. self.groupBox_6.setTitle(QCoreApplication.translate("Dialog", u"H-bond criteria", None))
  325. self.label_4.setText(QCoreApplication.translate("Dialog", u"distance", None))
  326. #if QT_CONFIG(tooltip)
  327. self.line_bonds_distance.setToolTip(QCoreApplication.translate("Dialog", u"<html><head/><body><p align=\"justify\">The maximum distance between an acceptor heavy atom and a donor heavy atom.</p></body></html>", None))
  328. #endif // QT_CONFIG(tooltip)
  329. self.line_bonds_distance.setText(QCoreApplication.translate("Dialog", u"3.5", None))
  330. #if QT_CONFIG(tooltip)
  331. self.checkBox_angle.setToolTip(QCoreApplication.translate("Dialog", u"Toggle angle check.", None))
  332. #endif // QT_CONFIG(tooltip)
  333. self.checkBox_angle.setText(QCoreApplication.translate("Dialog", u"angle", None))
  334. #if QT_CONFIG(tooltip)
  335. self.line_bonds_angle.setToolTip(QCoreApplication.translate("Dialog", u"<html><head/><body><p align=\"justify\">The maximum angle between the line connecting the donor heavy atom and the hydrogen and the line connecting the acceptor heavy atom and the hydrogen. An angle of 0 relates to a straight line through donor-hydrogen-acceptor.</p></body></html>", None))
  336. #endif // QT_CONFIG(tooltip)
  337. self.line_bonds_angle.setText(QCoreApplication.translate("Dialog", u"60", None))
  338. self.groupBox_15.setTitle(QCoreApplication.translate("Dialog", u"Algorithm", None))
  339. #if QT_CONFIG(tooltip)
  340. self.radio_in_selection.setToolTip(QCoreApplication.translate("Dialog", u"Compute all H bonds within the static selection.", None))
  341. #endif // QT_CONFIG(tooltip)
  342. self.radio_in_selection.setText(QCoreApplication.translate("Dialog", u"H-bonds in static selection", None))
  343. #if QT_CONFIG(tooltip)
  344. self.radio_around.setToolTip(QCoreApplication.translate("Dialog", u"<html><head/><body><p align=\"justify\">Compute all H bonds within the union of the static selection and all water within the specified distance of the static selection.</p></body></html>", None))
  345. #endif // QT_CONFIG(tooltip)
  346. self.radio_around.setText(QCoreApplication.translate("Dialog", u"H-bonds in static selection and water around", None))
  347. #if QT_CONFIG(tooltip)
  348. self.line_around_value.setToolTip(QCoreApplication.translate("Dialog", u"Set the distance around the static selection for dynamic water detection.", None))
  349. #endif // QT_CONFIG(tooltip)
  350. self.line_around_value.setText(QCoreApplication.translate("Dialog", u"3.5", None))
  351. self.label.setText(QCoreApplication.translate("Dialog", u"[A]", None))
  352. self.checkBox_not_water_water.setText(QCoreApplication.translate("Dialog", u"no water-water H-bonds", None))
  353. #if QT_CONFIG(tooltip)
  354. self.radio_wire_dict.setToolTip(QCoreApplication.translate("Dialog", u"<html><head/><body><p align=\"justify\">Both algorithms result in the same. Choose dictionary for smaller systems and compressed sparse matrix for larger systems for efficiency.</p></body></html>", None))
  355. #endif // QT_CONFIG(tooltip)
  356. self.radio_wire_dict.setText(QCoreApplication.translate("Dialog", u"water wires with max.", None))
  357. self.line_wire_max_water.setText(QCoreApplication.translate("Dialog", u"5", None))
  358. self.label_5.setText(QCoreApplication.translate("Dialog", u"waters ", None))
  359. self.checkBox_wires_allow_direct_bonds.setText(QCoreApplication.translate("Dialog", u"direct H-bonds", None))
  360. self.checkBo_wires_convex.setText(QCoreApplication.translate("Dialog", u"convex hull", None))
  361. self.radioButton_hydrophobic_contacts.setText(QCoreApplication.translate("Dialog", u"hydrophobic contacts within ", None))
  362. self.lineEdit_hydrophobic_distance.setText(QCoreApplication.translate("Dialog", u"5.0", None))
  363. self.label_12.setText(QCoreApplication.translate("Dialog", u"[A]", None))
  364. self.checkBox_partially_hydrophobic.setText(QCoreApplication.translate("Dialog", u"Add hydrophobic segments of polar/charged residues", None))
  365. self.groupBox_4.setTitle(QCoreApplication.translate("Dialog", u"Additional Options", None))
  366. self.checkBox_frame_time.setText(QCoreApplication.translate("Dialog", u"set time between two frames:", None))
  367. self.comboBox_frame_time_unit.setItemText(0, QCoreApplication.translate("Dialog", u"ns", None))
  368. self.comboBox_frame_time_unit.setItemText(1, QCoreApplication.translate("Dialog", u"ps", None))
  369. self.comboBox_frame_time_unit.setItemText(2, QCoreApplication.translate("Dialog", u"fs", None))
  370. self.comboBox_frame_time_unit.setItemText(3, QCoreApplication.translate("Dialog", u"as", None))
  371. self.label_10.setText(QCoreApplication.translate("Dialog", u"Declare offset for n-terminal residue: ", None))
  372. self.lineEdit_add_residue.setText(QCoreApplication.translate("Dialog", u"0", None))
  373. self.button_cancel.setText(QCoreApplication.translate("Dialog", u"Cancel", None))
  374. self.button_load.setText(QCoreApplication.translate("Dialog", u"Initialize", None))
  375. # retranslateUi

new_analysis_dialog.py at commit 4384ee9, no license · at the source

Overview

  1. Forschungszentrum Jülich, Computational Biomedicine, INM-9, Wilhelm-Johnen Straße, Jülich, Germany
  2. Research Training Group 2416 MultiSenses – MultiScales, RWTH Aachen University, Aachen, Germany
  3. RWTH Aachen University, Physics Department, Aachen, Germany
  4. RWTH Aachen University, Institute for Biology II, Department of Chemosensation, Aachen, Germany
  5. University of Bucharest, Faculty of Physics, Atomistilor, Magurele, Romania
Institutions: Forschungszentrum Jülich (Germany); RWTH Aachen University (Germany); University of Bucharest (Romania)
Journal: PloS one, volume 21, issue 3, article e0343614
Dates: received 27 September 2025; accepted 9 February 2026; published online 12 March 2026
Type: Research article · Language: English
License: CC BY
Identifiers: DOI 10.1371/journal.pone.0343614 · PMID 41818213 · PMCID PMC12981483 · OpenAlex W7135027459
Open access: gold, a free copy (OpenAlex)
Status: code verified
Categories: computational modeling (no new data) (modality), human (organism)
MeSH: Neuropeptide Y*, Water*, Amino Acid Sequence, Animals, Humans, Hydrogen Bonding, Hydrogen-Ion Concentration, Molecular Dynamics Simulation, Protein Conformation, alpha-Helical, Protein Structure, Secondary, Solutions (* major topic)
Topic: Neuropeptides and Animal Physiology (Cellular and Molecular Neuroscience, Neuroscience), according to OpenAlex
Funding: Deutsche Forschungsgemeinschaft (368482240)
Citations: not cited yet (Europe PMC); 68 references in the paper

Abstract

Neuropeptide Y regulates key molecular processes in the brain. Its interaction with the cell membrane, where it binds to specialized receptors with key physiological roles, likely depends on pH. Available structural ensembles of both porcine and human peptides, solved by nuclear magnetic resonance (NMR) at an acidic pH in aqueous solution, indicate an α-helical core with unstructured termini. However, the protonation states of the carboxylic and histidine residues of the peptide, as well as the interplay between these states and peptide conformational dynamics, remain unexplored. In this study, we performed constant pH simulations and graph-based analyses to investigate the dynamics and H-bond patterns of neuropeptide Y within a pH range of 3.0 to 7.0. We found that an α-helical core is present at all pH values, though its length can vary by 2–3 residues depending on the pH. The pKa of Asp16, part of the α-helix, and of Asp11 may shift by more than one pH unit. Based on these findings, we suggest that performing constant pH simulations may be required to accurately describe neuropeptide Y interactions with its cellular partners at the pH values of interest.

Reproduced under the paper's license (CC BY), from the paper cited above.

Repositories

Its files are read in the Code ↔ Paper reader above, with 4 matches between paragraphs and lines of code.

maltesie/bridge2

License: none: the authors keep all their rights
State: the link answers, verified on 30 September 2026
Evidence: files inventoried
Commit: 4384ee96f3bf1c8986d1122222b3a592415ba077, 24 March 2023
Languages: Python (23), Shell (1)
Size: 47 files, 24 scripts
Software Heritage: archived
Found in: “Data Availability”
Holds: README, environment (requirements.txt)
Not found: license file, CITATION.cff, tests, continuous integration, documentation
Tools: NumPy (10 files), MDAnalysis (4 files), NetworkX (4 files), Matplotlib (3 files), SciPy (3 files)
Availability: 1 check, the latest on 30 September 2026: the link answers
  • 30 September 2026: the link answers
25 files

Zenodo 14069542

License: CC-BY-4.0
State: the link answers, verified on 30 September 2026
Evidence: files inventoried
Size: 1 file
Software Heritage: not checked
Found in: “Data Availability”
Not found: README, license file, CITATION.cff, environment file, tests, continuous integration, documentation
Availability: 1 check, the latest on 30 September 2026: the link answers (HTTP 200)
  • 30 September 2026: the link answers (HTTP 200)
2 files

The paper's code and data availability statement is in the Data section.

Tracing map

Proposed by the machine: these links were found in the paper and verified at the source, without human review. The map will receive a Zenodo DOI once one of the paper's authors has validated it with their ORCID.

What the map holds:

  • 2 repositories of the authors' code, each at its verified commit, with its license and how the link was found in the paper;
  • 26 scripts, each with its path and the digest of its content;
  • 4 matches between paragraphs of the paper and lines of the code (method lexical-v1);
  • neither the text of the paper nor the code itself.

Its JSON (tracing-map.json) is deposited on Zenodo with its DOI once the map is validated.

Data

No dataset and no data link were found in the paper.

Data Availability

All simulations and data analyses were performed using openly available topology, parameter, and software. The NAMD 2.14 package (https://www.ks.uiuc.edu/Research/namd/) was used to run MD simulations and CHARMM 15.3.2022 package (https://academiccharmm.org) was used to run constant pHMD simulations for NPY in water. Plots were make using Gnuplot package (http://www.gnuplot.info), and Bridge2 program (https://github.com/maltesie/bridge2). Molecular structures were visualized using VMD (https://www.ks.uiuc.edu/Research/vmd/). Data, including input and parameter files for Molecular Dynamics simulations, Constant pH Molecular Dynamics simulations, all Python codes used for analysis can be found at Zenodo repository: https://doi.org/10.5281/zenodo.14069542.

Reproduced under the paper's license (CC BY), from the paper cited above.

Versions

The history of this record: each version stored by the harvester or made by a correction of its authors or of the maintainers of its code, and what changed in its facts. The texts of the paper (its abstract, its availability statements) are not part of it; versions that changed only those are not listed.

Version 1, 30 September 2026: the first record

Recorded: type, language, journal, volume, issue, pages, dates, 4 authors, 11 MeSH terms, 1 funder, 67 references.

Cite

This paper

Nguyen, H. T., Spehr, M., Bondar, A.-N., & Carloni, P. (2026). pH-dependent structural dynamics of neuropeptide Y in aqueous solution. PloS one, 21(3), e0343614. https://doi.org/10.1371/journal.pone.0343614

BibTeX

@article{nguyen2026ph,
author = {Nguyen, Hoa Thi and Spehr, Marc and Bondar, Ana-Nicoleta and Carloni, Paolo},
title = {{pH-dependent structural dynamics of neuropeptide Y in aqueous solution}},
journal = {PloS one},
year = {2026},
month = mar,
volume = {21},
number = {3},
pages = {e0343614},
publisher = {PLOS},
issn = {1932-6203},
doi = {10.1371/journal.pone.0343614},
url = {https://doi.org/10.1371/journal.pone.0343614},
pmid = {41818213},
pmcid = {PMC12981483}
}

RIS

TY - JOUR
AU - Nguyen, Hoa Thi
AU - Spehr, Marc
AU - Bondar, Ana-Nicoleta
AU - Carloni, Paolo
TI - pH-dependent structural dynamics of neuropeptide Y in aqueous solution
T2 - PloS one
J2 - PLoS One
PY - 2026
DA - 2026/03/12
VL - 21
IS - 3
SP - e0343614
SN - 1932-6203
PB - PLOS
DO - 10.1371/journal.pone.0343614
UR - https://doi.org/10.1371/journal.pone.0343614
LA - en
ER -

CSL-JSON

{
"id": "10.1371/journal.pone.0343614",
"type": "article-journal",
"title": "pH-dependent structural dynamics of neuropeptide Y in aqueous solution",
"container-title": "PloS one",
"author": [
{
"family": "Nguyen",
"given": "Hoa Thi"
},
{
"family": "Spehr",
"given": "Marc"
},
{
"family": "Bondar",
"given": "Ana-Nicoleta"
},
{
"family": "Carloni",
"given": "Paolo"
}
],
"container-title-short": "PLoS One",
"volume": "21",
"issue": "3",
"page": "e0343614",
"DOI": "10.1371/journal.pone.0343614",
"PMID": "41818213",
"PMCID": "PMC12981483",
"ISSN": "1932-6203",
"publisher": "PLOS",
"URL": "https://doi.org/10.1371/journal.pone.0343614",
"language": "en",
"issued": {
"date-parts": [
[
2026,
3,
12
]
]
}
}

The tracing map gets a citation of its own once an author has validated it and it has a DOI.

Similar papers

The papers with a page that share the most with this one: the tools found in their code, their categories, datasets, cited references and authors, the rarest counting most.

[1] doi:10.1085/jgp.202513926
Characterization of an open-channel structure and lateral conduction pathway in the cation-selective pentameric ligand-gated ion channel, ELIC.
Journal: The Journal of general physiology
In common: computational modeling (no new data), 5 references
[2] doi:10.1038/s41467-026-75444-4 [code]
Structural insights enable drug discovery for the neuronal NBCn2 carbonate transporter.
Journal: Nature communications
In common: MDAnalysis, SciPy, Matplotlib, 1 other tool, 2 references
[3] doi:10.1038/s41586-026-10501-y [code]
Long-term editing of brain circuits using an engineered electrical synapse.
Journal: Nature
In common: SciPy, Matplotlib, NumPy, 4 references
[4] doi:10.1038/s41467-026-72568-5 [code]
Endosome maturation is orchestrated by inside-out proton signaling through a Na&lt;sup&gt;+&lt;/sup&gt;/H&lt;sup&gt;+&lt;/sup&gt; exchanger and pH-dependent Rab GTPase cycling.
Journal: Nature communications
In common: MDAnalysis, NetworkX, SciPy, 2 other tools, 1 reference
[5] doi:10.1021/acs.jcim.6c01299 [code]
Targeting BCL-2 through Deep Learning-Based Drug Repurposing: A Multimodal Approach Combining Diffusion-Based Generative Modeling, Neural Relational Inference, and In Vitro Validation.
Journal: Journal of chemical information and modeling
In common: NetworkX, SciPy, Matplotlib, 1 other tool, computational modeling (no new data), 1 reference
[6] doi:10.1038/s41565-026-02180-7 [code]
Intracellular neuronal recordings across DNA tiles.
Journal: Nature nanotechnology
In common: SciPy, Matplotlib, NumPy, 2 references
[7] doi:10.1371/journal.pcbi.1014730 [code]
A unified model of short- and long-term plasticity: Effects on network connectivity and information capacity.
Journal: PLoS computational biology
In common: NetworkX, SciPy, Matplotlib, 1 other tool, computational modeling (no new data)
[8] doi:10.1093/bioinformatics/btag553 [code]
Spatial-spectral fusion enables drug repositioning by capturing indirect and long-range associations in biological networks.
Journal: Bioinformatics (Oxford, England)
In common: NetworkX, SciPy, Matplotlib, 1 other tool, computational modeling (no new data)
[9] doi:10.1038/s41467-026-74357-6 [code]
Hippocampo-neocortical interaction as compressive retrieval-augmented generation.
Journal: Nature communications
In common: NetworkX, SciPy, Matplotlib, 1 other tool, computational modeling (no new data)
[10] doi:10.1088/1741-2552/ae5fd7 [code]
Metric validation for detection of delayed and directed coupling.
Journal: Journal of neural engineering
In common: NetworkX, SciPy, Matplotlib, 1 other tool, computational modeling (no new data)

Contribute

The authors of this paper can claim it, correct its record and validate its tracing map, and the maintainers of its code (its owner, or a public member of its organization) correct what it says of their repository; anyone signed in can ask for its removal. Every request goes to OSCR's own machine, which answers it; your account page follows them.

Sign in with ORCID to claim this paper as one of its authors, correct its record or validate its tracing map: when the paper's metadata lists your ORCID iD, you are recognized at once. Maintainers of its code: sign in with GitHub, then claim the repository on your account page.

Request its removal

To ask OSCR to remove this record, the copies of its authors' scripts or its tracing map, use the removal request page: signed in, you say who you are, what to remove and why, then review and confirm the request. Published rules decide every request (how).

Discussion, reproductions, activity

Discussion: questions and error reports about this paper and its code, from signed-in readers and its authors. It opens with sign-in.

Reproductions: reports from readers who ran the authors' code: what they reproduced, with which environment, commit and data. It opens with sign-in.

Activity: what happens around this paper: new versions of its record, its map's validation, discussions and reproductions. It opens with sign-in.