32 1 NUMELT ,NUMELP ,NUMELR ,NPART ,IPARTS ,
33 2 IPARTC ,IPARTTG,IPARTT ,IPARTP ,IPARTR ,
45#include "implicit_f.inc"
49 INTEGER,
INTENT(IN) :: NUMELS,NUMELS8,NUMELS10,NUMELC ,NUMELTG
50 INTEGER,
INTENT(IN) :: NUMELT, NUMELP, NUMELR
51 INTEGER,
INTENT(IN) :: NPART,MODE
52 INTEGER,
DIMENSION(*),
INTENT(IN) :: IPARTS ,IPARTC ,IPARTTG
53 INTEGER,
DIMENSION(*),
INTENT(IN) :: IPARTT ,IPARTP ,IPARTR
54 TYPE(),
DIMENSION(NPART),
INTENT(INOUT) :: SURF_ELM
70 INTEGER,
DIMENSION(NPART) :: NBR_SOL_PART,NBR_SOL10_PART
71INTEGER,
DIMENSION(NPART) :: NBR_TRUSS_PART,NBR_BEAM_PART,NBR_SPRING_PART
78 nbr_sol_part(1:npart) = 0
79 nbr_sol10_part(1:npart) = 0
80 nbr_shell_part(1:npart) = 0
81 nbr_tri_part(1:npart) = 0
85 IF(i<=numels8) nbr_sol_part(id_part) = nbr_sol_part(id_part) + 1
86 IF(i>numels8) nbr_sol10_part(id_part) = nbr_sol10_part(id_part) + 1
90 nbr_shell_part(id_part) = nbr_shell_part(id_part) + 1
94 nbr_tri_part(id_part) = nbr_tri_part(id_part) + 1
98 IF(nbr_sol_part(id_part)>0)
ALLOCATE( surf_elm(id_part)%SOL_PART( nbr_sol_part(id_part) ) )
99 IF(nbr_sol10_part(id_part)>0)
ALLOCATE( surf_elm(id_part)%SOL10_PART( nbr_sol10_part
100 IF(nbr_shell_part(id_part)>0)
ALLOCATE( surf_elm(id_part)%SHELL_PART( nbr_shell_part(id_part) ) )
101 IF(nbr_tri_part(id_part)>0)
ALLOCATE( surf_elm(id_part)%TRI_PART( nbr_tri_part(id_part) ) )
102 surf_elm(id_part)%NSOL = nbr_sol_part(id_part)
103 surf_elm(id_part)%NSOL10 = nbr_sol10_part(id_part)
104 surf_elm(id_part)%NSHELL = nbr_shell_part(id_part)
105 surf_elm(id_part)%NTRI = nbr_tri_part(id_part)
108 nbr_sol_part(1:npart) = 0
109 nbr_sol10_part(1:npart) = 0
113 nbr_sol_part(id_part) = nbr_sol_part(id_part) + 1
114 surf_elm(id_part)%SOL_PART( nbr_sol_part(id_part) ) = i
116 nbr_sol10_part(id_part) = nbr_sol10_part(id_part
117 surf_elm(id_part)%SOL10_PART( nbr_sol10_part(id_part) ) = i
120 nbr_shell_part(1:npart) = 0
123 nbr_shell_part(id_part
124 surf_elm(id_part)%SHELL_PART( nbr_shell_part(id_part) ) = i
126 nbr_tri_part(1:npart) = 0
129 nbr_tri_part(id_part) = nbr_tri_part(id_part) + 1
130 surf_elm(id_part)%TRI_PART( nbr_tri_part(id_part) ) = i
136 nbr_truss_part(1:npart) = 0
137 nbr_beam_part(1:npart) = 0
138 nbr_spring_part(1:npart) = 0
142 nbr_truss_part(id_part) = nbr_truss_part(id_part) + 1
147 nbr_beam_part(id_part)
152 nbr_spring_part(id_part) = nbr_spring_part
157 IF(nbr_truss_part(id_part)>0)
ALLOCATE( surf_elm(id_part)%TRUSS_PART( nbr_truss_part(id_part) ) )
158 IF(nbr_beam_part(id_part)>0)
ALLOCATE( surf_elm(id_part)%BEAM_PART( nbr_beam_part(id_part) ) )
159 IF(nbr_spring_part(id_part)>0)
ALLOCATE( surf_elm(id_part)%SPRING_PART( nbr_spring_part(id_part) ) )
160 surf_elm(id_part)%NTRUSS = nbr_truss_part(id_part)
161 surf_elm(id_part)%NBEAM = nbr_beam_part(id_part)
166 nbr_truss_part(1:npart) = 0
169 nbr_truss_part(id_part) = nbr_truss_part(id_part) + 1
170 surf_elm(id_part)%TRUSS_PART( nbr_truss_part(id_part) ) = i
172 nbr_beam_part(1:npart) = 0
175 nbr_beam_part(id_part) = nbr_beam_part(id_part) + 1
176 surf_elm(id_part)%BEAM_PART( nbr_beam_part(id_part) ) = i
178 nbr_spring_part(1:npart) = 0
181 nbr_spring_part(id_part) = nbr_spring_part(id_part) + 1
182 surf_elm(id_part)%SPRING_PART( nbr_spring_part(id_part) ) = i
subroutine init_surf_elm(numels, numels8, numels10, numelc, numeltg, numelt, numelp, numelr, npart, iparts, ipartc, iparttg, ipartt, ipartp, ipartr, surf_elm, mode)