Skip to content

Several bugs in Lammps IO #378

@orionarcher

Description

@orionarcher

I've encountered several bugs in the LAMMPS IO when using 'opls' dihedral type and 'cvff' improper style. I believe that I can fix them, but I am wondering if those fixs would be merged.

One of the errors is already addressed by PR #349, but that has been open for two years.

The other error occurs in the canonical_dihedral function in lammps_parser.py.

    def canonical_dihedral(self, params, dihedral, direction='into'):
        """Convert from the canonical form of this interaction. """

        if direction == 'into':
            converted_dihedral = dihedral  # Default
            if dihedral == ProperPeriodicDihedral:  # Proper dihedral
                convertfunc = convert_dihedral_from_proper_to_trig
                converted_dihedral = TrigDihedral
            elif dihedral == ImproperHarmonicDihedral:
                convertfunc = convert_nothing
            elif dihedral == RbDihedral:
                convertfunc = convert_dihedral_from_RB_to_trig
                converted_dihedral = TrigDihedral
            elif dihedral == FourierDihedral:
                convertfunc = convert_dihedral_from_fourier_to_trig
                converted_dihedral = TrigDihedral
                # Now actually convert the dihedral.
            params = convertfunc(params)

If dihedral == TrigDihedral at the beginning, then convertfunc will never be defined and an error will occur. An easy fix.

If I create a PR and fix these issues, is any developer available to review and merge them? I'd like to contribute but it appears the code has not been updated in some time.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions