Skip to main content

GroLogs: A log reader for the software GROMACS

Python PEP8 saythanks saythanks

GroLogs was started out of a need to quickly check thet status update of molecular dynamic simulations using GROMACS. By reading the log files and the steps within the log files we can calculate the time in nanoseconds of the simulation using this simple formula


nanoseconds = steps / 500,000

and output to a beautiful table.

Quick Start

First you will need authentication to the cluster or server running the Molecular Dynamics simulation for GROMACS.

First is simple

  1. Register your RSA key with the dedicated server so you don't have to be password prompted when SSH'ing into the server

GroLogs class takes 4 arguments

  • target_directory - target directory where all your log files for this particular experiment will be
  • log_file_name - the name of the log file. Traditionally, I have everything called as md_3.log
  • username - the username registered on the cluster or particular machine
  • hostname - the hostname or ip address of the target server that we want to extrapolate information.

Initialize the class like so:


log_reader = GroLogs('target_directory/*', 'md_3.log', username, hostname)

and then generate a table to output the results


log_reader.generate_table()

and here is an example of the output:


+-------------------------------------------------------+----------+-----------+
|                   --- File Path ---                   |   Step   | Time (ns) |
+-------------------------------------------------------+----------+-----------+
|  file/path/to/experiment/trial_2/                     | 60947999 |  121.896  |
+-------------------------------------------------------+----------+-----------+
|  file/path/to/experiment/trial_3/                     | 68454999 |  136.91   |
+-------------------------------------------------------+----------+-----------+
|  file/path/to/experiment/trial_3/                     | 28107999 |  56.216   |
+-------------------------------------------------------+----------+-----------+

Announcements

  • Work has began! Dec 4th
  • 0.0.1 version released Dec 4th LogReader
  • 0.0.2 version released -> authentication can be passed in and name changed to GroLogs, more documentation!

Installation

GroLogs is going to be distribute via PyPi and as the content store grows we can expand it to other pieces of software making it accessible to all regardless of what you use. Alternatively, you could have a glance at the source code and copy/paste it yourself.

To install the reader


python -m pip install grologs

Structure ofGroLogs

Currently, the main subpackages are:

  • grologs: logreader main class.

Genesis

LogReader was created because I noticed I was using the same variable across multiple scripts and figure it would be useful for folk to have.


External links

Metadata

Release files for grologs 0.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for grologs 0.0.2
File Size Uploaded Provenance Actions
grologs-0.0.2.tar.gz 4.5 kB Without provenance Details for grologs-0.0.2.tar.gz

Release files / grologs-0.0.2.tar.gz

Download URL grologs-0.0.2.tar.gz
Size 4.5 kB
Tags Source
SHA-256 checksum
How to use checksums
82c90b07e09aadf045383c277963051baecc6d195cb084378efb1ddb8f0dd2e4
BLAKE2b-256 checksum
How to use checksums
f40289c46fe1d7737442fea5a6866fbe23315e429c2adeab6d3d9b274bcf921c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.6

Security for grologs 0.0.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.0.2 This release

1 release file No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page