38 . LSUBMODEL,UNITAB_SUB,MAT_ID)
62#include "implicit_f.inc"
74 my_real,
DIMENSION(4) :: unitab_sub
75 CHARACTER(LEN=NCHARLINE) :: IUSER_KEY
76 TYPE (FAIL_PARAM_) ,
INTENT(INOUT) :: FAIL
80 INTEGER NUPARAM,NUVAR,NFUNC
81 INTEGER,
PARAMETER :: MAXFUNC = 100
82 INTEGER,
PARAMETER :: MAXPARAM = 1000
83 INTEGER,
DIMENSION(MAXFUNC) :: IFUNC
84 my_real,
DIMENSION(MAXPARAM) :: uparam
85 CHARACTER(LEN=4096) :: SCR_FILE_NAME
86 CHARACTER(LEN=ncharline) :: RLINE
87 CHARACTER (LEN=4) :: CRUP
88 CHARACTER(LEN=nchartitle) ::
89 LOGICAL :: IS_AVAILABLE
91 INTEGER SCR_FILE_NAME_LEN
96 IF (userl_avail == 0)
THEN
98 option=
'/FAIL/'//iuser_key
101 . msgtype=msgerror,c1=option(1:size),anmode=aninfo)
110 WRITE(crup,
'(I4.4)')irupt
111 scr_file_name=
'SI'//rootnam(1:rootlen)//
'_'//crup//
'.scr'
112 scr_file_name_len=len_trim(scr_file_name)
113 OPEN(unit=30,file=trim(scr_file_name),form=
'FORMATTED',recl=
ncharline
118 WRITE(30,fmt=
'(A)')trim(rline)
122 CALL st_userlib_lecr(irupt,rootnam,rootlen,uparam,maxparam,nuparam,
123 . nuvar ,ifunc,maxfunc,nfunc,unitab_sub
126 fail%KEYWORD =
'USER FAILURE MODEL'
129 fail%NUPARAM = nuparam
136 ALLOCATE (fail%UPARAM(fail%NUPARAM))
137 ALLOCATE (fail%IPARAM(fail%NIPARAM))
138 ALLOCATE (fail%IFUNC (fail%NFUNC))
139 ALLOCATE (fail%TABLE (fail%NTABLE))
141 fail%UPARAM(1:nuparam) = uparam(1:nuparam)
142 fail%IFUNC (1:nfunc) = ifunc(1:nfunc)
subroutine hm_read_fail_user(fail, irupt, iuser_key, userl_avail, lsubmodel, unitab_sub, mat_id)
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)