abelcarreras / DynaPhoPy

Phonon anharmonicity analysis from molecular dynamics
http://abelcarreras.github.io/DynaPhoPy/
MIT License
113 stars 51 forks source link

Question on Installation #25

Closed LePingKYXK closed 1 year ago

LePingKYXK commented 1 year ago

Hi Abel, I found the link to the Anaconda-supported installation of DynaPhoPy https://anaconda.org/conda-forge/dynaphopy. It provides an alternate way conda install -c conda-forge dynaphopy to install DynaPhonPy,

However, neither the GitHub nor the DynaPhoPy website mentioned via conda install method.

The ways that I have seen are pip install dynaphopy --user or python setup.py install --user from GitHub, python setup.py install --user or python setup_openmp.py install --user from DynaPhoPy.

I was wondering if the conda install method is recommended and who maintains it.

Best regards, Huan

abelcarreras commented 1 year ago

Hi Huan,

Unfortunately, I don't know who is the maintainer of dynaphopy's conda package. I'm currently maintaining only gitHub and pypi repositories.

LePingKYXK commented 1 year ago

Hi Huan,

Unfortunately, I don't know who is the maintainer of dynaphopy's conda package. I'm currently maintaining only gitHub and pypi repositories.

Hi Abel, Thank you very much for your quick response. I will follow the python setup.py install --user method. But I have additional two questions.

(1) I am not sure about the --user option. Should I keep using --user or change it to a specific username as --huan?

(2) In the requirements.txt file, I found

phonopy >=2.0
# Note: dynaphopy also may work with phonopy <=1.12.6.26, >=1.9.6
numpy>=1.8.2
scipy
matplotlib
seekpath
PyYAML
windows-curses; sys_platform == 'windows'

Since I am using Linux system, should I just comment out the line windows-curses; sys_platform == 'windows', or should I change this line to sys_platform == 'Linuxe'?

Thanks again. Huan

abelcarreras commented 1 year ago

In modern platforms I think you don't need even --user option anymore. This was introduced in case you didn't have administrator rights, so the package will be installed under the user home dir. I think now this is done automatically by pip.

Regarding requirements.txt you can just install them with pip:

pip install -r requirements.txt

You don't need to comment anything.

Anyway, if you just want to install dynaphopy I would recommend to just install it from PyPi repository (this is the easiest way):

pip install dynaphopy

This should work even inside a conda environment.

LePingKYXK commented 1 year ago

In modern platforms I think you don't need even --user option anymore. This was introduced in case you didn't have administrator rights, so the package will be installed under the user home dir. I think now this is done automatically by pip.

Regarding requirements.txt you can just install them with pip:

pip install -r requirements.txt

You don't need to comment anything.

Anyway, if you just want to install dynaphopy I would recommend to just install it from PyPi repository (this is the easiest way):

pip install dynaphopy

This should work even inside a conda environment.

Thank you for your guidance. pip install dynaphopy works well in my conda environment. It does not need to download the DynaPhoPy.tar.gz or git clone from GitHub. However, I found that the direct “pip install version of DynaPhoPy” does not have the scripts folder, which contains several scripts and files, e.g. concath5, dynaphopy, fitdata, qha_extract, qha_quasiparticle.py, and rfc_caclc.

Should I move the "scripts" folder to the conda environment directory?

abelcarreras commented 1 year ago

If these scripts are not included in the installation then you can place them in any location that is included in your $PATH environment variable for convenience (e.g. /usr/bin/, /usr/local/bin, etc.)

LePingKYXK commented 1 year ago

If these scripts are not included in the installation then you can place them in any location that is included in your $PATH environment variable for convenience (e.g. /usr/bin/, /usr/local/bin, etc.)

Thanks a lot for your help.