Project

General

Profile

Task #2877

Task #2045: API design and language bindings

use gmx::Options more

Added by Mark Abraham 8 months ago. Updated 7 months ago.

Status:
New
Priority:
Normal
Assignee:
Category:
gmxapi
Target version:
Difficulty:
uncategorized
Close

Description

Legacy command-line tools/modules use the legacy parse_common_args() routine. This needs to be updated so that we end up with only one kind of option handling. It will be much more feasible to support API bindings to modules when they do use the new framework.

Proposed first tools to convert
-------------------------------
dump
check
mdrun

Later
-----
grompp

Naturally there will be preliminary cleanup patches in some of these cases.

Associated revisions

Revision f4c94df9 (diff)
Added by Mark Abraham 8 months ago

Eliminate mdlib/mdrun.h

This file was filled with stuff that works better elsewhere.

Moved the options structs into gmx namespace

Refs #2877

Change-Id: Ib796ef8e9896804c56936f23f67dcd3fc12900fd

Revision 2090e9ae (diff)
Added by Mark Abraham 8 months ago

Eliminate mdlib/mdrun.h

This file was filled with stuff that works better elsewhere.

Moved the options structs into gmx namespace

Refs #2877

Change-Id: Ib796ef8e9896804c56936f23f67dcd3fc12900fd

Revision 38a904dd (diff)
Added by Mark Abraham 7 months ago

Improve mimic module

File naming did not conform to style. Improved some include structure. This
module no longer needs to depend on gmxpreprocess.

Preparation for #2877

Change-Id: I0a3a4e72828f3e47f28d0d7420e5c65e580d5428

Revision 50eeab5a (diff)
Added by Mark Abraham 7 months ago

Clean up mdrun help description

Details about how unix signals are implemented can go in the user
guide.

The nice level does not actually change with whether mpirun is used,
so we should not say so.

Mentions of "experimental" features that have been in the code for a
decade don't belong here.

Fixed a repeated word.

Preparation for #2877

Change-Id: Ib68ab15717e52a9155be869581c18ba21513f067

Revision 475a9e22 (diff)
Added by Mark Abraham 7 months ago

Convert gmx dump to module

Used Options and more std::string.

Minor fixes and improvements to text. Removed the report of the known
bug, replacing it with a TODO.

Added eftRunInput to the filename option types understood by
FileNameOption machinery, so that tools that only operate on .tpr
files work properly. This is then used for gmx dump -s.

Refs #2877

Change-Id: I5bb1c73c39a4cdd820735f894d4cb55d171afd48

Revision ecf8bc2a (diff)
Added by Mark Abraham 7 months ago

Move DomdecOptions into its own header

This reduces compilation coupling and prepares for implementing proper
Options support into mdrun. Moved content into gmx namespace and
replaced gmx_bool. Renamed nr enum members to Count for future
compatibility with the new enumeration helpers.

Refs #2877

Change-Id: Ib5f5889111f858579f594f4c76f3aa8c222403b2

Revision 9c87cba3 (diff)
Added by Mark Abraham 7 months ago

Move MDModules initialization earlier

This will permit extending the functionality to also provide
command-line options and help descriptions for gmx tools.

Moved more functionality into Mdrunner::Builder

It also permits the Mdrunner constructor that is normally used to
prompt the construction of a properly formed MDModules. Removed a
comment about default initialization that is a normal fact of life
with constructors. Updating it would be wordy and no real value.

Refs #2877

Change-Id: I70126f297422a9076484083d461b0b003ae2e23b

Revision dfd44cd0 (diff)
Added by Mark Abraham 7 months ago

Make ImdSession into a Pimpl-ed class with factory function

This prepares to make IMD into a proper module. No
functionality changes in this commit.

Replaced gmx_bool with bool

Used fast returns when IMD is inactive, for better
readability of code.

Refs #2877

Change-Id: Ibbe8c452f6f480e9a357fe1b87da3ab0ae166317

Revision 728ff032 (diff)
Added by Mark Abraham 7 months ago

Start making IMD and swap model IMDModule

Moved MDModules to mdrun code module (to relieve cyclic dependency
that would otherwise result), because it is a very high level thing
that is intended to be aware of very many components.

Refs #2877

Change-Id: Ia7d1422bab887f768f8abed01edcbc4fb290dfeb

History

#1 Updated by Gerrit Code Review Bot 8 months ago

Gerrit received a related patchset '1' for Issue #2877.
Uploader: Mark Abraham ()
Change-Id: gromacs~master~Ib796ef8e9896804c56936f23f67dcd3fc12900fd
Gerrit URL: https://gerrit.gromacs.org/9266

#2 Updated by Gerrit Code Review Bot 8 months ago

Gerrit received a related patchset '1' for Issue #2877.
Uploader: Mark Abraham ()
Change-Id: gromacs~master~I5bb1c73c39a4cdd820735f894d4cb55d171afd48
Gerrit URL: https://gerrit.gromacs.org/9268

#3 Updated by Gerrit Code Review Bot 7 months ago

Gerrit received a related patchset '1' for Issue #2877.
Uploader: Mark Abraham ()
Change-Id: gromacs~master~Ib5f5889111f858579f594f4c76f3aa8c222403b2
Gerrit URL: https://gerrit.gromacs.org/9302

#4 Updated by Gerrit Code Review Bot 7 months ago

Gerrit received a related patchset '1' for Issue #2877.
Uploader: Mark Abraham ()
Change-Id: gromacs~master~Ib68ab15717e52a9155be869581c18ba21513f067
Gerrit URL: https://gerrit.gromacs.org/9339

#5 Updated by Gerrit Code Review Bot 7 months ago

Gerrit received a related patchset '1' for Issue #2877.
Uploader: Mark Abraham ()
Change-Id: gromacs~master~I0a3a4e72828f3e47f28d0d7420e5c65e580d5428
Gerrit URL: https://gerrit.gromacs.org/9340

#6 Updated by Gerrit Code Review Bot 7 months ago

Gerrit received a related patchset '3' for Issue #2877.
Uploader: Mark Abraham ()
Change-Id: gromacs~master~I70126f297422a9076484083d461b0b003ae2e23b
Gerrit URL: https://gerrit.gromacs.org/9374

#7 Updated by Gerrit Code Review Bot 7 months ago

Gerrit received a related patchset '1' for Issue #2877.
Uploader: Mark Abraham ()
Change-Id: gromacs~master~Ibbe8c452f6f480e9a357fe1b87da3ab0ae166317
Gerrit URL: https://gerrit.gromacs.org/9383

#8 Updated by Gerrit Code Review Bot 7 months ago

Gerrit received a related patchset '1' for Issue #2877.
Uploader: Mark Abraham ()
Change-Id: gromacs~master~Ia7d1422bab887f768f8abed01edcbc4fb290dfeb
Gerrit URL: https://gerrit.gromacs.org/9388

Also available in: Atom PDF