corrected number of incs reported in spectralOut-file

inc 0 contains undeformed results

plus lots of typographic polishing
This commit is contained in:
Philip Eisenlohr 2011-04-06 09:58:17 +00:00
parent 7c7c929455
commit 51763ed93e
1 changed files with 55 additions and 56 deletions

View File

@ -196,10 +196,10 @@ program mpie_spectral
200 close(unit) 200 close(unit)
do i = 1, N_Loadcases do i = 1, N_Loadcases ! consistency checks
if (any(bc_mask(:,:,1,i) == bc_mask(:,:,2,i))) call IO_error(46,i) ! bc_mask consistency if (any(bc_mask(:,:,1,i) == bc_mask(:,:,2,i))) call IO_error(46,i) ! exclisive or masking only
if (bc_timeIncrement(i) < 0.0_pReal) call IO_error(47,i) ! negative time increment forbidden if (bc_timeIncrement(i) < 0.0_pReal) call IO_error(47,i) ! negative time increment
if (bc_steps(i) < 1_pInt) call IO_error(48,i) ! non-positive increments requested if (bc_steps(i) < 1_pInt) call IO_error(48,i) ! non-positive increment count
print '(a,/,3(3(f12.6,x)/))','L:' ,math_transpose3x3(bc_velocityGrad(:,:,i)) print '(a,/,3(3(f12.6,x)/))','L:' ,math_transpose3x3(bc_velocityGrad(:,:,i))
print '(a,/,3(3(f12.6,x)/))','bc_stress:',math_transpose3x3(bc_stress(:,:,i)) print '(a,/,3(3(f12.6,x)/))','bc_stress:',math_transpose3x3(bc_stress(:,:,i))
print '(a,/,3(3(l,x)/))', 'bc_mask for velocitygrad:',transpose(bc_mask(:,:,1,i)) print '(a,/,3(3(l,x)/))', 'bc_mask for velocitygrad:',transpose(bc_mask(:,:,1,i))
@ -302,7 +302,7 @@ program mpie_spectral
xi(1) = real(k_s(1), pReal)/geomdimension(1) xi(1) = real(k_s(1), pReal)/geomdimension(1)
if (any(xi /= 0.0_pReal)) then if (any(xi /= 0.0_pReal)) then
do l = 1,3; do m = 1,3 do l = 1,3; do m = 1,3
xinormdyad(l,m) = xi(l)*xi(m)/sum(xi**2) ! Unit sphere, unit vectors in Fourier space xinormdyad(l,m) = xi(l)*xi(m)/sum(xi**2) ! unit sphere, unit vectors in Fourier space
enddo; enddo enddo; enddo
temp33_Real = math_inv3x3(math_mul3333xx33(c0, xinormdyad)) temp33_Real = math_inv3x3(math_mul3333xx33(c0, xinormdyad))
else else
@ -344,10 +344,9 @@ program mpie_spectral
write(538), 'resolution',resolution write(538), 'resolution',resolution
write(538), 'dimension',geomdimension write(538), 'dimension',geomdimension
write(538), 'materialpoint_sizeResults', materialpoint_sizeResults write(538), 'materialpoint_sizeResults', materialpoint_sizeResults
write(538), 'increments', sum(bc_steps) write(538), 'increments', sum(bc_steps+1) ! +1 to store initial situation
write(538), 'eoh' write(538), 'eoh'
write(538) materialpoint_results(:,1,:) write(538) materialpoint_results(:,1,:) ! initial (non-deformed) results
write(538) materialpoint_results(:,1,:) !to be conform with t16 Marc format
! Initialization done ! Initialization done
!************************************************************* !*************************************************************
@ -496,11 +495,11 @@ program mpie_spectral
do m = 1,3 ! L infinity Norm of stress tensor do m = 1,3 ! L infinity Norm of stress tensor
sigma0 = max(sigma0, sum(abs(workfft(1,1,1,m,:) + (workfft(2,1,1,m,:))*img))) sigma0 = max(sigma0, sum(abs(workfft(1,1,1,m,:) + (workfft(2,1,1,m,:))*img)))
enddo enddo
err_div = (maxval(abs(math_mul33x3_complex(workfft(resolution(1)+1,resolution(2)/2+1,resolution(3)/2+1,:,:)+& ! L infinity Norm of div(stress) err_div = (maxval(abs(math_mul33x3_complex(workfft(resolution(1)+1,resolution(2)/2+1,resolution(3)/2+1,:,:)+& ! L infinity norm of div(stress)
workfft(resolution(1)+2,resolution(2)/2+1,resolution(3)/2+1,:,:)*img,xi_central)))) workfft(resolution(1)+2,resolution(2)/2+1,resolution(3)/2+1,:,:)*img,xi_central))))
err_div = err_div/sigma0 ! weighting of error err_div = err_div/sigma0 ! weighting of error
if(memory_efficient) then ! memory saving version, in-time calculation of gamma_hat if(memory_efficient) then ! memory saving version, on-the-fly calculation of gamma_hat
do k = 1, resolution(3) do k = 1, resolution(3)
k_s(3) = k-1 k_s(3) = k-1
if(k > resolution(3)/2+1) k_s(3) = k_s(3)-resolution(3) if(k > resolution(3)/2+1) k_s(3) = k_s(3)-resolution(3)
@ -555,7 +554,7 @@ program mpie_spectral
enddo; enddo enddo; enddo
err_stress = maxval(abs(mask_stress * (pstress_av - bc_stress(:,:,loadcase)))) err_stress = maxval(abs(mask_stress * (pstress_av - bc_stress(:,:,loadcase))))
err_stress_tol = maxval(abs(pstress_av))*err_stress_tolrel !accecpt relativ error specified err_stress_tol = maxval(abs(pstress_av))*err_stress_tolrel ! accecpt relative error specified
err_defgrad = maxval(abs(mask_defgrad * (defgrad_av - defgradAim))) err_defgrad = maxval(abs(mask_defgrad * (defgrad_av - defgradAim)))
print '(2(a,E8.2))', ' error divergence: ',err_div, ' Tol. = ', err_div_tol print '(2(a,E8.2))', ' error divergence: ',err_div, ' Tol. = ', err_div_tol