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
88 CHARACTER(LEN=nchartitle) :: TITLE
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)
105 CALL hm_get_intv (
'Number_of_datalines' ,nlines ,is_available, lsubmodel)
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)