5 &(
dimens ,
SIZE , motcle , utindx , nmax ,
6 & offset , adress , indic , luign ,
7 & motint , motrea , motlog , motcar , motatt ,
8 & defcar , defint , deflog , defrea , defatt )
78 INTEGER NMAX,MOTINT(*),ADRESS(4,*),DIMENS(4,*)
79 INTEGER SIZE(4,*),OFFSET(4),DEFINT(*),INDIC(4,*)
80 LOGICAL UTINDX(4,*),DEFLOG(*),MOTLOG(*),LUIGN
81 CHARACTER(LEN=72) MOTCLE(4,*)
82 CHARACTER(LEN=PATH_LEN) MOTCAR(*),DEFCAR(*)
83 CHARACTER(LEN=PATH_LEN) MOTATT(4,*),DEFATT(*)
84 DOUBLE PRECISION MOTREA(*),DEFREA(*)
102 IF (
indx .GT. nmax)
THEN 103 WRITE(
lu,*)
'****************************************' 104 WRITE(
lu,*)
'ERROR AT LINE:',
nlign,
105 &
' OF THE DICTIONARY' 106 WRITE(
lu,*)
'INVALID INDEX: ',
indx,
' MAX = ',nmax
107 WRITE(
lu,*)
'****************************************' 113 WRITE(
lu,*)
'*****************************************' 114 WRITE(
lu,*)
'ERROR AT LINE:',
nlign,
115 &
' OF THE DICTIONARY' 116 WRITE(
lu,*)
'TOO MANY KEY-WORDS, MAXIMUM : ',nmax
117 WRITE(
lu,*)
'*****************************************' 123 IF (
indx .LE. 0)
GO TO 1600
126 WRITE(
lu,*)
'*****************************' 127 WRITE(
lu,*)
'ERROR AT LINE: ',
nlign 128 WRITE(
lu,*)
'THE INDEX: ',
indx,
129 &
' IS USED TWO TIMES FOR THE TYPE : ',
ntyp 130 WRITE(
lu,*)
'*****************************' 149 WRITE(
lu,*)
'WARNING IN DICTIONARY:' 151 WRITE(
lu,*)
'THE NUMBER OF DEFAULT VALUES ',
deflu,
152 &
' IS DIFFERENT FROM THE DECLARED SIZE ',
itai 156 IF(
deflu .EQ. 0)
THEN 157 IF (
ntyp .EQ. 1)
THEN 159 ELSEIF (
ntyp .EQ. 2)
THEN 161 ELSEIF (
ntyp .EQ. 3)
THEN 163 ELSEIF (
ntyp .EQ. 4)
THEN 171 IF (
ntyp .EQ. 1)
THEN 172 defint(i) = defint(max(1,
deflu))
173 ELSEIF (
ntyp .EQ. 2)
THEN 174 defrea(i) = defrea(max(1,
deflu))
175 ELSEIF (
ntyp .EQ. 3)
THEN 176 deflog(i) = deflog(max(1,
deflu))
177 ELSEIF (
ntyp .EQ. 4)
THEN 178 defcar(i) = defcar(max(1,
deflu))
210 & .OR. (offset(
ntyp) .GT. nmax))
THEN 211 WRITE(
lu,*)
'ADRESS GREATER THAN NMAX = ',nmax
212 WRITE(
lu,*)
'TOO MANY VALUES OF TYPE : ',
ntyp 214 WRITE(
lu,*)
'STOP AT KEY-WORD OF INDEX: ',
indx 220 IF (
ntyp .EQ. 1)
THEN 221 motint(adress(
ntyp,
indx)+i-1) = defint(i)
222 ELSE IF (
ntyp .EQ. 2)
THEN 223 motrea(adress(
ntyp,
indx)+i-1) = defrea(i)
224 ELSE IF (
ntyp .EQ. 3)
THEN 225 motlog(adress(
ntyp,
indx)+i-1) = deflog(i)
226 ELSE IF (
ntyp .EQ. 4)
THEN 227 motcar(adress(
ntyp,
indx)+i-1) = defcar(i)
integer function dimens(IELM)
subroutine classe(DIMENS, SIZE, MOTCLE, UTINDX, NMAX, OFFSET, ADRESS, INDIC, LUIGN, MOTINT, MOTREA, MOTLOG, MOTCAR, MOTATT, DEFCAR, DEFINT, DEFLOG, DEFREA, DEFATT)
integer, dimension(4) nmot