From 3b0eeb9956c6176880f81b078b77d1edfb03a2a1 Mon Sep 17 00:00:00 2001 From: Martin Diehl Date: Wed, 22 Dec 2010 10:59:54 +0000 Subject: [PATCH] added files for geometry reconstruction from given deformation gradient. reconstruct.f90 is a fortran source file with comments to use with f2py reconstruct.pyd is the compiled python module test.py is a test file to check if the reconstruction works (unfortunately i does not at the moment, probably because there are type conflicts between fortran and python) --- processing/post/reconstruct.f90 | 47 ++++++++++++++++++++++++++++++++ processing/post/reconstruct.pyd | Bin 0 -> 49328 bytes processing/post/test.py | 21 ++++++++++++++ 3 files changed, 68 insertions(+) create mode 100644 processing/post/reconstruct.f90 create mode 100644 processing/post/reconstruct.pyd create mode 100644 processing/post/test.py diff --git a/processing/post/reconstruct.f90 b/processing/post/reconstruct.f90 new file mode 100644 index 000000000..15541f61a --- /dev/null +++ b/processing/post/reconstruct.f90 @@ -0,0 +1,47 @@ +! -*- f90 -*- +subroutine simple(defgrad,res_x,res_y,res_z,geomdimension,current_configuration) + implicit none +! *** Precision of real and integer variables *** + integer, parameter :: pReal = selected_real_kind(15) ! 15 significant digits, up to 1e+-300 + integer, parameter :: pInt = selected_int_kind(9) ! up to +- 1e9 + integer(pInt) i,j,k + integer(pInt) res_x, res_y, res_z + integer(pInt), dimension(3) :: resolution + real(pReal) , dimension(3) :: geomdimension + real(pReal) , dimension(3,3) :: temp33_Real + real*8 current_configuration(res_x, res_y, res_z,3) + real*8 defgrad(res_x, res_y, res_z,3,3) + !f2py intent(in) res_x, res_y, res_z + !f2py intent(in) geomdimension + !f2py intent(out) current_configuration + !f2py intent(in) defgrad + !f2py depend(res_x, res_y, res_z) current_configuration + !f2py depend(res_x, res_y, res_z) defgrad + + resolution(1) = res_x; resolution(2) = res_y; resolution(3) = res_z + print*, defgrad + do k = 1, resolution(3); do j = 1, resolution(2); do i = 1, resolution(1) + if((k==1).and.(j==1).and.(i==1)) then + temp33_Real =0.0_pReal + else + if((j==1).and.(i==1)) then + temp33_Real(1,:) = temp33_Real(1,:) + matmul(defgrad(i,j,k,:,:),& + (/0.0_pReal,0.0_pReal,(real(resolution(3), pReal)/geomdimension(3))/)) + temp33_Real(2,:) = temp33_Real(1,:) + temp33_Real(3,:) = temp33_Real(1,:) + current_configuration(i,j,k,:) = temp33_Real(1,:) + else + if(i==1) then + temp33_Real(2,:) = temp33_Real(2,:) + matmul(defgrad(i,j,k,:,:),& + (/0.0_pReal,(real(resolution(2),pReal)/geomdimension(2)),0.0_pReal/)) + temp33_Real(3,:) = temp33_Real(2,:) + current_configuration(i,j,k,:) = temp33_Real(2,:) + else + temp33_Real(3,:) = temp33_Real(3,:) + matmul(defgrad(i,j,k,:,:),& + (/(real(resolution(1), pReal)/geomdimension(1)),0.0_pReal,0.0_pReal/)) + current_configuration(i,j,k,:) = temp33_Real(3,:) + endif + endif + endif + enddo; enddo; enddo +end subroutine simple diff --git a/processing/post/reconstruct.pyd b/processing/post/reconstruct.pyd new file mode 100644 index 0000000000000000000000000000000000000000..17cf5f745a5c5d132428555e94941858659f8891 GIT binary patch literal 49328 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 MPo=;j(X8$N03c;qGXMYp literal 0 HcmV?d00001 diff --git a/processing/post/test.py b/processing/post/test.py new file mode 100644 index 000000000..ca5b8871d --- /dev/null +++ b/processing/post/test.py @@ -0,0 +1,21 @@ +import numpy +import reconstruct +# dummy values for resolution and geomdimension (formerly called meshdimension) +resolution=numpy.zeros((3),'i') +resolution[0]=2 +resolution[1]=2 +resolution[2]=2 +geomdimension=numpy.zeros((3),'d') +geomdimension[0]=1.0 +geomdimension[1]=1.0 +geomdimension[2]=1.0 +defgrad=numpy.zeros((resolution[0],resolution[1],resolution[2],3,3),'d') +for i in range (0, resolution[0]): + for j in range (0, resolution[1]): + for k in range (0, resolution[2]): + defgrad[i][j][k][0][0]=1.0 + defgrad[i][j][k][1][1]=1.0 + defgrad[i][j][k][2][2]=1.0 +print defgrad +current_configuration=reconstruct.simple(defgrad,resolution[0],resolution[1],resolution[2],geomdimension) # don't know how to pass arrays for the resolution +print current_configuration \ No newline at end of file