5 &(x, xa,typexa,b,ikle,nelem,nelmax,npoin,ielm,ditr,copy,lv)
87 INTEGER ,
INTENT(IN) :: IELM,NPOIN,NELEM,NELMAX,LV
88 INTEGER ,
INTENT(IN) :: IKLE(nelmax,*)
89 DOUBLE PRECISION,
INTENT(INOUT) :: X(npoin)
90 DOUBLE PRECISION,
INTENT(IN) :: XA(nelmax,*),B(npoin)
91 CHARACTER(LEN=1),
INTENT(IN) :: TYPEXA,DITR
92 LOGICAL ,
INTENT(IN) :: COPY
98 IF(copy)
CALL ov(
'X=Y ', x=x, y=b, dim1=npoin)
106 IF(typexa(1:1).EQ.
'S' .OR.
107 & (typexa(1:1).EQ.
'Q'.AND.ditr(1:1).EQ.
'T'))
THEN 111 CALL des11(x,xa(1,1),xa(1,2),xa(1,3),
112 & ikle(1,1),ikle(1,2),ikle(1,3),nelem,nelmax,npoin,lv)
114 ELSEIF(ielm.EQ.21.OR.ielm.EQ.12.OR.ielm.EQ.31.OR.ielm.EQ.51)
THEN 116 CALL des21(x,xa(1,1),xa(1,2),xa(1,3),xa(1,4),xa(1,5),xa(1,6),
117 & ikle(1,1),ikle(1,2),ikle(1,3),ikle(1,4),
118 & nelem,nelmax,npoin,lv)
120 ELSEIF(ielm.EQ.41)
THEN 122 CALL des41(x,xa(1,1),xa(1,2),xa(1,3),xa(1,4),xa(1,5),xa(1,6),
123 & xa(1,7),xa(1,8),xa(1,9),xa(1,10),xa(1,11),xa(1,12),
124 & xa(1,13),xa(1,14),xa(1,15),
125 & ikle(1,1),ikle(1,2),ikle(1,3),
126 & ikle(1,4),ikle(1,5),ikle(1,6),nelem,nelmax,npoin,lv)
133 101
FORMAT(1x,
'DESCEN (BIEF) : IELM = ',1i6,
' ELEMENT NOT AVAILABLE')
141 ELSEIF(typexa(1:1).EQ.
'Q'.AND.ditr(1:1).EQ.
'D')
THEN 145 CALL des11(x,xa(1,4),xa(1,5),xa(1,6),
146 & ikle(1,1),ikle(1,2),ikle(1,3),nelem,nelmax,npoin,lv)
148 ELSEIF(ielm.EQ.21.OR.ielm.EQ.12.OR.ielm.EQ.31.OR.ielm.EQ.51)
THEN 150 CALL des21(x,xa(1,7),xa(1,8),xa(1,9),xa(1,10),xa(1,11),xa(1,12),
151 & ikle(1,1),ikle(1,2),ikle(1,3),ikle(1,4),
152 & nelem,nelmax,npoin,lv)
154 ELSEIF(ielm.EQ.41)
THEN 157 & xa(1,16),xa(1,17),xa(1,18),xa(1,19),xa(1,20),xa(1,21),
158 & xa(1,22),xa(1,23),xa(1,24),xa(1,25),xa(1,26),xa(1,27),
159 & xa(1,28),xa(1,29),xa(1,30),
160 & ikle(1,1),ikle(1,2),ikle(1,3),
161 & ikle(1,4),ikle(1,5),ikle(1,6),nelem,nelmax,npoin,lv)
176 WRITE(
lu,201) typexa(1:1),ditr(1:1)
177 201
FORMAT(1x,
'DESCEN (BIEF) : UNEXPECTED TYPE OF MATRIX :',a1,/,
178 & 1x,
'WITH DITR=',a1)
subroutine ov(OP, X, Y, Z, C, DIM1)
subroutine descen(X, XA, TYPEXA, B, IKLE, NELEM, NELMAX, NPOIN, IELM, DITR, COPY, LV)
subroutine des11(X, XA1, XA2, XA3, IKLE1, IKLE2, IKLE3, NELEM, NELMAX, NPOIN, LV)
subroutine des41(X, XA1, XA2, XA3, XA4, XA5, XA6, XA7, XA8, XA9, XA10, XA11, XA12, XA13, XA14, XA15, IKLE1, IKLE2, IKLE3, IKLE4, IKLE5, IKLE6, NELEM, NELMAX, NPOIN, LV)
subroutine des21(X, XA1, XA2, XA3, XA4, XA5, XA6, IKLE1, IKLE2, IKLE3, IKLE4, NELEM, NELMAX, NPOIN, LV)