heprom / pymicro

A Python package to work with material microstructures and 3d data sets
http://pymicro.readthedocs.io
MIT License
42 stars 22 forks source link

Unable to run pymicro.crystal.texture.Polefigure #1

Closed arunpksh closed 4 years ago

arunpksh commented 4 years ago

Dear pymicro team,

I am trying to understand pymicro and run the examples to plot pole figures. I am executing the examples:

Au_6grains_pole_figure.py Cu_111_pole_figure.py Cu_200_pole_figure.py

Specifically, I am executing the following commands:

from pymicro.crystal.microstructure import Microstructure, Grain, Orientation from pymicro.crystal.texture import PoleFigure from matplotlib import pyplot as plt, colors, cm

eulers = Orientation.read_euler_txt('examples/data/Cu_111.dat') micro = Microstructure(name='Cu_111') for index in eulers: micro.grains.append(Grain(index, eulers[index]))

pf = PoleFigure(hkl='111', proj='stereo', microstructure=micro, verbose=False)

After executing of the last command, I get the following error:

Traceback (most recent call last): File "<stdin>", line 1, in <module> File "pymicro/crystal/texture.py", line 49, in __init__ self.set_hkl_poles(hkl) File "pymicro/crystal/texture.py", line 80, in set_hkl_poles hkl_planes = self.lattice.get_hkl_family(self.family) File "pymicro/crystal/lattice.py", line 747, in get_hkl_family planes = HklPlane.get_family(hkl, lattice=self, crystal_structure=self._symmetry) File "pymicro/crystal/lattice.py", line 1196, in get_family syms = Lattice.symmetry(crystal_structure) File "pymicro/crystal/lattice.py", line 340, in symmetry return crystal_structure.symmetry_operators() AttributeError: 'str' object has no attribute 'symmetry_operators'

If I now run the command by explicitly specifying the crystal lattice as

pf = PoleFigure(hkl='111', proj='stereo', lattice='cubic',microstructure=micro, verbose=False)

I obtain the following error message:

Traceback (most recent call last): File "<stdin>", line 1, in <module> File "pymicro/crystal/texture.py", line 49, in __init__ self.set_hkl_poles(hkl) File "pymicro/crystal/texture.py", line 80, in set_hkl_poles hkl_planes = self.lattice.get_hkl_family(self.family) AttributeError: 'str' object has no attribute 'get_hkl_family'

I am not sure how to proceed, since the hkl family has been provided to the command.

Could you please help me.

Rgds, Arun Prakash

heprom commented 4 years ago

Dear Arun,

Thank you for your report, this was due to a bug introduced recently and that has been fixed since then. Could you confirm that this is working now with the latest version ?

Best regards Henry

heprom commented 4 years ago

Closing this issue since it has been resolved

heprom commented 4 years ago

Closing this issue since it has been resolved

heprom commented 4 years ago

Closing this issue since it has been resolved

heprom commented 4 years ago

Closing this issue since it has been resolved