From 2f1db8f69a613d7924d384d4a797d18d1752e009 Mon Sep 17 00:00:00 2001 From: Martin Diehl Date: Tue, 17 Dec 2013 08:16:29 +0000 Subject: [PATCH] introduced delimiter option (default = tab) for ascii table output, use space for geometry files --- lib/damask/asciitable.py | 10 +++++----- processing/pre/geom_canvas.py | 2 +- processing/pre/geom_fromVoronoiTessellation.py | 2 +- processing/pre/geom_grainGrowth.py | 2 +- processing/pre/geom_pack.py | 8 +++----- processing/pre/geom_rescale.py | 2 +- processing/pre/geom_translate.py | 2 +- processing/pre/geom_unpack.py | 2 +- processing/pre/geom_vicinityOffset.py | 2 +- 9 files changed, 15 insertions(+), 17 deletions(-) diff --git a/lib/damask/asciitable.py b/lib/damask/asciitable.py index fc34b2cd0..1e7b0ba64 100644 --- a/lib/damask/asciitable.py +++ b/lib/damask/asciitable.py @@ -229,21 +229,21 @@ class ASCIItable(): return self.data.shape # ------------------------------------------------------------------ - def data_write(self): + def data_write(self, delimiter='\t'): if len(self.data) == 0: return if isinstance(self.data[0],list): - return self.output_write(['\t'.join(map(str,items)) for items in self.data]) + return self.output_write([delimiter.join(map(str,items)) for items in self.data]) else: - return self.output_write('\t'.join(map(str,self.data))) + return self.output_write(delimiter.join(map(str,self.data))) # ------------------------------------------------------------------ - def data_writeArray(self,format='%g'): + def data_writeArray(self,format='%g',delimiter = '\t'): import numpy ''' write whole numpy array data ''' - return numpy.savetxt(self.__IO__['out'], self.data, fmt=format, delimiter='\t') + return numpy.savetxt(self.__IO__['out'], self.data, fmt=format, delimiter=delimiter) # ------------------------------------------------------------------ def data_append(self, diff --git a/processing/pre/geom_canvas.py b/processing/pre/geom_canvas.py index f00e803be..2e2242ad9 100755 --- a/processing/pre/geom_canvas.py +++ b/processing/pre/geom_canvas.py @@ -212,7 +212,7 @@ for file in files: # --- write microstructure information ------------------------------------------------------------ formatwidth = int(math.floor(math.log10(microstructure_cropped.max())+1)) theTable.data = microstructure_cropped.reshape((newInfo['grid'][0],newInfo['grid'][1]*newInfo['grid'][2]),order='F').transpose() - theTable.data_writeArray('%%%ii'%(formatwidth)) + theTable.data_writeArray('%%%ii'%(formatwidth),delimiter=' ') #--- output finalization -------------------------------------------------------------------------- if file['name'] != 'STDIN': diff --git a/processing/pre/geom_fromVoronoiTessellation.py b/processing/pre/geom_fromVoronoiTessellation.py index 5256ed5fa..8c9de7d71 100755 --- a/processing/pre/geom_fromVoronoiTessellation.py +++ b/processing/pre/geom_fromVoronoiTessellation.py @@ -247,7 +247,7 @@ for file in files: # --- write microstructure information ------------------------------------------------------------ formatwidth = 1+int(math.log10(newInfo['microstructures'])) theTable.data = indices.reshape(info['grid'][1]*info['grid'][2],info['grid'][0]) - theTable.data_writeArray('%%%ii'%(formatwidth)) + theTable.data_writeArray('%%%ii'%(formatwidth),delimiter=' ') #--- output finalization -------------------------------------------------------------------------- diff --git a/processing/pre/geom_grainGrowth.py b/processing/pre/geom_grainGrowth.py index cb0d79673..644a3746b 100755 --- a/processing/pre/geom_grainGrowth.py +++ b/processing/pre/geom_grainGrowth.py @@ -222,7 +222,7 @@ for file in files: # --- write microstructure information ------------------------------------------------------------ formatwidth = int(math.floor(math.log10(microstructure.max())+1)) theTable.data = microstructure[0:info['grid'][0],0:info['grid'][1],0:info['grid'][2]].reshape(numpy.prod(info['grid']),order='F').transpose() - theTable.data_writeArray('%%%ii'%(formatwidth)) + theTable.data_writeArray('%%%ii'%(formatwidth),delimiter=' ') #--- output finalization -------------------------------------------------------------------------- if file['name'] != 'STDIN': diff --git a/processing/pre/geom_pack.py b/processing/pre/geom_pack.py index a9c60874e..4ac02460c 100755 --- a/processing/pre/geom_pack.py +++ b/processing/pre/geom_pack.py @@ -132,7 +132,7 @@ for file in files: theTable.head_write() theTable.output_flush() -# --- write packed microstructure information ------------------------------------------------------------ +# --- write packed microstructure information ----------------------------------------------------- type = '' former = -1 start = -1 @@ -161,8 +161,7 @@ for file in files: 'to': ['%i to %i'%(former-reps+1,former)], 'of': ['%i of %i'%(reps,former)], }[type] - theTable.data_write() -# file['output'].write(output) + theTable.data_write(delimiter=' ') type = '.' start = current reps = 1 @@ -173,9 +172,8 @@ for file in files: 'to': ['%i to %i'%(former-reps+1,former)], 'of': ['%i of %i'%(reps,former)], }[type] - theTable.data_write() + theTable.data_write(delimiter=' ') theTable.output_flush() -# file['output'].write(output+'\n') #--- output finalization -------------------------------------------------------------------------- if file['name'] != 'STDIN': diff --git a/processing/pre/geom_rescale.py b/processing/pre/geom_rescale.py index 3f9605d4c..effbbe837 100755 --- a/processing/pre/geom_rescale.py +++ b/processing/pre/geom_rescale.py @@ -204,7 +204,7 @@ for file in files: # --- write microstructure information ------------------------------------------------------------ formatwidth = int(math.floor(math.log10(microstructure.max())+1)) theTable.data = microstructure.reshape((newInfo['grid'][0],newInfo['grid'][1]*newInfo['grid'][2]),order='F').transpose() - theTable.data_writeArray('%%%ii'%(formatwidth)) + theTable.data_writeArray('%%%ii'%(formatwidth),delimiter=' ') #--- output finalization -------------------------------------------------------------------------- if file['name'] != 'STDIN': diff --git a/processing/pre/geom_translate.py b/processing/pre/geom_translate.py index 901e06a6b..3dd6009ef 100755 --- a/processing/pre/geom_translate.py +++ b/processing/pre/geom_translate.py @@ -187,7 +187,7 @@ for file in files: # --- write microstructure information ------------------------------------------------------------ formatwidth = int(math.floor(math.log10(substituted.max())+1)) theTable.data = substituted.reshape((info['grid'][0],info['grid'][1]*info['grid'][2]),order='F').transpose() - theTable.data_writeArray('%%%ii'%(formatwidth)) + theTable.data_writeArray('%%%ii'%(formatwidth),delimiter=' ') #--- output finalization -------------------------------------------------------------------------- if file['name'] != 'STDIN': diff --git a/processing/pre/geom_unpack.py b/processing/pre/geom_unpack.py index f5fb91a84..851a9cc45 100755 --- a/processing/pre/geom_unpack.py +++ b/processing/pre/geom_unpack.py @@ -159,7 +159,7 @@ for file in files: theTable.data = microstructure else: theTable.data = microstructure.reshape((info['grid'][0],info['grid'][1]*info['grid'][2]),order='F').transpose() - theTable.data_writeArray('%%%ii'%(formatwidth)) + theTable.data_writeArray('%%%ii'%(formatwidth),delimiter = ' ') #--- output finalization -------------------------------------------------------------------------- if file['name'] != 'STDIN': diff --git a/processing/pre/geom_vicinityOffset.py b/processing/pre/geom_vicinityOffset.py index bbf3da3af..b3b07025e 100755 --- a/processing/pre/geom_vicinityOffset.py +++ b/processing/pre/geom_vicinityOffset.py @@ -177,7 +177,7 @@ for file in files: # --- write microstructure information ------------------------------------------------------------ formatwidth = int(math.floor(math.log10(microstructure.max())+1)) theTable.data = microstructure.reshape((info['grid'][0],info['grid'][1]*info['grid'][2]),order='F').transpose() - theTable.data_writeArray('%%%ii'%(formatwidth)) + theTable.data_writeArray('%%%ii'%(formatwidth),delimiter=' ') #--- output finalization -------------------------------------------------------------------------- if file['name'] != 'STDIN':