CalculiX  2.13
A Free Software Three-Dimensional Structural Finite Element Program
correctvel.f File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine correctvel (hel, adv, vfa, ipnei, area, bv, xxn, neifa, lakonf, nef, neq)
 

Function/Subroutine Documentation

◆ correctvel()

subroutine correctvel ( real*8, dimension(3,*)  hel,
real*8, dimension(*)  adv,
real*8, dimension(0:7,*)  vfa,
integer, dimension(*)  ipnei,
real*8, dimension(*)  area,
real*8, dimension(neq,3)  bv,
real*8, dimension(3,*)  xxn,
integer, dimension(*)  neifa,
character*8, dimension(*)  lakonf,
integer  nef,
integer  neq 
)
21 !
22 ! correction of the velocity at the element centers due to the
23 ! pressure change (balance of mass)
24 !
25 ! the solution is stored in field bv.
26 !
27  implicit none
28 !
29  character*8 lakonf(*)
30 !
31  integer i,k,nef,jdof1,indexf,ipnei(*),neifa(*),ifa,
32  & neq
33 !
34  real*8 bv(neq,3),hel(3,*),adv(*),xxn(3,*),area(*),vfa(0:7,*)
35 !
36 c$omp parallel default(none)
37 c$omp& shared(nef,bv,ipnei,lakonf,neifa,vfa,area,xxn,hel,adv)
38 c$omp& private(i,jdof1,k,indexf,ifa)
39 c$omp do
40  do i=1,nef
41 !
42  jdof1=i
43  do k=1,3
44  bv(jdof1,k)=0.d0
45  enddo
46 c indexf=ipnei(i)
47 !
48 c do j=1,ipnei(i+1)-ipnei(i)
49 c indexf=indexf+1
50  do indexf=ipnei(i)+1,ipnei(i+1)
51  ifa=neifa(indexf)
52  do k=1,3
53  bv(jdof1,k)=bv(jdof1,k)
54  & +vfa(4,ifa)*area(ifa)*xxn(k,indexf)
55  enddo
56  enddo
57 !
58  do k=1,3
59  bv(jdof1,k)=(hel(k,jdof1)-bv(jdof1,k))/adv(jdof1)
60  enddo
61  enddo
62 c$omp end do
63 c$omp end parallel
64 !
65  return
Hosted by OpenAircraft.com, (Michigan UAV, LLC)