rohskopf / modecode

Massively parallel vibrational mode calculator.
21 stars 8 forks source link

Some problem in my installation #15

Open rookie-coder99 opened 10 months ago

rookie-coder99 commented 10 months ago

Dear rohskopf,

First of all, thank you very much for open-sourcing the modecode code. It has been very helpful to me. However, I've encountered a few issues during the installation process.

First, I followed the installation guide. I successfully built the shared library for LAMMPS and obtained the liblammps_g++_openmpi.so file. Then, I modified the paths for LAMMPSDIR and LAMMPSLIB in the Makefile located in the modecode/src directory. I pointed them to my lammps/src and the path of liblammps_g++_openmpi.so, respectively. Additionally, I added the path to modecode to my system's PATH environment variable.

However, I'm unable to locate the modecode software. Subsequently, I copied the modecode executable to /usr/local/bin/. Upon running it again, I encountered the following error: [WARNING] yaksa: 1 leaked handle pool objects.

I want to express my gratitude for your work.

rohskopf commented 10 months ago

Hello, the software is in the src directory here, and you seem to have built it properly. Unfortunately when running you get the memory leak error, but I am not sure why. I have never seen that error before, therefore hard to debug.

rookie-coder99 commented 10 months ago

Thank you for your reply. I‘m not sure if it has something to do with lammps version. I've tried 2Aug2023 and 16Mar18 version.

I am researching the plastic deformation of amorphous solids, and I want to calculate the force constant matrix to compute vibrational frequencies and their correspondence with deformation mechanisms. Your open-source code is a great tool for this, but I'm encountering some installation issues.

I've attempted to use the "dynamical_matrix" command in LAMMPS for calculations and then post-process for analysis. Is it possible for me to utilize a part of your code to assist with these calculations? I would greatly appreciate any valuable advice you can offer.

rohskopf commented 10 months ago

The dynamical matrix command is supported by LAMMPS and works well. If you have the output from there, you essentially have the Hessian, now you just need to diagonalize it.

rohskopf commented 10 months ago

Although this script reads a slightly different format, you could diagonalize with this simple Python script:

https://github.com/rohskopf/modecode/blob/main/tools/calc_eig.py

There might need to be small modifications to read the output from the LAMMPS dynamical matrix command.

rookie-coder99 commented 10 months ago

Thank you very much for your reply!