1! 2! CalculiX - A 3-dimensional finite element program 3! Copyright (C) 1998-2021 Guido Dhondt 4! 5! This program is free software; you can redistribute it and/or 6! modify it under the terms of the GNU General Public License as 7! published by the Free Software Foundation(version 2); 8! 9! 10! This program is distributed in the hope that it will be useful, 11! but WITHOUT ANY WARRANTY; without even the implied warranty of 12! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13! GNU General Public License for more details. 14! 15! You should have received a copy of the GNU General Public License 16! along with this program; if not, write to the Free Software 17! Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 18! 19 subroutine calculatehmid(nktet_,h,ipoed,iedg,iedgmid) 20! 21! calculating the desired size of h in all midnodes 22! 23 implicit none 24! 25 integer nktet_,ipoed(*),iedg(3,*),iedgmid(*),node1,node2, 26 & nodem,i,index 27! 28 real*8 h(*) 29! 30! the desired edge length at the midnodes is the mean of the 31! desired length at its neighbors 32! 33 do i=1,nktet_ 34 index=ipoed(i) 35! 36 do 37 if(index.eq.0) exit 38! 39 node1=iedg(1,index) 40 node2=iedg(2,index) 41 nodem=iedgmid(index) 42! 43 h(nodem)=(h(node1)+h(node2))/2.d0 44! 45 index=iedg(3,index) 46 enddo 47 enddo 48! 49 return 50 end 51