polishing
This commit is contained in:
parent
1b2d892b42
commit
39c0bc9de6
|
@ -1,5 +1,3 @@
|
|||
import os.path
|
||||
|
||||
import numpy as np
|
||||
import h5py
|
||||
|
||||
|
@ -159,18 +157,18 @@ class ConfigMaterial(Config):
|
|||
f = h5py.File(fname,'r')
|
||||
|
||||
if grain_data is None:
|
||||
phase = f[os.path.join(b,c,phases)][()].flatten()
|
||||
O = Rotation.from_Euler_angles(f[os.path.join(b,c,Euler_angles)]).as_quaternion().reshape(-1,4) # noqa
|
||||
phase = f['/'.join((b,c,phases))][()].flatten()
|
||||
O = Rotation.from_Euler_angles(f['/'.join((b,c,Euler_angles))]).as_quaternion().reshape(-1,4) # noqa
|
||||
_,idx = np.unique(np.hstack([O,phase.reshape(-1,1)]),return_index=True,axis=0)
|
||||
idx = np.sort(idx)
|
||||
else:
|
||||
phase = f[os.path.join(b,grain_data,phases)][()]
|
||||
O = Rotation.from_Euler_angles(f[os.path.join(b,grain_data,Euler_angles)]).as_quaternion() # noqa
|
||||
phase = f['/'.join((b,grain_data,phases))][()]
|
||||
O = Rotation.from_Euler_angles(f['/'.join((b,grain_data,Euler_angles))]).as_quaternion() # noqa
|
||||
idx = np.arange(phase.size)
|
||||
|
||||
if cell_ensemble_data is not None and phase_names is not None:
|
||||
try:
|
||||
names = np.array([s.decode() for s in f[os.path.join(b,cell_ensemble_data,phase_names)]])
|
||||
names = np.array([s.decode() for s in f['/'.join((b,cell_ensemble_data,phase_names))]])
|
||||
phase = names[phase]
|
||||
except KeyError:
|
||||
pass
|
||||
|
|
|
@ -305,18 +305,18 @@ class Grid:
|
|||
c = util.DREAM3D_cell_data_group(fname) if cell_data is None else cell_data
|
||||
f = h5py.File(fname, 'r')
|
||||
|
||||
cells = f[os.path.join(b,'_SIMPL_GEOMETRY','DIMENSIONS')][()]
|
||||
size = f[os.path.join(b,'_SIMPL_GEOMETRY','SPACING')] * cells
|
||||
origin = f[os.path.join(b,'_SIMPL_GEOMETRY','ORIGIN')][()]
|
||||
cells = f['/'.join((b,'_SIMPL_GEOMETRY','DIMENSIONS'))][()]
|
||||
size = f['/'.join((b,'_SIMPL_GEOMETRY','SPACING'))] * cells
|
||||
origin = f['/'.join((b,'_SIMPL_GEOMETRY','ORIGIN'))][()]
|
||||
|
||||
if feature_IDs is None:
|
||||
phase = f[os.path.join(b,c,phases)][()].reshape(-1,1)
|
||||
O = Rotation.from_Euler_angles(f[os.path.join(b,c,Euler_angles)]).as_quaternion().reshape(-1,4) # noqa
|
||||
phase = f['/'.join((b,c,phases))][()].reshape(-1,1)
|
||||
O = Rotation.from_Euler_angles(f['/'.join((b,c,Euler_angles))]).as_quaternion().reshape(-1,4) # noqa
|
||||
unique,unique_inverse = np.unique(np.hstack([O,phase]),return_inverse=True,axis=0)
|
||||
ma = np.arange(cells.prod()) if len(unique) == cells.prod() else \
|
||||
np.arange(unique.size)[np.argsort(pd.unique(unique_inverse))][unique_inverse]
|
||||
else:
|
||||
ma = f[os.path.join(b,c,feature_IDs)][()].flatten()
|
||||
ma = f['/'.join((b,c,feature_IDs))][()].flatten()
|
||||
|
||||
return Grid(ma.reshape(cells,order='F'),size,origin,util.execution_stamp('Grid','load_DREAM3D'))
|
||||
|
||||
|
|
|
@ -420,11 +420,8 @@ class Result:
|
|||
for d in f[group].keys():
|
||||
try:
|
||||
dataset = f['/'.join([group,d])]
|
||||
if un in dataset.attrs:
|
||||
unit = f" / {dataset.attrs[un]}" if h5py3 else \
|
||||
f" / {dataset.attrs[un].decode()}"
|
||||
else:
|
||||
unit = ''
|
||||
description = dataset.attrs[de] if h5py3 else \
|
||||
dataset.attrs[de].decode()
|
||||
message += f' {d}{unit}: {description}\n'
|
||||
|
@ -1127,8 +1124,8 @@ class Result:
|
|||
dataset.attrs[l.lower()]=v if h5py3 else v.encode()
|
||||
creator = dataset.attrs['creator'] if h5py3 else \
|
||||
dataset.attrs['creator'].decode()
|
||||
dataset.attrs['creator'] = f"damask.Result.{creator} v{damask.version}" if h5py3 else \
|
||||
f"damask.Result.{creator} v{damask.version}".encode()
|
||||
dataset.attrs['creator'] = f'damask.Result.{creator} v{damask.version}' if h5py3 else \
|
||||
f'damask.Result.{creator} v{damask.version}'.encode()
|
||||
|
||||
except (OSError,RuntimeError) as err:
|
||||
print(f'Could not add dataset: {err}.')
|
||||
|
|
|
@ -59,9 +59,9 @@ def srepr(arg,glue = '\n'):
|
|||
Glue used for joining operation. Defaults to \n.
|
||||
|
||||
"""
|
||||
if (not hasattr(arg, "strip") and
|
||||
(hasattr(arg, "__getitem__") or
|
||||
hasattr(arg, "__iter__"))):
|
||||
if (not hasattr(arg, 'strip') and
|
||||
(hasattr(arg, '__getitem__') or
|
||||
hasattr(arg, '__iter__'))):
|
||||
return glue.join(str(x) for x in arg)
|
||||
return arg if isinstance(arg,str) else repr(arg)
|
||||
|
||||
|
|
Loading…
Reference in New Issue