Isra3l / ligpargen

MIT License
54 stars 20 forks source link

Test example failes and I can't do successfully even the simplest example #22

Closed iGulitch closed 1 month ago

iGulitch commented 4 months ago

Hello, everyone!

I installed LigParGen into a Singularity container based on condaforge/miniforge:latest base image. I followed the LigParGen installation instructions strictly. However :

  1. Test example fails, namely python -m unittest test_ligpargen/test_ligpargen.p gives :
.............F.........
======================================================================
FAIL: test_atoms (test_ligpargen.test_ligpargen.test_ligpargen)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/root/Work/ligpargen/ligpargen/test_ligpargen/test_ligpargen.py", line 134, in test_atoms
    self.assertEqual(atoms_benzene, golden_atoms_benzene)
AssertionError: Lists differ: ['1  [536 chars]4792045  13.471357010453586  MOL  1  0  0  0  [1567 chars] H1'] != ['1  [536 chars]4792063  13.471357010453614  MOL  1  0  0  0  [1570 chars] H1']

First differing element 4:
'5  C[46 chars]4792045  13.471357010453586  MOL  1  0  0  0  [46 chars]  C6'
'5  C[46 chars]4792063  13.471357010453614  MOL  1  0  0  0  [46 chars]  C6'

Diff is 4037 characters long. Set self.maxDiff to None to see it.

----------------------------------------------------------------------
Ran 23 tests in 0.575s

FAILED (failures=1)
  1. the command ligpargen -s 'CC' for the simplest example I can imagine, i.e. ethane, gives the output :
Traceback (most recent call last):
  File "/opt/conda/envs/py37/bin/ligpargen", line 33, in <module>
    sys.exit(load_entry_point('LigPargen', 'console_scripts', 'ligpargen')())
  File "/root/Work/ligpargen/ligpargen/ligpargen/ligpargen.py", line 496, in main
    molname=args.molname, workdir= args.path, debug= args.debug)
  File "<string>", line 17, in __init__
  File "/root/Work/ligpargen/ligpargen/ligpargen/ligpargen.py", line 190, in __post_init__
    self.workdir, self.debug)
  File "/root/Work/ligpargen/ligpargen/ligpargen/tools/boss.py", line 208, in run
    shutil.copyfile('plt.pdb', pdbFile)
  File "/opt/conda/envs/py37/lib/python3.7/shutil.py", line 120, in copyfile
    with open(src, 'rb') as fsrc:
FileNotFoundError: [Errno 2] No such file or directory: 'plt.pdb'

What could be the reason? I digged into the code and saw that, indeed, I didn't get where the file 'plt.pdb' was created that is to be copied further into pdbFile.

UPD

Having read the previous issues, I added the 32-bit support to my 64-bit machine as suggested :

dpkg --add-architecture i386
apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386

then, the output of p. 2 changed to :

Traceback (most recent call last):
  File "/opt/conda/envs/py37/bin/ligpargen", line 33, in <module>
    sys.exit(load_entry_point('LigPargen', 'console_scripts', 'ligpargen')())
  File "/root/Work/ligpargen/ligpargen/ligpargen/ligpargen.py", line 496, in main
    molname=args.molname, workdir= args.path, debug= args.debug)
  File "<string>", line 17, in __init__
  File "/root/Work/ligpargen/ligpargen/ligpargen/ligpargen.py", line 192, in __post_init__
    moleculeA = Molecule.fromBOSS(zmatName, outFile, pdbFile, moleculeA.shiftX, moleculeA.shiftY, moleculeA.shiftZ)
  File "/root/Work/ligpargen/ligpargen/ligpargen/topology/Molecule.py", line 154, in fromBOSS
    atoms, numberOfStructuralDummyAtoms = cls._getAtoms(cls, zmatData, pdbfile)
  File "/root/Work/ligpargen/ligpargen/ligpargen/topology/Molecule.py", line 473, in _getAtoms
    atomsLines = re.search(r'BOSS(.*?)Geometry', zmatData, re.DOTALL).group().splitlines()[1:-1]
AttributeError: 'NoneType' object has no attribute 'group'

whereas the test example still fails. I found in the closed issues that someone faced the same problem earlier and @Isra3l assumed this was caused by the usage of BOSS v. 4.9 and suggested to try BOSS v. 5.0 instead. Indeed, I'm using BOSS v. 4.9, since I simply can't get v 5.0, because Prof. Jorgensen doesn't reply to emails. It's not only me who contacted Prof. Jorgensen, but also a few colleagues of mine. Does anybody know how to get this BOSS v. 5.0???