41 . FBFVEL ,IBFVEL ,IKINE ,IKINE1LAG,
42 . ITAB ,ITABM1 ,IGRNOD ,X0 ,IXR ,
43 . IPART ,IPARTR ,ISKN ,NOM_OPT ,
44 . NIMPDISP ,NIMPVEL ,UNITAB ,LSUBMODEL)
53 use element_mod ,
only : nixr
57#include "implicit_f.inc"
67 INTEGER :: NIMPDISP,NIMPVEL
68 INTEGER ,
DIMENSION(*) :: ITAB,ITABM1,IKINE,IKINE1LAG,IPARTR
69 INTEGER ,
DIMENSION(LISKN,*) ,
INTENT(IN) :: ISKN
70 INTEGER ,
DIMENSION(LIPART1,*) ,
INTENT(IN) :: IPART
71 INTEGER ,
DIMENSION(NIXR,*) ,
INTENT(IN) :: IXR
72 INTEGER ,
DIMENSION(LNOPT1,*) ,
INTENT(OUT) :: NOM_OPT
73 INTEGER ,
DIMENSION(NIFV,NFXVEL) ,
INTENT(OUT) :: IBFVEL
74 my_real ,
DIMENSION(LFXVELR,NFXVEL) ,
INTENT(OUT) :: fbfvel
76 my_real ,
DIMENSION(3,NUMNOD) ,
INTENT(IN) :: x0
77 TYPE (GROUP_) ,
DIMENSION(NGRNOD) ,
INTENT(IN) :: IGRNOD
82 INTEGER IOPT,INUM,NOPT,NFDISP,NFVEL,FGEOD,FGEOV,NIMPDISP_0,LAGMULV
83 INTEGER ,
DIMENSION(:),
ALLOCATABLE :: OPTID
84 CHARACTER(nchartitle) :: MESS
88 DATA mess/
'IMPOSED VELOCITY DEFINITION '/
104 nfdisp = nimpdisp - fgeod
105 nfvel = nimpvel - fgeov - lagmulv
106 nopt = nfdisp + nfvel
109 IF (nimpdisp > 0)
THEN
113 . nimpdisp ,inum ,iopt ,fbfvel ,ibfvel ,
114 . itab ,itabm1 ,ikine ,igrnod ,nom_opt ,
115 . iskn ,unitab ,lsubmodel)
120 . fgeod ,inum ,iopt ,fbfvel ,ibfvel ,
121 . itab ,itabm1 ,igrnod ,nom_opt ,x0 ,
122 . ixr ,ipart ,ipartr ,unitab ,lsubmodel)
127 ALLOCATE( optid(nimpdisp) )
128 optid(1:nimpdisp) = nom_opt(1,1:nimpdisp)
129 CALL udouble(optid,1,nimpdisp,mess,0,zero)
138 IF (nimpvel > 0)
THEN
143 . nimpvel ,inum ,iopt ,fbfvel ,ibfvel ,
144 . itab ,itabm1 ,ikine ,ikine1lag,nom_opt ,
145 . igrnod ,iskn ,unitab ,lsubmodel)
152 . fgeov ,inum ,iopt ,fbfvel ,ibfvel ,
153 . itab ,itabm1 ,igrnod ,nom_opt ,x0 ,
154 . ixr ,ipart ,ipartr ,unitab ,lsubmodel)
159 IF (lagmulv > 0)
THEN
161 . lagmulv ,inum ,iopt ,fbfvel ,ibfvel ,
162 . itab ,itabm1 ,igrnod ,nom_opt ,x0 ,
163 . ixr ,ipart ,ipartr ,iskn ,ikine ,
169 ALLOCATE( optid(nimpvel) )
170 optid(1:nimpvel) = nom_opt(1,nimpdisp_0+1:nimpvel+nimpdisp_0)
171 CALL udouble(optid,1,nimpvel,mess,0,zero)
176 nimpvel = inum - nimpdisp
subroutine hm_read_impvel(fbfvel, ibfvel, ikine, ikine1lag, itab, itabm1, igrnod, x0, ixr, ipart, ipartr, iskn, nom_opt, nimpdisp, nimpvel, unitab, lsubmodel)
subroutine read_impdisp_fgeo(nfgeo, inum, iopt, fbfvel, ibfvel, itab, itabm1, igrnod, nom_opt, x0, ixr, ipart, ipartr, unitab, lsubmodel)
subroutine read_impvel(nfvel, inum, iopt, fbfvel, ibfvel, itab, itabm1, ikine, ikine1lag, nom_opt, igrnod, iskn, unitab, lsubmodel)
subroutine read_impvel_fgeo(nfgeo, inum, iopt, fbfvel, ibfvel, itab, itabm1, igrnod, nom_opt, x0, ixr, ipart, ipartr, unitab, lsubmodel)
subroutine read_impvel_lagmul(nlagmul, inum, iopt, fbfvel, ibfvel, itab, itabm1, igrnod, nom_opt, x0, ixr, ipart, ipartr, iskn, ikine, unitab, lsubmodel)