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

Go to the source code of this file.

Functions/Subroutines

subroutine uboun (boun, kstep, kinc, time, node, idof, coords, vold, mi, iponoel, inoel, ipobody, xbody, ibody)
 

Function/Subroutine Documentation

◆ uboun()

subroutine uboun ( real*8, intent(out)  boun,
integer, intent(in)  kstep,
integer, intent(in)  kinc,
real*8, dimension(2), intent(in)  time,
integer, intent(in)  node,
integer, intent(in)  idof,
real*8, dimension(3), intent(in)  coords,
real*8, dimension(0:mi(2),*), intent(in)  vold,
integer, dimension(*), intent(in)  mi,
integer, dimension(*), intent(in)  iponoel,
integer, dimension(2,*), intent(in)  inoel,
integer, dimension(2,*), intent(in)  ipobody,
real*8, dimension(7,*), intent(in)  xbody,
integer, dimension(3,*), intent(in)  ibody 
)
21 !
22 ! user subroutine uboun
23 !
24 !
25 ! INPUT:
26 !
27 ! kstep step number
28 ! kinc increment number
29 ! time(1) current step time
30 ! time(2) current total time
31 ! node node number
32 ! idof degree of freedom
33 ! coords (1..3) global coordinates of the node
34 ! vold(0..4,1..nk) solution field in all nodes
35 ! (not available for CFD-calculations)
36 ! 0: temperature
37 ! 1: displacement in global x-direction
38 ! (or mass flow rate for fluid nodes)
39 ! 2: displacement in global y-direction
40 ! 3: displacement in global z-direction
41 ! 4: not used
42 ! mi(1) max # of integration points per element (max
43 ! over all elements)
44 ! mi(2) max degree of freedomm per node (max over all
45 ! nodes) in fields like v(0:mi(2))...
46 ! iponoel(i) the network elements to which node i belongs
47 ! are stored in inoel(1,iponoel(i)),
48 ! inoel(1,inoel(2,iponoel(i)))...... until
49 ! inoel(2,inoel(2,inoel(2......)=0
50 ! inoel(1..2,*) field containing the network elements
51 ! ipobody(1,i) points to an entry in fields ibody and xbody
52 ! containing the body load applied to element i,
53 ! if any, else 0
54 ! ipobody(2,i) index referring to the line in field ipobody
55 ! containing a pointer to the next body load
56 ! applied to element i, else 0
57 ! ibody(1,i) code identifying the kind of body load i:
58 ! 1=centrifugal, 2=gravity, 3=generalized gravity
59 ! ibody(2,i) amplitude number for load i
60 ! ibody(3,i) load case number for load i
61 ! xbody(1,i) size of body load i
62 ! xbody(2..4,i) for centrifugal loading: point on the axis,
63 ! for gravity loading with known gravity vector:
64 ! normalized gravity vector
65 ! xbody(5..7,i) for centrifugal loading: normalized vector on the
66 ! rotation axis
67 !
68 ! OUTPUT:
69 !
70 ! boun boundary value for degree of freedom idof
71 ! in node "node"
72 !
73  implicit none
74 !
75  integer kstep,kinc,node,idof,mi(*),iponoel(*),inoel(2,*),
76  & ipobody(2,*),ibody(3,*)
77 !
78  real*8 boun,time(2),coords(3),vold(0:mi(2),*),xbody(7,*)
79 !
80  intent(in) kstep,kinc,time,node,idof,coords,vold,mi,
81  & iponoel,inoel,ipobody,xbody,ibody
82 !
83  intent(out) boun
84 !
85  boun=300.d0/8.d0*(4.d0-coords(2)*coords(2))
86 !
87  return
Hosted by OpenAircraft.com, (Michigan UAV, LLC)