PhasesResearchLab / ESPEI-datasets

Datasets to be used by ESPEI. CC-BY-4.0
Creative Commons Attribution 4.0 International
12 stars 17 forks source link

Problems about generation of cu-mg_dft.tdb #19

Closed cyrusfeng1997 closed 3 years ago

cyrusfeng1997 commented 3 years ago

Hi! I was trying to reproduce example by following the tutorial presented on the website. My question maybe dumb, because I'm only beginner of python. When I try to use espei --input espei-in.yaml to generate cu-mg_dft.tdb file, why here is always a problem which is that 'Table' do not have attribute write_back. I downloaded espei by using conda and already cloned datasets of Cu-Mg example. I have no clue how to solve this problem. May I have some helps on this problem? Thank you! the following is the screenshot of command lines. espei_problem

bocklund commented 3 years ago

Hi @cyrusfeng1997, this was a known bug that is fixed in ESPEI 0.7.8 and later, but you have ESPEI 0.7.6.

Updating to the latest version should fix this: conda install -c conda-forge espei=0.7.10

cyrusfeng1997 commented 3 years ago

Hi @cyrusfeng1997, this was a known bug that is fixed in ESPEI 0.7.8 and later, but you have ESPEI 0.7.6.

Updating to the latest version should fix this: conda install -c conda-forge espei=0.7.10

Hi! First of all, Thank you for your help! I tried install new version of espei, it seems that there are some conflicts. Is there any solution for this problem? Is there a recommended version of python(like 3.9 latest one?) does this problem come from windows systems ?Thank you very much!
image

bocklund commented 3 years ago

You get this UnsatisfiableError when one or more packages you have installed already have conflicts with some of the packages in the dependency tree of the package you're trying to install (ESPEI in this case). The strictness of the conda's dependency solver prevents you from breaking your environment by installing new packages that share a common, mutually incompatible dependency. The easiest workaround is to create a new conda environment for each set of packages you work on.

For example, you could install ESPEI and Jupyter into a new environment called calphad-env: conda create -n calphad-env -c conda-forge espei=0.7.10 jupyter. Then you can activate that environment with conda activate calphad-env and work as usual, with ESPEI and all it's dependencies isolated from your base environment and any other environments you create. You can find more documentation on conda environments here.

ESPEI and its dependencies should all support Python 3.6, 3.7, 3.8, and 3.9. To conda, Python is just another package so you could specify a particular version (e.g. conda create -n calphad-env -c conda-forge espei=0.7.10 jupyter python=3.9) or you can let conda choose an appropriate compatible version for you.

cyrusfeng1997 commented 3 years ago

Hi! Actually, I already created a new environment called espei when I found problems presented above. However, I removed this environment and used codes above to create a completely new environment, but there are still conflicts between espei 0.7.10 and python 3.9. I tried espei 0.7.9 and python 3.8. The outcomes are same. The following screenshot includes the details about conflicts. Thank you again! image

bocklund commented 3 years ago

Okay, I was able to reproduce this and track this down. I think the mention of bibtexparser was a false positive, since I can conda create -n calphad-env -c conda-forge bibtexparser python=3.8 just fine.

It looks like the ESPEI feedstock had an outdated dependency pin ipopt<3.13 that was conflicting with cyipopt>=0.3. I just merged https://github.com/conda-forge/espei-feedstock/pull/33 and now conda-forge will rebuild the package with the new dependencies. In about 1 hour, everything should be propagated to the conda-forge channel and you should be able to try installing again. Perhaps it would even work in your existing environment.

Sorry for the inconvenience and thank you for your help to uncover this!

cyrusfeng1997 commented 3 years ago

Thank you very much!

bocklund commented 3 years ago

Hi @cyrusfeng1997,

Following up on this. Did the new build work for you?