diff --git a/processing/post/3Dvisualize b/processing/post/3Dvisualize index d37890680..2ef74292e 100755 --- a/processing/post/3Dvisualize +++ b/processing/post/3Dvisualize @@ -106,47 +106,6 @@ def transliterateToFloat(x): except: return 0.0 - -#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -def mesh(res,geomdim,defgrad_av,centroids): -#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - - neighbor = numpy.array([[0, 0, 0], - [1, 0, 0], - [1, 1, 0], - [0, 1, 0], - [0, 0, 1], - [1, 0, 1], - [1, 1, 1], - [0, 1, 1]]) - - wrappedCentroids = numpy.zeros([res[0]+2,res[1]+2,res[2]+2,3],'d') - nodes = numpy.zeros([res[0]+1,res[1]+1,res[2]+1,3],'d') - wrappedCentroids[1:-1,1:-1,1:-1] = centroids - diag = numpy.ones(3,'i') - shift = numpy.zeros(3,'i') - lookup = numpy.zeros(3,'i') - - for k in range(res[2]+2): - for j in range(res[1]+2): - for i in range(res[0]+2): - if (k==0 or k==res[2]+1 or \ - j==0 or j==res[1]+1 or \ - i==0 or i==res[0]+1 ): - me = numpy.array([i,j,k],'i') - shift = numpy.sign(res+diag-2*me)*(numpy.abs(res+diag-2*me)/(res+diag)) - lookup = me-diag+shift*res - wrappedCentroids[i,j,k] = centroids[lookup[0],lookup[1],lookup[2]]- \ - numpy.dot(defgrad_av, shift*geomdim) - for k in range(res[2]+1): - for j in range(res[1]+1): - for i in range(res[0]+1): - for n in range(8): - nodes[i,j,k] += wrappedCentroids[i+neighbor[n,0],j+neighbor[n,1],k+neighbor[n,2]] - nodes[:,:,:] /= 8.0 - - return nodes - # ++++++++++++++++++++++++++++++++++++++++++++++++++++ def vtk_writeASCII_mesh(mesh,data,res): # ++++++++++++++++++++++++++++++++++++++++++++++++++++ @@ -424,12 +383,11 @@ for filename in args: numpy.reshape(values[:,column['tensor'][options.defgrad]: column['tensor'][options.defgrad]+9], (res[0],res[1],res[2],3,3))) - print defgrad_av centroids = postprocessingMath.deformed_fft(res[0],res[1],res[2],dim,\ numpy.reshape(values[:,column['tensor'][options.defgrad]: column['tensor'][options.defgrad]+9], (res[0],res[1],res[2],3,3)),defgrad_av,1.0) - ms = mesh(res,dim,defgrad_av,centroids) + ms = postprocessingMath.mesh(res[0],res[1],res[2],dim,defgrad_av,centroids) fields = {\ 'tensors': {},\