46 2 ISKN ,ITAB ,ITABM ,LAG_NCF ,LAG_NKF ,
47 3 LAG_NHF,IKINE ,IKINE1LAG,NOM_OPT,ITAGND ,
59#include "implicit_f.inc"
72 INTEGER LAG_NCF, LAG_NKF, LAG_NHF, ITAB(*), ITABM(*),
73 . ISKN(LISKN,*),IBUFNC(*),IBUFNN(*),IBUFDL(*),IBUFSK(*),
74 . (*),IKINE1LAG(*),ITAGND(*)
77 TYPE(UNIT_TYPE_),
INTENT(IN) ::UNITAB
82 INTEGER I, II, J, , NOD, IDDL, ISKW, NUMC, KF, NOSYS, NMP
84 CHARACTER(LEN=NCHARTITLE) ::
85 CHARACTER(LEN=NCHARKEY) :: KEY
87 DATA mess/
'MULTI-POINT CONSTRAINTS '/
96 is_available = .false.
111 . option_titr = titr,
115 CALL fretitl(titr,nom_opt(lnopt1-ltitr+1,i),ltitr)
117 CALL hm_get_intv(
'number_of_nodes',numc,is_available,lsubmodel)
124 IF (COEF==ZERO) COEF = ONE
126 NOSYS = USR2SYS(NOD,ITABM,MESS,ID)
128 IF(ITAGND(NOSYS)/=0) THEN
130 CALL ANCMSG(MSGID=1208,
132 . ANMODE=ANINFO_BLIND_1,
139 CALL KINSET(512,ITAB(NOSYS),IKINE(NOSYS),7,0,IKINE1LAG(NOSYS))
141 CALL IFRONTPLUS(NOSYS,1)
144 DO J=0,NUMSKW+MIN(1,NSPCOND)*NUMSPH+NSUBMOD
145 IF(ISKW==ISKN(4,J+1)) THEN
150 CALL ANCMSG(MSGID=137,ANMODE=ANINFO,MSGTYPE=MSGERROR,
153 . I1=ID,I2=ISKW,C3=TITR)
156 LAG_NKF = LAG_NKF + 1
158 LAG_NKF = LAG_NKF + 3
162 WRITE(IOUT,1101) ID,NUMC
163 WRITE(IOUT,1102) (ITAB(IBUFNN(J)),IBUFDL(J),ISKN(4,IBUFSK(J)),RBUF(J),
167 LAG_NHF = LAG_NHF + NUMMPC*(NUMMPC-1)
168 LAG_NCF = LAG_NCF + NUMMPC
172 .' multi-point constraints
'/
173 . ' ----------------------
')
174 1101 FORMAT( 10X,'mpc
id. . . . . . . . . . . . . .
',I10
175 . /10X,'number of points. . . . . . . . .
',I10
176 . /10X,'constraint list :
'
177 . /5X, ' node ddl skew coefficient
'/)
178 1102 FORMAT( 3I10,1PG20.13/)
184!||====================================================================
185!|| hm_read_mpc0 ../starter/source/constraints/general/mpc/hm_read_mpc.F
186!||--- called by ------------------------------------------------------
187!|| lectur ../starter/source/starter/lectur.F
188!||--- calls -----------------------------------------------------
189!|| hm_get_intv ../starter/source/devtools/hm_reader/hm_get_intv.F
190!|| hm_option_read_key ../starter/source/devtools/hm_reader/hm_option_read_key.F
191!|| hm_option_start ../starter/source/devtools/hm_reader/hm_option_start.F
192!||--- uses -----------------------------------------------------
193!|| hm_option_read_mod ../starter/share/modules1/hm_option_read_mod.F
194!|| submodel_mod ../starter/share/modules1/submodel_mod.F
195!||====================================================================
196 SUBROUTINE HM_READ_MPC0 (LEN, LSUBMODEL)
199 USE HM_OPTION_READ_MOD
200 USE NAMES_AND_TITLES_MOD , ONLY : NCHARTITLE
204#include "implicit_f.inc"
208#include "param_c.inc"
213 TYPE(SUBMODEL_DATA), DIMENSION(*) ,INTENT(IN) :: LSUBMODEL
218 CHARACTER(LEN=NCHARTITLE) :: TITR
221 IS_AVAILABLE = .FALSE.
223 ! Start reading /MPC card
224 CALL HM_OPTION_START('/mpc
')
228 CALL HM_OPTION_READ_KEY(LSUBMODEL,
230 . OPTION_TITR = TITR)
232 CALL HM_GET_INTV('number_of_nodes
',NUMC,IS_AVAILABLE,LSUBMODEL)
subroutine hm_get_float_array_index(name, rval, index, is_available, lsubmodel, unitab)
subroutine hm_get_int_array_index(name, ival, index, is_available, lsubmodel)
subroutine hm_get_intv(name, ival, is_available, lsubmodel)
subroutine hm_option_start(entity_type)
subroutine hm_read_mpc(rbuf, ibufnc, ibufnn, ibufdl, ibufsk, iskn, itab, itabm, lag_ncf, lag_nkf, lag_nhf, ikine, ikine1lag, nom_opt, itagnd, lsubmodel, unitab)
integer, parameter nchartitle
integer, parameter ncharkey
integer, dimension(:), allocatable tagmpc
subroutine hm_sz_r2r(tag, val, lsubmodel)
subroutine ancmsg(msgid, msgtype, anmode, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13, i14, i15, i16, i17, i18, i19, i20, r1, r2, r3, r4, r5, r6, r7, r8, r9, c1, c2, c3, c4, c5, c6, c7, c8, c9, prmode)