Project

General

Profile

Task #2833

Update topology datastructures

Added by Paul Bauer about 1 month ago. Updated about 7 hours ago.

Status:
New
Priority:
Normal
Assignee:
Category:
core library
Target version:
Difficulty:
hard
Close

Description

To make sure that later work can be performed on the analysis tools and core library, certain datastructures used in the topology still need updating.
Mainly, the old t_atoms struct (and its underlying datastructures) need to be transformed into C++ styles, to allow easier access to the underlying elements, while ensuring that they can not be accidentally modified by calling code. In addition to this, the current way of handling the string database (t_symtab) are not optimal to allow a smooth transition to new file types and object serialization.
To do this, a number of underlying tasks need to be performed to allow the changes to happen.

  • Update old C-style typedef of atom properties and residue search to C++
  • Update some of the gmx_mtop_t atom loops to C++ to be able to use new definitions (may be able to change to native C++ range based loops later)
  • Change allocations of datastructures using t_atoms to use new/unique_ptr
  • Split out residue information out of atom information

RFC Please let me know if there are any older issues that should be referenced.


Checklist

  • Update atomprop typedef
  • Update residuetype typedef
  • Update atom loops in gmx_mtop_t
  • Update allocations for datastructures that use t_atoms
  • Change t_atoms to C++
  • Update preprocessing datastructures to C++

Associated revisions

Revision 2045d9e0 (diff)
Added by Paul Bauer about 1 month ago

Change one gmx_mtop_t atom loop to C++

Changed C style struct to C++ class.
Preparation for modernizing atoms datastructure.

Removed a useless gmxassert.h

Refs #2833

Change-Id: I22cfa27bfefc8469b4100a9fef8c11da4d304657

Revision 70d37111 (diff)
Added by Paul Bauer 10 days ago

Refactor t_hack to MoleculePatches

Replaced raw allocations with std::containers. Changed loops and
dependent functions to use new format.
Used hopefully better names for types and variables.

Part of preprocessing clean up.

Refs #2833

Change-Id: I518f5b0d5a7f20cbf8bf3636e88084c1daaab5d9

Revision 8d65b8a2 (diff)
Added by Paul Bauer 9 days ago

Refactor t_restp

Replaced raw allocations with std::containers.

Refs #2833

Change-Id: Ie74708fdf04082f37e69e000aef8f5bd7f577dba

Revision f5c3aa1e (diff)
Added by Paul Bauer 9 days ago

Refactor t_rbonded and t_rbondeds

Again, replaced raw allocations with std::container and changed function
signatures and loops to use new behaviour.

Refs #2833

Change-Id: I620866b823d9839cafafe357352e3e7a49033a69

Revision 1a05bf00 (diff)
Added by Paul Bauer 9 days ago

Refactor special bonds

Refs #2833

Change-Id: I2e093d7fb5fa429f969a78eef7da639af3f7cd1e

Revision 197d736d (diff)
Added by Paul Bauer 8 days ago

Refactor rtp renaming

Refs #2833

Change-Id: I2407045adadb3b84810fb6bfd83d5b8e9daba6f5

Revision 4d79f1ca (diff)
Added by Paul Bauer 6 days ago

Refactor vsite topology

Refs #2833

Change-Id: Ibde09f829a72cc5e6467e15cf8ee7e3c183a30ad

Revision 167fd872 (diff)
Added by Paul Bauer 6 days ago

Fix memory issues in preprocess

Refs #2833

Change-Id: Ic4118958d98446d3a164fca10c5618ad0da9bed6

Revision 999ebbb1 (diff)
Added by Paul Bauer about 12 hours ago

Refactor t_molinfo to MoleculeInformation class

Refs #2833

Change-Id: I66a6afc8ade636fb3002492e6c4e1d30ae51019a

History

#1 Updated by Gerrit Code Review Bot about 1 month ago

Gerrit received a related patchset '1' for Issue #2833.
Uploader: Paul Bauer ()
Change-Id: gromacs~master~I22cfa27bfefc8469b4100a9fef8c11da4d304657
Gerrit URL: https://gerrit.gromacs.org/8977

#2 Updated by Gerrit Code Review Bot about 1 month ago

