bcaldp2
C BCALDP2 SOURCE CB215821 16/04/21 21:15:14 8920 $ KIMP,NT,NX,XX,XP,XT,XY,XU,XHF,XQ,XQW, $ Q,QAE,XRE,XDH,RECU,XKUL,XKUT1,XKUT2,XKUT3,XKUT4) IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (A-H,O-Z) C C operateur FUITE C calcul du debit solution par dichotomie C RECU,XKUL,XKUT1,XKUT2,XKUT3,XKUT4 : coef lois de frot utilisateur C C>>> cf. sub. BECALC2 C DIMENSION XX(NT),XP(NT),XT(NT),XY(NT),XU(NT),XN(NPP),TN(NPP) DIMENSION EN(NPP),BN(NPP) DIMENSION XHF(NT),XQ(NT),XQW(NT),XRE(NT),XDH(NT) IF(KIMP.GE.1) THEN WRITE(6,*) ' entree bcaldp2' ENDIF FPM = 1.D-3 EPM = -FPM AL = 0.2 NITMAX = 100 C WRITE(6,*) ' PRECISION ',FPM C Q=Q0 $ KIMP,NT,NX,XX,XP,XT,XY,XU,XHF,XQ,XQW, $ QAE,XRE,XDH,PSQ,RECU,XKUL,XKUT1,XKUT2,XKUT3,XKUT4) DP0=DP C WRITE(6,*) ' Q PSQ DP ',Q,PSQ,DP NIT=1 10 CONTINUE IF (KIMP.GE.1) write(6,*) 'bcaldp2: p sortie trop grand Q ',Q Q=Q*(1.+AL) $ KIMP,NT,NX,XX,XP,XT,XY,XU,XHF,XQ,XQW, $ QAE,XRE,XDH,PSQ,RECU,XKUL,XKUT1,XKUT2,XKUT3,XKUT4) NIT = NIT + 1 IF ( NIT.GT.99) THEN ENDIF GOTO 10 ENDIF NIT=1 20 CONTINUE IF (KIMP.GE.1) write(6,*) 'bcaldp2: p sortie trop petit Q ',Q Q=Q*(1.-AL) $ KIMP,NT,NX,XX,XP,XT,XY,XU,XHF,XQ,XQW, $ QAE,XRE,XDH,PSQ,RECU,XKUL,XKUT1,XKUT2,XKUT3,XKUT4) NIT = NIT + 1 IF ( NIT.GT.99) THEN ENDIF GOTO 20 ENDIF C>>> Q1 ET Q2 SONT LES BORNES DE LA DICHOTOMIE Q1=MIN(Q0,Q) Q2=MAX(Q0,Q) NIT=1 30 CONTINUE Q=(Q1+Q2)/2 IF (KIMP.GE.1) write(6,*) 'bcaldp2: dichotomie Q1 Q2 Q= ',Q1,Q2,Q $ KIMP,NT,NX,XX,XP,XT,XY,XU,XHF,XQ,XQW, $ QAE,XRE,XDH,PSQ,RECU,XKUL,XKUT1,XKUT2,XKUT3,XKUT4) NIT = NIT + 1 IF ( NIT.GT.99) THEN ENDIF Q1=Q ELSE Q2=Q ENDIF GOTO 30 ENDIF ENDIF ENDIF IF (KIMP.GE.1) THEN WRITE(6,*) ' ' WRITE(6,*) 'bcaldp2 dico Q0 Q PS PSQ NX NIT ',Q0,Q,PS,PSQ,NX,NIT WRITE(6,*) ' ' ENDIF RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales