5 &(op,dm,xm,typexm,dn,xn,typexn,c,
6 & ndiag,mseg1,mseg2,nseg1,nseg2,nbor)
61 INTEGER,
INTENT(IN) :: NDIAG,MSEG1,MSEG2,NSEG1,NSEG2
62 INTEGER,
INTENT(IN) :: NBOR(*)
63 CHARACTER(LEN=8),
INTENT(IN) :: OP
64 DOUBLE PRECISION,
INTENT(IN) :: DN(*)
67 DOUBLE PRECISION,
INTENT(INOUT) :: XM(mseg1+mseg2)
68 DOUBLE PRECISION,
INTENT(IN) :: XN(nseg1+nseg2)
69 CHARACTER(LEN=1),
INTENT(INOUT) :: TYPEXM,TYPEXN
70 DOUBLE PRECISION,
INTENT(INOUT) :: DM(*)
71 DOUBLE PRECISION,
INTENT(IN) :: C
89 IF(op(3:8).EQ.
'M+N ')
THEN 91 CALL ovdb(
'X=X+Y ' , dm , dn , z , c , nbor, ndiag )
93 IF(typexn(1:1).EQ.
'S')
THEN 94 CALL ov(
'X=X+Y ', x=xm, y=xn, dim1=nseg2)
95 IF(typexm(1:1).EQ.
'Q')
THEN 96 CALL ov(
'X=X+Y ' , x=xm(dimx+1:dimx+nseg2) , y=xn,
99 ELSEIF(typexn(1:1).EQ.
'Q')
THEN 100 IF(typexm(1:1).NE.
'Q')
THEN 101 WRITE(
lu,98) typexm(1:1),op(1:8),typexn(1:1)
102 98
FORMAT(1x,
'OMBORSEG (BIEF) : TYPEXM = ',a1,
103 &
' DOES NOT GO',/,1x,
'FOR THE OPERATION : ',a8,
104 &
' WITH TYPEXN = ',a1)
108 CALL ov(
'X=X+Y ' , x=xm, y=xn, dim1=nseg2)
109 CALL ov(
'X=X+Y ' , x=xm(dimx+1:dimx+nseg2),
110 & y=xn(dimy+1:dimy+nseg2), dim1=nseg2)
111 ELSEIF(typexn(1:1).NE.
'0')
THEN 112 WRITE(
lu,11) typexn(1:1)
113 11
FORMAT(1x,
'OMBORSEG (BIEF) : TYPEXN UNKNOWN :',a1)
123 41
FORMAT(1x,
'OMBORSEG (BIEF) : UNKNOWN OPERATION : ',a8)
subroutine ov(OP, X, Y, Z, C, DIM1)
subroutine omborseg(OP, DM, XM, TYPEXM, DN, XN, TYPEXN, C, NDIAG, MSEG1, MSEG2, NSEG1, NSEG2, NBOR)
subroutine ovdb(OP, X, Y, Z, C, NBOR, NPTFR)