Gerrit received a related patchset '1' for Issue #2833.
Uploader: Paul Bauer ()
Change-Id: gromacs~master~Ia55598c45b67980cac93c06853ab20f9a05fa0d7
Gerrit URL: https://gerrit.gromacs.org/8978

#3 Updated by Paul Bauer 27 days ago

This also means there is work to do in the preprocessing routines.

#4 Updated by Paul Bauer 27 days ago

Atomprop has been reworked in change https://gerrit.gromacs.org/#/c/8953/ and https://gerrit.gromacs.org/#/c/8937/, but may need more work later.

#6 Updated by Gerrit Code Review Bot 27 days ago

Gerrit received a related patchset '8' for Issue #2833.
Uploader: Paul Bauer ()
Change-Id: gromacs~master~I3110d6baa51fb003ed9478468b25dd899ae9d5a6
Gerrit URL: https://gerrit.gromacs.org/9020

#7 Updated by Gerrit Code Review Bot 15 days ago

Gerrit received a related patchset '10' for Issue #2833.
Uploader: Paul Bauer ()
Change-Id: gromacs~master~I518f5b0d5a7f20cbf8bf3636e88084c1daaab5d9
Gerrit URL: https://gerrit.gromacs.org/9072

#8 Updated by Gerrit Code Review Bot 15 days ago

Gerrit received a related patchset '6' for Issue #2833.
Uploader: Paul Bauer ()
Change-Id: gromacs~master~Ie74708fdf04082f37e69e000aef8f5bd7f577dba
Gerrit URL: https://gerrit.gromacs.org/9081

#9 Updated by Gerrit Code Review Bot 15 days ago

Gerrit received a related patchset '5' for Issue #2833.
Uploader: Paul Bauer ()
Change-Id: gromacs~master~I620866b823d9839cafafe357352e3e7a49033a69
Gerrit URL: https://gerrit.gromacs.org/9082

#10 Updated by Gerrit Code Review Bot 10 days ago

Gerrit received a related patchset '1' for Issue #2833.
Uploader: Paul Bauer ()
Change-Id: gromacs~master~I2e093d7fb5fa429f969a78eef7da639af3f7cd1e
Gerrit URL: https://gerrit.gromacs.org/9132

#11 Updated by Gerrit Code Review Bot 9 days ago

Gerrit received a related patchset '1' for Issue #2833.
Uploader: Paul Bauer ()
Change-Id: gromacs~master~I2407045adadb3b84810fb6bfd83d5b8e9daba6f5
Gerrit URL: https://gerrit.gromacs.org/9133

#12 Updated by Gerrit Code Review Bot 9 days ago

Gerrit received a related patchset '1' for Issue #2833.
Uploader: Paul Bauer ()
Change-Id: gromacs~master~Ibde09f829a72cc5e6467e15cf8ee7e3c183a30ad
Gerrit URL: https://gerrit.gromacs.org/9140

#13 Updated by Gerrit Code Review Bot 8 days ago

Gerrit received a related patchset '5' for Issue #2833.
Uploader: Paul Bauer ()
Change-Id: gromacs~master~Ic4118958d98446d3a164fca10c5618ad0da9bed6
Gerrit URL: https://gerrit.gromacs.org/9131

#14 Updated by Gerrit Code Review Bot 8 days ago

Gerrit received a related patchset '1' for Issue #2833.
Uploader: Paul Bauer ()
Change-Id: gromacs~master~I66a6afc8ade636fb3002492e6c4e1d30ae51019a
Gerrit URL: https://gerrit.gromacs.org/9146

#15 Updated by Gerrit Code Review Bot 3 days ago

Gerrit received a related patchset '3' for Issue #2833.
Uploader: Paul Bauer ()
Change-Id: gromacs~master~Iffcd5c8e862f2be7b8e05f1c45e324c76ca22f9f
Gerrit URL: https://gerrit.gromacs.org/9176

#16 Updated by Gerrit Code Review Bot about 7 hours ago

Gerrit received a related patchset '4' for Issue #2833.
Uploader: Paul Bauer ()
Change-Id: gromacs~master~I4514edde34c978c2756f1c17471e0adde0736896
Gerrit URL: https://gerrit.gromacs.org/9194

Also available in: Atom PDF