From 94fcc9ad247a69d9f94c3917d87a29a21860f971 Mon Sep 17 00:00:00 2001 From: Philip Eisenlohr Date: Mon, 31 Oct 2016 10:40:58 -0400 Subject: [PATCH] fixed language and syntax --- lib/damask/h5table.py | 18 +++---- lib/damask/orientation.py | 74 ++++++++++++++--------------- processing/post/addPK2.py | 2 +- processing/pre/abq_addUserOutput.py | 16 +++---- 4 files changed, 55 insertions(+), 55 deletions(-) diff --git a/lib/damask/h5table.py b/lib/damask/h5table.py index bf8069e37..67d5853b6 100644 --- a/lib/damask/h5table.py +++ b/lib/damask/h5table.py @@ -24,7 +24,7 @@ except(NameError): def lables_to_path(label, dsXMLPath=None): - """Read the xml definition file and return the path.""" + """Read the XML definition file and return the path.""" if dsXMLPath is None: # use the default storage layout in DS_HDF5.xml if "h5table.pyc" in __file__: @@ -49,31 +49,31 @@ def lables_to_path(label, dsXMLPath=None): class H5Table(object): """ - Light weight interface class for h5py + Lightweight interface class for h5py DESCRIPTION ----------- Interface/wrapper class for manipulating data in HDF5 with DAMASK specialized data structure. - -->try to maintain a minimal API design. + --> try to maintain a minimal API design. PARAMETERS ---------- h5f_path: str - Absolute path the HDF5 file + Absolute path of the HDF5 file METHOD ------ - del_entry() -- Force delete attributes/group/datasets (Dangerous) + del_entry() -- Force delete attributes/group/datasets (dangerous) get_attr() -- Return attributes if possible add_attr() -- Add NEW attributes to dataset/group (no force overwrite) get_data() -- Retrieve data in numpy.ndarray add_data() -- Add dataset to H5 file - get_cmdlog() -- Return the command used to generate the data if possible. + get_cmdlog() -- Return the command used to generate the data if possible NOTE ---- 1. As an interface class, it uses the lazy evaluation design - that read the data only when its absolutely necessary. - 2. The command line used to generate new feature is stored with - each dataset as dataset attribute. + that reads the data only when it is absolutely necessary. + 2. The command line used to generate each new feature is stored with + each dataset as dataset attribute. """ diff --git a/lib/damask/orientation.py b/lib/damask/orientation.py index 898a431bb..ef1d8be22 100644 --- a/lib/damask/orientation.py +++ b/lib/damask/orientation.py @@ -28,14 +28,14 @@ class Rodrigues: # ****************************************************************************************** class Quaternion: """ - Orientation represented as unit quaternion + Orientation represented as unit quaternion. - All methods and naming conventions based on http://www.euclideanspace.com/maths/algebra/realNormedAlgebra/quaternions + All methods and naming conventions based on http://www.euclideanspace.com/maths/algebra/realNormedAlgebra/quaternions. - w is the real part, (x, y, z) are the imaginary parts + w is the real part, (x, y, z) are the imaginary parts. Representation of rotation is in ACTIVE form! - (derived directly or through angleAxis, Euler angles, or active matrix) - vector "a" (defined in coordinate system "A") is actively rotated to new coordinates "b" + (Derived directly or through angleAxis, Euler angles, or active matrix) + Vector "a" (defined in coordinate system "A") is actively rotated to new coordinates "b". b = Q * a b = np.dot(Q.asMatrix(),a) """ @@ -77,7 +77,7 @@ class Quaternion: return Q def __ipow__(self, exponent): - """In place power""" + """In-place power""" omega = math.acos(self.w) vRescale = math.sin(exponent*omega)/math.sin(omega) self.w = np.cos(exponent*omega) @@ -135,7 +135,7 @@ class Quaternion: return self.copy() def __imul__(self, other): - """In place multiplication""" + """In-place multiplication""" try: # Quaternion Ax = self.x Ay = self.y @@ -164,7 +164,7 @@ class Quaternion: return NotImplemented def __idiv__(self, other): - """In place division""" + """In-place division""" if isinstance(other, (int,float)): self.w /= other self.x /= other @@ -184,7 +184,7 @@ class Quaternion: return NotImplemented def __iadd__(self, other): - """In place division""" + """In-place addition""" if isinstance(other, Quaternion): self.w += other.w self.x += other.x @@ -205,7 +205,7 @@ class Quaternion: return self.copy() def __isub__(self, other): - """In place subtraction""" + """In-place subtraction""" if isinstance(other, Quaternion): self.w -= other.w self.x -= other.x @@ -339,12 +339,12 @@ class Quaternion: degrees = False, standardRange = False): """ - Orientation as Bunge-Euler angles + Orientation as Bunge-Euler angles. - conversion of ACTIVE rotation to Euler angles taken from: + Conversion of ACTIVE rotation to Euler angles taken from: Melcher, A.; Unser, A.; Reichhardt, M.; Nestler, B.; Poetschke, M.; Selzer, M. Conversion of EBSD data by a quaternion based algorithm to be used for grain structure simulations - Technische Mechanik 30 (2010) pp 401--413 + Technische Mechanik 30 (2010) pp 401--413. """ angles = [0.0,0.0,0.0] @@ -510,8 +510,8 @@ class Quaternion: """ Interpolation - see http://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20070017872_2007014421.pdf - for (another?) way to interpolate quaternions + See http://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20070017872_2007014421.pdf + for (another?) way to interpolate quaternions. """ assert isinstance(q1, Quaternion) and isinstance(q2, Quaternion) Q = cls() @@ -744,39 +744,39 @@ class Symmetry: if self.lattice == 'cubic': basis = {'improper':np.array([ [-1. , 0. , 1. ], - [ np.sqrt(2.) , -np.sqrt(2.) , 0. ], - [ 0. , np.sqrt(3.) , 0. ] ]), - 'proper':np.array([ [ 0. , -1. , 1. ], - [-np.sqrt(2.) , np.sqrt(2.) , 0. ], - [ np.sqrt(3.) , 0. , 0. ] ]), + [ np.sqrt(2.) , -np.sqrt(2.) , 0. ], + [ 0. , np.sqrt(3.) , 0. ] ]), + 'proper':np.array([ [ 0. , -1. , 1. ], + [-np.sqrt(2.) , np.sqrt(2.) , 0. ], + [ np.sqrt(3. ) , 0. , 0. ] ]), } elif self.lattice == 'hexagonal': basis = {'improper':np.array([ [ 0. , 0. , 1. ], - [ 1. , -np.sqrt(3.), 0. ], - [ 0. , 2. , 0. ] ]), - 'proper':np.array([ [ 0. , 0. , 1. ], - [-1. , np.sqrt(3.) , 0. ], - [ np.sqrt(3) , -1. , 0. ] ]), + [ 1. , -np.sqrt(3.) , 0. ], + [ 0. , 2. , 0. ] ]), + 'proper':np.array([ [ 0. , 0. , 1. ], + [-1. , np.sqrt(3.) , 0. ], + [ np.sqrt(3) , -1. , 0. ] ]), } elif self.lattice == 'tetragonal': basis = {'improper':np.array([ [ 0. , 0. , 1. ], - [ 1. , -1. , 0. ], - [ 0. , np.sqrt(2.), 0. ] ]), - 'proper':np.array([ [ 0. , 0. , 1. ], - [-1. , 1. , 0. ], - [ np.sqrt(2.) , 0. , 0. ] ]), + [ 1. , -1. , 0. ], + [ 0. , np.sqrt(2.) , 0. ] ]), + 'proper':np.array([ [ 0. , 0. , 1. ], + [-1. , 1. , 0. ], + [ np.sqrt(2.) , 0. , 0. ] ]), } elif self.lattice == 'orthorhombic': basis = {'improper':np.array([ [ 0., 0., 1.], - [ 1., 0., 0.], - [ 0., 1., 0.] ]), - 'proper':np.array([ [ 0., 0., 1.], - [-1., 0., 0.], - [ 0., 1., 0.] ]), + [ 1., 0., 0.], + [ 0., 1., 0.] ]), + 'proper':np.array([ [ 0., 0., 1.], + [-1., 0., 0.], + [ 0., 1., 0.] ]), } else: - basis = {'improper':np.zeros((3,3),dtype=float), - 'proper':np.zeros((3,3),dtype=float), + basis = {'improper': np.zeros((3,3),dtype=float), + 'proper': np.zeros((3,3),dtype=float), } if np.all(basis == 0.0): diff --git a/processing/post/addPK2.py b/processing/post/addPK2.py index 25fb33c3e..9e6308c39 100755 --- a/processing/post/addPK2.py +++ b/processing/post/addPK2.py @@ -69,7 +69,7 @@ for name in filenames: # ------------------------------------------ assemble header -------------------------------------- table.info_append(scriptID + '\t' + ' '.join(sys.argv[1:])) - table.labels_append(['%i_S'%(i+1) for i in range(9)]) # extend ASCII header with new labels + table.labels_append(['{}_S'.format(i+1) for i in range(9)]) # extend ASCII header with new labels table.head_write() # ------------------------------------------ process data ------------------------------------------ diff --git a/processing/pre/abq_addUserOutput.py b/processing/pre/abq_addUserOutput.py index 80b31f15b..a084fcbed 100755 --- a/processing/pre/abq_addUserOutput.py +++ b/processing/pre/abq_addUserOutput.py @@ -51,7 +51,7 @@ def ParseOutputFormat(filename,what,me): parser = OptionParser(option_class=damask.extendableOption, usage='%prog [option(s)] Abaqus.Inputfile(s)', description = """ Transfer the output variables requested in the material.config to -properly labelled user defined variables within the Abaqus input file (*.inp). +properly labelled user-defined variables within the Abaqus input file (*.inp). Requires the files .output @@ -84,7 +84,7 @@ parser.set_defaults(number = 0, (options, files) = parser.parse_args() if not files: - parser.error('no file(s) specified...') + parser.error('no file(s) specified.') me = { 'Homogenization': options.homog, 'Crystallite': options.cryst, @@ -93,7 +93,7 @@ me = { 'Homogenization': options.homog, for myFile in files: - print('\033[1m'+scriptName+'\033[0m: '+myFile+'\n') + damask.util.report(scriptName,myFile) if options.useFile: formatFile = os.path.splitext(options.useFile)[0] else: @@ -103,7 +103,7 @@ for myFile in files: print('{} not found'.format(myFile)) continue - print('Scanning format files of: %s'%formatFile) + print('Scanning format files of: {}'.format(formatFile)) if options.number < 1: outputFormat = {} @@ -140,7 +140,7 @@ for myFile in files: UserVars += ['%i_%s'%(grain+1,var[0]) for i in range(var[1])] # Now change *.inp file(s) - print('Adding labels to: %s'%myFile) + print('Adding labels to: {}'.format(myFile)) inFile = open(myFile) input = inFile.readlines() inFile.close() @@ -154,11 +154,11 @@ for myFile in files: if m: lastSection = thisSection thisSection = m.group(1) - if (lastSection.upper() == '*DEPVAR' and thisSection.upper() == '*USER'): #Abaqus keyword can be upper or lower case + if (lastSection.upper() == '*DEPVAR' and thisSection.upper() == '*USER'): # Abaqus keyword can be upper or lower case if options.number > 0: - output.write('%i\n'%options.number) #Abaqus needs total number of SDVs in the line after *Depvar keyword + output.write('{}\n'.format(options.number)) # Abaqus needs total number of SDVs in the line after *Depvar keyword else: - output.write('%i\n'%len(UserVars)) + output.write('{}\n'.format(len(UserVars))) for i in range(len(UserVars)): output.write('%i,"%i%s","%i%s"\n'%(i+1,0,UserVars[i],0,UserVars[i])) #index,output variable key,output variable description