5 &(dam,npoin,ipreco,iprec2)
70 INTEGER,
INTENT(IN) :: NPOIN
71 INTEGER,
INTENT(INOUT) :: IPRECO, IPREC2
72 DOUBLE PRECISION,
INTENT(IN) :: DAM(npoin)
80 IF (ipreco.EQ.0) ipreco = 1
83 IF (mod(ipreco,2).EQ.0.OR.mod(ipreco,3).EQ.0)
THEN 86 IF (dam(i).LE.0.d0)
THEN 87 DO WHILE(mod(iprec2,2).EQ.0)
90 DO WHILE(mod(iprec2,3).EQ.0)
94 101
FORMAT(1x,
'CNTPRE (ARTEMIS) : DIAGONAL SCALING NOT APPLIED (ONE 95 &COEFFICIENT OF THE MATRIX DIAGONAL IS NEGATIVE OR ZERO)')
100 ELSEIF (mod(ipreco,5).EQ.0)
THEN 103 IF (abs(dam(i)).LE.1.d-6)
THEN 104 DO WHILE(mod(iprec2,5).EQ.0)
108 201
FORMAT(1x,
'CNTPRE (ARTEMIS) : DIAGONAL SCALING NOT APPLIED (ONE 109 &COEFFICIENT OF THE MATRIX DIAGONAL IS ZERO)')
121 IF(ncsize.GT.1) iprec2=
p_min(iprec2)
subroutine cntpre(DAM, NPOIN, IPRECO, IPREC2)