better not have a "Lattice" object with "lattice" parameter
This commit is contained in:
parent
41e5f0c06c
commit
5202da13ea
|
@ -18,7 +18,7 @@ from . import grid_filters # noqa
|
||||||
#For example, '_colormap' containsa class called 'Colormap' which is imported as 'damask.Colormap'.
|
#For example, '_colormap' containsa class called 'Colormap' which is imported as 'damask.Colormap'.
|
||||||
from ._rotation import Rotation # noqa
|
from ._rotation import Rotation # noqa
|
||||||
from ._lattice_family import LatticeFamily # noqa
|
from ._lattice_family import LatticeFamily # noqa
|
||||||
from ._lattice import Lattice # noqa
|
from ._crystal import Crystal # noqa
|
||||||
from ._orientation import Orientation # noqa
|
from ._orientation import Orientation # noqa
|
||||||
from ._table import Table # noqa
|
from ._table import Table # noqa
|
||||||
from ._vtk import VTK # noqa
|
from ._vtk import VTK # noqa
|
||||||
|
|
|
@ -26,7 +26,7 @@ lattice_symmetries = {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
class Lattice(LatticeFamily):
|
class Crystal(LatticeFamily):
|
||||||
"""Lattice."""
|
"""Lattice."""
|
||||||
|
|
||||||
def __init__(self,*,
|
def __init__(self,*,
|
|
@ -4,7 +4,7 @@ import copy
|
||||||
import numpy as np
|
import numpy as np
|
||||||
|
|
||||||
from . import Rotation
|
from . import Rotation
|
||||||
from . import Lattice
|
from . import Crystal
|
||||||
from . import util
|
from . import util
|
||||||
from . import tensor
|
from . import tensor
|
||||||
|
|
||||||
|
@ -55,7 +55,7 @@ _parameter_doc = \
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
|
||||||
class Orientation(Rotation,Lattice):
|
class Orientation(Rotation,Crystal):
|
||||||
"""
|
"""
|
||||||
Representation of crystallographic orientation as combination of rotation and either crystal family or Bravais lattice.
|
Representation of crystallographic orientation as combination of rotation and either crystal family or Bravais lattice.
|
||||||
|
|
||||||
|
@ -131,7 +131,7 @@ class Orientation(Rotation,Lattice):
|
||||||
|
|
||||||
"""
|
"""
|
||||||
Rotation.__init__(self,rotation)
|
Rotation.__init__(self,rotation)
|
||||||
Lattice.__init__(self,family=family, lattice=lattice,
|
Crystal.__init__(self,family=family, lattice=lattice,
|
||||||
a=a,b=b,c=c, alpha=alpha,beta=beta,gamma=gamma, degrees=degrees)
|
a=a,b=b,c=c, alpha=alpha,beta=beta,gamma=gamma, degrees=degrees)
|
||||||
|
|
||||||
|
|
||||||
|
@ -831,7 +831,7 @@ class Orientation(Rotation,Lattice):
|
||||||
|
|
||||||
"""
|
"""
|
||||||
lattice,o = self.relation_operations(model)
|
lattice,o = self.relation_operations(model)
|
||||||
target = Lattice(lattice=lattice)
|
target = Crystal(lattice=lattice)
|
||||||
o = o.broadcast_to(o.shape+self.shape,mode='right')
|
o = o.broadcast_to(o.shape+self.shape,mode='right')
|
||||||
return Orientation(rotation=o*Rotation(self.quaternion).broadcast_to(o.shape,mode='left'),
|
return Orientation(rotation=o*Rotation(self.quaternion).broadcast_to(o.shape,mode='left'),
|
||||||
lattice=lattice,
|
lattice=lattice,
|
||||||
|
|
|
@ -1,19 +1,19 @@
|
||||||
import pytest
|
import pytest
|
||||||
import numpy as np
|
import numpy as np
|
||||||
|
|
||||||
from damask import Lattice
|
from damask import Crystal
|
||||||
|
|
||||||
class TestLattice:
|
class TestCrystal:
|
||||||
|
|
||||||
def test_double_to_lattice(self):
|
def test_double_to_lattice(self):
|
||||||
L = Lattice(lattice='cF')
|
c = Crystal(lattice='cF')
|
||||||
with pytest.raises(KeyError):
|
with pytest.raises(KeyError):
|
||||||
L.to_lattice(direction=np.ones(3),plane=np.ones(3))
|
c.to_lattice(direction=np.ones(3),plane=np.ones(3))
|
||||||
|
|
||||||
def test_double_to_frame(self):
|
def test_double_to_frame(self):
|
||||||
L = Lattice(lattice='cF')
|
c = Crystal(lattice='cF')
|
||||||
with pytest.raises(KeyError):
|
with pytest.raises(KeyError):
|
||||||
L.to_frame(uvw=np.ones(3),hkl=np.ones(3))
|
c.to_frame(uvw=np.ones(3),hkl=np.ones(3))
|
||||||
|
|
||||||
@pytest.mark.parametrize('lattice,a,b,c,alpha,beta,gamma',
|
@pytest.mark.parametrize('lattice,a,b,c,alpha,beta,gamma',
|
||||||
[
|
[
|
||||||
|
@ -25,10 +25,10 @@ class TestLattice:
|
||||||
('cF',1.0,1.0,None,np.pi/2,np.pi/2,np.pi/2),
|
('cF',1.0,1.0,None,np.pi/2,np.pi/2,np.pi/2),
|
||||||
])
|
])
|
||||||
def test_bases_contraction(self,lattice,a,b,c,alpha,beta,gamma):
|
def test_bases_contraction(self,lattice,a,b,c,alpha,beta,gamma):
|
||||||
L = Lattice(lattice=lattice,
|
c = Crystal(lattice=lattice,
|
||||||
a=a,b=b,c=c,
|
a=a,b=b,c=c,
|
||||||
alpha=alpha,beta=beta,gamma=gamma)
|
alpha=alpha,beta=beta,gamma=gamma)
|
||||||
assert np.allclose(np.eye(3),np.einsum('ik,jk',L.basis_real,L.basis_reciprocal))
|
assert np.allclose(np.eye(3),np.einsum('ik,jk',c.basis_real,c.basis_reciprocal))
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.parametrize('keyFrame,keyLattice',[('uvw','direction'),('hkl','plane'),])
|
@pytest.mark.parametrize('keyFrame,keyLattice',[('uvw','direction'),('hkl','plane'),])
|
||||||
|
@ -50,15 +50,15 @@ class TestLattice:
|
||||||
('cF',1.0,1.0,1.0,np.pi/2,np.pi/2,np.pi/2),
|
('cF',1.0,1.0,1.0,np.pi/2,np.pi/2,np.pi/2),
|
||||||
])
|
])
|
||||||
def test_to_frame_to_lattice(self,lattice,a,b,c,alpha,beta,gamma,vector,keyFrame,keyLattice):
|
def test_to_frame_to_lattice(self,lattice,a,b,c,alpha,beta,gamma,vector,keyFrame,keyLattice):
|
||||||
L = Lattice(lattice=lattice,
|
c = Crystal(lattice=lattice,
|
||||||
a=a,b=b,c=c,
|
a=a,b=b,c=c,
|
||||||
alpha=alpha,beta=beta,gamma=gamma)
|
alpha=alpha,beta=beta,gamma=gamma)
|
||||||
assert np.allclose(vector,
|
assert np.allclose(vector,
|
||||||
L.to_frame(**{keyFrame:L.to_lattice(**{keyLattice:vector})}))
|
c.to_frame(**{keyFrame:c.to_lattice(**{keyLattice:vector})}))
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.parametrize('model',['Bain','KS','GT','GT_prime','NW','Pitsch','Burgers'])
|
@pytest.mark.parametrize('model',['Bain','KS','GT','GT_prime','NW','Pitsch','Burgers'])
|
||||||
def test_relationship_definition(self,model):
|
def test_relationship_definition(self,model):
|
||||||
m,o = list(Lattice._orientation_relationships[model])
|
m,o = list(Crystal._orientation_relationships[model])
|
||||||
assert Lattice._orientation_relationships[model][m].shape[:-1] == \
|
assert Crystal._orientation_relationships[model][m].shape[:-1] == \
|
||||||
Lattice._orientation_relationships[model][o].shape[:-1]
|
Crystal._orientation_relationships[model][o].shape[:-1]
|
Loading…
Reference in New Issue