From 60e097a04e3e763ba717b73ed19285ddd136f90a Mon Sep 17 00:00:00 2001 From: Martin Diehl Date: Mon, 27 Jun 2022 22:35:29 +0200 Subject: [PATCH] something is wrong with interfaces for 64 bit --- src/mesh/FEM_utilities.f90 | 2 +- src/mesh/discretization_mesh.f90 | 9 ++++++--- src/mesh/mesh_mech_FEM.f90 | 2 +- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/mesh/FEM_utilities.f90 b/src/mesh/FEM_utilities.f90 index 3bdf901e5..c97c2bbe2 100644 --- a/src/mesh/FEM_utilities.f90 +++ b/src/mesh/FEM_utilities.f90 @@ -69,7 +69,7 @@ module FEM_utilities type(tComponentBC), allocatable, dimension(:) :: componentBC end type tFieldBC - external :: & + external :: & ! ToDo: write interfaces PetscSectionGetFieldComponents, & PetscSectionGetFieldDof, & PetscSectionGetFieldOffset diff --git a/src/mesh/discretization_mesh.f90 b/src/mesh/discretization_mesh.f90 index bbb125887..a53c50655 100644 --- a/src/mesh/discretization_mesh.f90 +++ b/src/mesh/discretization_mesh.f90 @@ -57,6 +57,9 @@ module discretization_mesh mesh_ipCoordinates !< IP x,y,z coordinates (after deformation!) external :: & +#ifdef PETSC_USE_64BIT_INDICES + DMDestroy, & +#endif DMView ! ToDo: write interface public :: & discretization_mesh_init, & @@ -248,10 +251,10 @@ subroutine mesh_FEM_build_ipCoordinates(dimPlex,qPoints) call DMPlexComputeCellGeometryAffineFEM(geomMesh,cell,pV0,pCellJ,pInvcellJ,detJ,err_PETSc) CHKERRQ(err_PETSc) qOffset = 0 - do qPt = 1, mesh_maxNips - do dirI = 1, dimPlex + do qPt = 1_pPETSCINT, mesh_maxNips + do dirI = 1_pPETSCINT, dimPlex mesh_ipCoordinates(dirI,qPt,cell+1) = pV0(dirI) - do dirJ = 1, dimPlex + do dirJ = 1_pPETSCINT, dimPlex mesh_ipCoordinates(dirI,qPt,cell+1) = mesh_ipCoordinates(dirI,qPt,cell+1) + & pCellJ((dirI-1)*dimPlex+dirJ)*(qPoints(qOffset+dirJ) + 1.0_pReal) enddo diff --git a/src/mesh/mesh_mech_FEM.f90 b/src/mesh/mesh_mech_FEM.f90 index fae906891..e60d0213c 100644 --- a/src/mesh/mesh_mech_FEM.f90 +++ b/src/mesh/mesh_mech_FEM.f90 @@ -71,7 +71,7 @@ module mesh_mechanical_FEM logical :: ForwardData real(pReal), parameter :: eps = 1.0e-18_pReal - external :: & + external :: & ! ToDo: write interfaces PetscSectionGetNumFields, & PetscFESetQuadrature, & PetscFEGetDimension, &