simpler to use variables directly

This commit is contained in:
Martin Diehl 2019-05-18 23:10:40 +02:00
parent 93827b8809
commit 2ccfc9f6da
2 changed files with 7 additions and 10 deletions

View File

@ -152,7 +152,6 @@ subroutine hypela2(d,g,e,de,s,t,dt,ngens,m,nn,kcus,matus,ndi,nshear,disp, &
mesh_element, & mesh_element, &
mesh_node0, & mesh_node0, &
mesh_node, & mesh_node, &
mesh_Ncellnodes, &
mesh_cellnode, & mesh_cellnode, &
mesh_build_cellnodes, & mesh_build_cellnodes, &
mesh_build_ipCoordinates mesh_build_ipCoordinates
@ -304,7 +303,7 @@ subroutine hypela2(d,g,e,de,s,t,dt,ngens,m,nn,kcus,matus,ndi,nshear,disp, &
call debug_reset() ! resets debugging call debug_reset() ! resets debugging
outdatedFFN1 = .false. outdatedFFN1 = .false.
cycleCounter = cycleCounter + 1 cycleCounter = cycleCounter + 1
mesh_cellnode = mesh_build_cellnodes(mesh_node,mesh_Ncellnodes) ! update cell node coordinates mesh_cellnode = mesh_build_cellnodes() ! update cell node coordinates
call mesh_build_ipCoordinates() ! update ip coordinates call mesh_build_ipCoordinates() ! update ip coordinates
endif endif
if (outdatedByNewInc) then if (outdatedByNewInc) then
@ -333,7 +332,7 @@ subroutine hypela2(d,g,e,de,s,t,dt,ngens,m,nn,kcus,matus,ndi,nshear,disp, &
call debug_reset() ! and resets debugging call debug_reset() ! and resets debugging
outdatedFFN1 = .false. outdatedFFN1 = .false.
cycleCounter = cycleCounter + 1 cycleCounter = cycleCounter + 1
mesh_cellnode = mesh_build_cellnodes(mesh_node,mesh_Ncellnodes) ! update cell node coordinates mesh_cellnode = mesh_build_cellnodes() ! update cell node coordinates
call mesh_build_ipCoordinates() ! update ip coordinates call mesh_build_ipCoordinates() ! update ip coordinates
endif endif
if (outdatedByNewInc) then if (outdatedByNewInc) then

View File

@ -360,7 +360,7 @@ subroutine mesh_init(ip,el)
call mesh_build_FEdata ! get properties of the different types of elements call mesh_build_FEdata ! get properties of the different types of elements
call mesh_build_cellconnectivity call mesh_build_cellconnectivity
if (myDebug) write(6,'(a)') ' Built cell connectivity'; flush(6) if (myDebug) write(6,'(a)') ' Built cell connectivity'; flush(6)
mesh_cellnode = mesh_build_cellnodes(mesh_node,mesh_Ncellnodes) mesh_cellnode = mesh_build_cellnodes()
if (myDebug) write(6,'(a)') ' Built cell nodes'; flush(6) if (myDebug) write(6,'(a)') ' Built cell nodes'; flush(6)
call mesh_build_ipCoordinates call mesh_build_ipCoordinates
if (myDebug) write(6,'(a)') ' Built IP coordinates'; flush(6) if (myDebug) write(6,'(a)') ' Built IP coordinates'; flush(6)
@ -1123,12 +1123,10 @@ end subroutine mesh_build_cellconnectivity
!> Build list of cellnodes' coordinates. !> Build list of cellnodes' coordinates.
!> Cellnode coordinates are calculated from a weighted sum of node coordinates. !> Cellnode coordinates are calculated from a weighted sum of node coordinates.
!-------------------------------------------------------------------------------------------------- !--------------------------------------------------------------------------------------------------
function mesh_build_cellnodes(nodes,Ncellnodes) function mesh_build_cellnodes()
integer, intent(in) :: Ncellnodes !< requested number of cellnodes real(pReal), dimension(3,mesh_Ncellnodes) :: mesh_build_cellnodes
real(pReal), dimension(3,mesh_Nnodes), intent(in) :: nodes
real(pReal), dimension(3,Ncellnodes) :: mesh_build_cellnodes
integer :: & integer :: &
e,n,m, & e,n,m, &
@ -1138,12 +1136,12 @@ function mesh_build_cellnodes(nodes,Ncellnodes)
mesh_build_cellnodes = 0.0_pReal mesh_build_cellnodes = 0.0_pReal
!$OMP PARALLEL DO PRIVATE(e,localCellnodeID,myCoords) !$OMP PARALLEL DO PRIVATE(e,localCellnodeID,myCoords)
do n = 1,Ncellnodes ! loop over cell nodes do n = 1,mesh_Ncellnodes ! loop over cell nodes
e = mesh_cellnodeParent(1,n) e = mesh_cellnodeParent(1,n)
localCellnodeID = mesh_cellnodeParent(2,n) localCellnodeID = mesh_cellnodeParent(2,n)
myCoords = 0.0_pReal myCoords = 0.0_pReal
do m = 1,theMesh%elem%nNodes do m = 1,theMesh%elem%nNodes
myCoords = myCoords + nodes(1:3,mesh_element(4+m,e)) & myCoords = myCoords + mesh_node(1:3,mesh_element(4+m,e)) &
* theMesh%elem%cellNodeParentNodeWeights(m,localCellnodeID) * theMesh%elem%cellNodeParentNodeWeights(m,localCellnodeID)
enddo enddo
mesh_build_cellnodes(1:3,n) = myCoords / sum(theMesh%elem%cellNodeParentNodeWeights(:,localCellnodeID)) mesh_build_cellnodes(1:3,n) = myCoords / sum(theMesh%elem%cellNodeParentNodeWeights(:,localCellnodeID))