some small changes in including PETSc *.h90 files to prevent warnings.

It seems that a bug in old gfortran 4.5.0 causes the problems, at least with 4.7.3 it seems to work after fixing the bugs in IO.f90
This commit is contained in:
Martin Diehl 2012-11-07 13:11:41 +00:00
parent 9e20149c6f
commit bbcffa668b
3 changed files with 11 additions and 13 deletions

View File

@ -21,8 +21,6 @@ module DAMASK_spectral_SolverAL
#include <finclude/petscsys.h> #include <finclude/petscsys.h>
#include <finclude/petscdmda.h> #include <finclude/petscdmda.h>
#include <finclude/petscsnes.h> #include <finclude/petscsnes.h>
#include <finclude/petscdmda.h90>
#include <finclude/petscsnes.h90>
character (len=*), parameter, public :: & character (len=*), parameter, public :: &
DAMASK_spectral_SolverAL_label = 'al' DAMASK_spectral_SolverAL_label = 'al'
@ -102,7 +100,8 @@ subroutine AL_init()
math_invSym3333 math_invSym3333
implicit none implicit none
#include <finclude/petscdmda.h90>
#include <finclude/petscsnes.h90>
integer(pInt) :: i,j,k integer(pInt) :: i,j,k
real(pReal), dimension(:,:,:,:,:), allocatable :: P real(pReal), dimension(:,:,:,:,:), allocatable :: P
@ -233,6 +232,8 @@ subroutine AL_init()
terminallyIll terminallyIll
implicit none implicit none
#include <finclude/petscdmda.h90>
#include <finclude/petscsnes.h90>
!-------------------------------------------------------------------------------------------------- !--------------------------------------------------------------------------------------------------
! input data for solution ! input data for solution
real(pReal), intent(in) :: timeinc, timeinc_old, temperature_bc, guessmode real(pReal), intent(in) :: timeinc, timeinc_old, temperature_bc, guessmode

View File

@ -250,8 +250,7 @@ type(tSolutionState) function &
f_aimDot = f_aimDot & f_aimDot = f_aimDot &
+ guessmode * P_BC%maskFloat * (F_aim - F_aim_lastInc)/timeinc_old + guessmode * P_BC%maskFloat * (F_aim - F_aim_lastInc)/timeinc_old
F_aim_lastInc = F_aim F_aim_lastInc = F_aim
print*, 'F_aimDot', f_aimDot
print*, 'guessmode', guessmode
!-------------------------------------------------------------------------------------------------- !--------------------------------------------------------------------------------------------------
! update coordinates and rate and forward last inc ! update coordinates and rate and forward last inc
call deformed_fft(res,geomdim,math_rotate_backward33(F_aim_lastInc,rotation_BC), & call deformed_fft(res,geomdim,math_rotate_backward33(F_aim_lastInc,rotation_BC), &

View File

@ -21,8 +21,6 @@ module DAMASK_spectral_SolverBasicPETSc
#include <finclude/petscsys.h> #include <finclude/petscsys.h>
#include <finclude/petscdmda.h> #include <finclude/petscdmda.h>
#include <finclude/petscsnes.h> #include <finclude/petscsnes.h>
#include <finclude/petscdmda.h90>
#include <finclude/petscsnes.h90>
character (len=*), parameter, public :: & character (len=*), parameter, public :: &
DAMASK_spectral_SolverBasicPETSC_label = 'basicpetsc' DAMASK_spectral_SolverBasicPETSC_label = 'basicpetsc'
@ -100,6 +98,8 @@ subroutine BasicPETSC_init()
math_invSym3333 math_invSym3333
implicit none implicit none
#include <finclude/petscdmda.h90>
#include <finclude/petscsnes.h90>
integer(pInt) :: i,j,k integer(pInt) :: i,j,k
real(pReal), dimension(:,:,:,:,:), allocatable :: P real(pReal), dimension(:,:,:,:,:), allocatable :: P
PetscScalar, dimension(:,:,:,:), pointer :: F PetscScalar, dimension(:,:,:,:), pointer :: F
@ -169,16 +169,12 @@ subroutine BasicPETSC_init()
coordinates = 0.0 ! change it later!!! coordinates = 0.0 ! change it later!!!
endif endif
print*, 'F', shape(F)
print*, 'F_lastInc', shape(F_lastInc)
print*, 'gfortran runs till here'
flush(6)
call Utilities_constitutiveResponse(coordinates,& call Utilities_constitutiveResponse(coordinates,&
reshape(F(0:8,0:res(1)-1_pInt,0:res(2)-1_pInt,0:res(3)-1_pInt),[3,3,res(1),res(2),res(3)]),& reshape(F(0:8,0:res(1)-1_pInt,0:res(2)-1_pInt,0:res(3)-1_pInt),[3,3,res(1),res(2),res(3)]),&
reshape(F(0:8,0:res(1)-1_pInt,0:res(2)-1_pInt,0:res(3)-1_pInt),[3,3,res(1),res(2),res(3)]),& reshape(F(0:8,0:res(1)-1_pInt,0:res(2)-1_pInt,0:res(3)-1_pInt),[3,3,res(1),res(2),res(3)]),&
temperature,0.0_pReal,P,C,P_av,.false.,math_I3) temperature,0.0_pReal,P,C,P_av,.false.,math_I3)
print*, 'gfortran does not reach this point'
flush(6)
call DMDAVecRestoreArrayF90(da,solution_vec,F,ierr) call DMDAVecRestoreArrayF90(da,solution_vec,F,ierr)
@ -225,6 +221,8 @@ subroutine BasicPETSC_init()
restartWrite, & restartWrite, &
terminallyIll terminallyIll
implicit none implicit none
#include <finclude/petscdmda.h90>
#include <finclude/petscsnes.h90>
!-------------------------------------------------------------------------------------------------- !--------------------------------------------------------------------------------------------------
! input data for solution ! input data for solution
real(pReal), intent(in) :: timeinc, timeinc_old, temperature_bc, guessmode real(pReal), intent(in) :: timeinc, timeinc_old, temperature_bc, guessmode