* RESEAU PROCEDUR JC220346 12/09/12 21:15:08 7501 ************************************************************************ * * * PROCEDURE RESEAU (APPELEE PAR LA PROCEDURE TRACTUFI) * * * * INTERPOLATION D'UN RESEAU PARAMETRE DE COURBES * * * ************************************************************************ ************************************************************************ * * * LA PROCEDURE RESEAU S'APPLIQUE A DES COURBES MONOTONES * * * * IL N'EST PAS NECESSAIRE QU'ELLES AIENT DES BORNES COMMUNES * * * * QUAND CELA EST POSSIBLE ON PROLONGE LINEAIREMENT LES LISTES * * D'ABSCISSES ET D'ORDONNEES POUR ATTEINDRE DES BORNES * * COMMUNES SANS POUR AUTANT MODIFIER LES COURBES FOURNIES * * * ************************************************************************ *----------------------------------------------------------------------- * RECEPTION DES ARGUMENTS TIN='INDEX' TAB; * ON CREE LA LISTE CONTENANT LES PARAMETRES I=0; 'REPE' BOUCLE NIND; I=I + 1; IND=TIN.I; 'REMP' LPAR I IND; 'FIN' BOUCLE; * ON ORDONNE LA LISTE CONTENANT LES PARAMETRES * ON RECHERCHE LES DEUX PARAMETRES QUI ENTOURENT PARAM ET ON DETERMINE * LA POSITION DE PARAM ENTRE CES DEUX PARAMETRES LPAR = ORDONNER LPAR; 'SI' (PARAM < T1); PAR1=T1; 'FINSI'; 'SI' (PARAM > T2); PAR2=T2; 'FINSI'; 'SI' ('ET' (PARAM >EG T1) (PARAM <EG T2)); I=1; 'REPE' BOUCLE0 (N - 1); I=I + 1; 'SI' (T2 > PARAM); PAR1=T1; PAR2=T2; 'QUITTER' BOUCLE0; 'SINON'; T1=T2; 'FINSI'; 'FIN' BOUCLE0; 'FINSI'; LAMBDA=(PAR2 - PARAM) / (PAR2 - PAR1); EV1=TAB.PAR1; EV2=TAB.PAR2; *======================================================================= *= = *= ON VERIFIE QUE LES DEUX COURBES SONT MONOTONES = *= ET ON CREE LES LISTES DE TRAVAIL A MODIFIER = *= = *======================================================================= PI1=(Y2 - Y1) / (X2 - X1); P1=PI1; I=1; 'REPETER' BOUCLE1 (L1 - 2); I=I + 1; P2=(Y2 - Y1) / (X2 - X1); 'SI' ((P1 * P2) < 0.); 'FINSI'; P1=P2; 'FIN' BOUCLE1; PF1=P2; PI2=(Y2 - Y1) / (X2 - X1); P1=PI2; I=1; 'REPETER' BOUCLE2 (L2 - 2); I=I + 1; P2=(Y2 - Y1) / (X2 - X1); 'SI' ((P1 * P2) < 0.); 'FINSI'; P1=P2; 'FIN' BOUCLE2; PF2=P2; *======================================================================= *= = *= ON COMPARE LES PENTES INITIALES ET FINALES A 1 (EN VALEUR ABSOLUE) = *= = *======================================================================= *--------------------------------------------------------DEBUT DE COURBE 'SI' ('ET' ((ABS(PI1)) >EG 1.) ((ABS(PI2)) >EG 1.));IPEND=A;'FINSI'; 'SI' ('ET' ((ABS(PI1)) < 1.) ((ABS(PI2)) < 1.));IPEND=B;'FINSI'; 'SI' ('ET' ((ABS(PI1)) >EG 1.) ((ABS(PI2)) < 1.));IPEND=F;'FINSI'; 'SI' ('ET' ((ABS(PI1)) < 1.) ((ABS(PI2)) >EG 1.));IPEND=F;'FINSI'; *----------------------------------------------------------FIN DE COURBE 'SI' ('ET' ((ABS(PF1)) >EG 1.) ((ABS(PF2)) >EG 1.));IPENF=A;'FINSI'; 'SI' ('ET' ((ABS(PF1)) < 1.) ((ABS(PF2)) < 1.));IPENF=B;'FINSI'; 'SI' ('ET' ((ABS(PF1)) >EG 1.) ((ABS(PF2)) < 1.));IPENF=F;'FINSI'; 'SI' ('ET' ((ABS(PF1)) < 1.) ((ABS(PF2)) >EG 1.));IPENF=F;'FINSI'; *======================================================================= *= = *= CAS OU UNE COURBE EST CROISSANTE ET L'AUTRE DECROISSANTE = *= = *======================================================================= 'SI' ((PI1 * PI2) < 0.); XOUY=XX; *--------------------------------------------------------DEBUT DE COURBE 'SI' ('EGA' IPEND 'B'); 'SI' (X1 < X2); *------------------------------------------PROLONGATION DE LA COURBE N2 M2=M2 + 1; Y=Y + ((X1 - X2) * PI2); 'FINSI'; 'SI' (X1 > X2); *------------------------------------------PROLONGATION DE LA COURBE N1 M1=M1 + 1; Y=Y + ((X2 - X1) * PI1); 'FINSI'; 'FINSI'; 'SI' ('OU' ('EGA' IPEND 'A') ('EGA' IPEND 'F')); 'SI' (X1 < X2); *-------------------------------------------RESTRICTION DE LA COURBE N1 I=1; 'REPE' BOUCLE3 (M1 - 1); I=I + 1; 'SI' (X <EG X2); M1=M1 - 1; 'SINON'; 'QUITTER' BOUCLE3; 'FINSI'; 'FIN' BOUCLE3; 'FINSI'; 'SI' (X1 > X2); *-------------------------------------------RESTRICTION DE LA COURBE N2 I=1; 'REPE' BOUCLE4 (M2 - 1); I=I + 1; 'SI' (X <EG X1); M2=M2 - 1; 'SINON'; 'QUITTER' BOUCLE4; 'FINSI'; 'FIN' BOUCLE4; 'FINSI'; 'FINSI'; *----------------------------------------------------------FIN DE COURBE 'SI' ('EGA' IPENF 'B'); 'SI' (X1 < X2); *------------------------------------------PROLONGATION DE LA COURBE N1 Y=Y + ((X2 - X1) * PF1); M1=M1 + 1; 'FINSI'; 'SI' (X1 > X2); *------------------------------------------PROLONGATION DE LA COURBE N2 Y=Y + ((X1 - X2) * PF2); M2=M2 + 1; 'FINSI'; 'FINSI'; 'SI' ('OU' ('EGA' IPENF 'A') ('EGA' IPENF 'B')); 'SI' (X1 < X2); *-------------------------------------------RESTRICTION DE LA COURBE N2 I=1; 'REPE' BOUCLE5 (M2 - 1); I=I + 1; 'SI' (X < X1); 'SINON'; M2=I; 'QUITTER' BOUCLE5; 'FINSI'; 'FIN' BOUCLE5; 'FINSI'; 'SI' (X1 > X2); *-------------------------------------------RESTRICTION DE LA COURBE N1 I=1; 'REPE' BOUCLE6 (M1 - 1); I=I + 1; 'SI' (X < X2); 'SINON'; M1=I; 'QUITTER' BOUCLE6; 'FINSI'; 'FIN' BOUCLE6; 'FINSI'; 'FINSI'; 'FINSI'; *======================================================================= *= = *= COURBES SIMULTANEMENT SOIT CROISSANTES SOIT DECROISSANTES = *= = *======================================================================= *&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& *& & *& PENTES INITIALES SUPERIEURES A 1 & *& PENTES FINALES SUPERIEURES A 1 & *& & *&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 'SI' ('ET' ('EGA' IPEND 'A') ('EGA' IPENF 'A')); XOUY=YY; *--------------------------------------------------------DEBUT DE COURBE 'SI' (Y1 < Y2); *------------------------------------------PROLONGATION DE LA COURBE N2 M2=M2 + 1; X=X + ((Y1 - Y2) / PI2); 'FINSI'; 'SI' (Y1 > Y2); *------------------------------------------PROLONGATION DE LA COURBE N1 M1=M1 + 1; X=X + ((Y2 - Y1) / PI1); 'FINSI'; *----------------------------------------------------------FIN DE COURBE 'SI' (Y1 < Y2); *------------------------------------------PROLONGATION DE LA COURBE N1 X=X + ((Y2 - Y1) / PF1); M1=M1 + 1; 'FINSI'; 'SI' (Y1 > Y2); *------------------------------------------PROLONGATION DE LA COURBE N2 X=X + ((Y1 - Y2) / PF2); M2=M2 + 1; 'FINSI'; 'FINSI'; *&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& *& & *& PENTES INITIALES INFERIEURES A 1 & *& PENTES FINALES INFERIEURES A 1 & *& & *&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 'SI' ('ET' ('EGA' IPEND 'B') ('EGA' IPENF 'B')); XOUY=XX; *--------------------------------------------------------DEBUT DE COURBE 'SI' (X1 < X2); *------------------------------------------PROLONGATION DE LA COURBE N2 M2=M2 + 1; Y=Y + ((X1 - X2) * PI2); 'FINSI'; 'SI' (X1 > X2); *------------------------------------------PROLONGATION DE LA COURBE N1 M1=M1 + 1; Y=Y + ((X2 - X1) * PI1); 'FINSI'; *----------------------------------------------------------FIN DE COURBE 'SI' (X1 < X2); *------------------------------------------PROLONGATION DE LA COURBE N1 Y=Y + ((X2 - X1) * PF1); M1=M1 + 1; 'FINSI'; 'SI' (X1 > X2); *------------------------------------------PROLONGATION DE LA COURBE N2 Y=Y + ((X1 - X2) * PF2); M2=M2 + 1; 'FINSI'; 'FINSI'; *&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& *& & *& PENTES INITIALES DE CHAQUES COTES DE 1 & *& PENTES FINALES DE CHAQUES COTES DE 1 & *& & *&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 'SI' ('ET' ('EGA' IPEND 'F') ('EGA' IPENF 'F')); XOUY=XX; *--------------------------------------------------------DEBUT DE COURBE 'SI' (X1 < X2); *-------------------------------------------RESTRICTION DE LA COURBE N1 I=1; 'REPE' BOUCLE7 (M1 - 1); I=I + 1; 'SI' (X <EG X2); M1=M1 - 1; 'SINON'; 'QUITTER' BOUCLE7; 'FINSI'; 'FIN' BOUCLE7; 'FINSI'; 'SI' (X1 > X2); *-------------------------------------------RESTRICTION DE LA COURBE N2 I=1; 'REPE' BOUCLE8 (M2 - 1); I=I + 1; 'SI' (X <EG X1); M2=M2 - 1; 'SINON'; 'QUITTER' BOUCLE8; 'FINSI'; 'FIN' BOUCLE8; 'FINSI'; *----------------------------------------------------------FIN DE COURBE 'SI' (X1 < X2); *-------------------------------------------RESTRICTION DE LA COURBE N2 I=1; 'REPE' BOUCLE9 (M2 - 1); I=I + 1; 'SI' (X < X1); 'SINON'; M2=I; 'QUITTER' BOUCLE9; 'FINSI'; 'FIN' BOUCLE9; 'FINSI'; 'SI' (X1 > X2); *-------------------------------------------RESTRICTION DE LA COURBE N1 I=1; 'REPE' BOUCLE10 (M1 - 1); I=I + 1; 'SI' (X < X2); 'SINON'; M1=I; 'QUITTER' BOUCLE10; 'FINSI'; 'FIN' BOUCLE10; 'FINSI'; 'FINSI'; *&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& *& & *& PENTES INITIALES SUPERIEURES A 1 & *& PENTES FINALES DE CHAQUES COTES DE 1 & *& & *&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 'SI' ('ET' ('EGA' IPEND 'A') ('EGA' IPENF 'F')); XOUY=YY; *--------------------------------------------------------DEBUT DE COURBE 'SI' (Y1 < Y2); *------------------------------------------PROLONGATION DE LA COURBE N2 M2= M2 + 1; X=X + ((Y1 - Y2) / PI2); 'FINSI'; 'SI' (Y1 > Y2); *------------------------------------------PROLONGATION DE LA COURBE N1 M1= M1 + 1; X=X + ((Y2 - Y1) / PI1); 'FINSI'; *----------------------------------------------------------FIN DE COURBE 'SI' (Y1 < Y2); *-------------------------------------------RESTRICTION DE LA COURBE N2 I=1; 'REPE' BOUCLE11 (M2 - 1); I=I + 1; 'SI' (Y < Y1); 'SINON'; M2=I; 'QUITTER' BOUCLE11; 'FINSI'; 'FIN' BOUCLE11; 'FINSI'; 'SI' (Y1 > Y2); *-------------------------------------------RESTRICTION DE LA COURBE N1 I=1; 'REPE' BOUCLE12 (M1 - 1); I=I + 1; 'SI' (Y < Y2); 'SINON'; M1=I; 'QUITTER' BOUCLE12; 'FINSI'; 'FIN' BOUCLE12; 'FINSI'; 'FINSI'; *&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& *& & *& PENTES INITIALES INFERIEURES A 1 & *& PENTES FINALES DE CHAQUES COTES DE 1 & *& & *&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 'SI' ('ET' ('EGA' IPEND 'B') ('EGA' IPENF 'F')); XOUY=XX; *--------------------------------------------------------DEBUT DE COURBE 'SI' (X1 < X2); *------------------------------------------PROLONGATION DE LA COURBE N2 M2= M2 + 1; Y=Y + ((X1 - X2) * PI2); 'FINSI'; 'SI' (X1 > X2); *------------------------------------------PROLONGATION DE LA COURBE N1 M1= M1 + 1; Y=Y + ((X2 - X1) * PI1); 'FINSI'; *----------------------------------------------------------FIN DE COURBE 'SI' (X1 < X2); *-------------------------------------------RESTRICTION DE LA COURBE N1 I=1; 'REPE' BOUCLE13 (M2 - 1); I=I + 1; 'SI' (X < X1); 'SINON'; M2=I; 'QUITTER' BOUCLE13; 'FINSI'; 'FIN' BOUCLE13; 'FINSI'; 'SI' (X1 > X2); *-------------------------------------------RESTRICTION DE LA COURBE N1 I=1; 'REPE' BOUCLE14 (M1 - 1); I=I + 1; 'SI' (X < X2); 'SINON'; M1=I; 'QUITTER' BOUCLE14; 'FINSI'; 'FIN' BOUCLE14; 'FINSI'; 'FINSI'; *&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& *& & *& PENTES INITIALES DE CHAQUES COTES DE 1 & *& PENTES FINALES SUPERIEURES A 1 & *& & *&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 'SI' ('ET' ('EGA' IPEND 'F') ('EGA' IPENF 'A')); XOUY=YY; *--------------------------------------------------------DEBUT DE COURBE 'SI' (Y1 < Y2); *-------------------------------------------RESTRICTION DE LA COURBE N1 I=1; 'REPE' BOUCLE15 (M1 - 1); I=I + 1; 'SI' (Y <EG Y2); M1=M1 - 1; 'SINON'; 'QUITTER' BOUCLE15; 'FINSI'; 'FIN' BOUCLE15; 'FINSI'; 'SI' (Y1 > Y2); *-------------------------------------------RESTRICTION DE LA COURBE N2 I=1; 'REPE' BOUCLE16 (M2 - 1); I=I + 1; 'SI' (Y <EG Y1); M2=M2 - 1; 'SINON'; 'QUITTER' BOUCLE16; 'FINSI'; 'FIN' BOUCLE16; 'FINSI'; *----------------------------------------------------------FIN DE COURBE 'SI' (Y1 < Y2); *------------------------------------------PROLONGATION DE LA COURBE N1 X=X + ((Y2 - Y1) / PF1); M1=M1 + 1; 'FINSI'; 'SI' (Y1 > Y2); *------------------------------------------PROLONGATION DE LA COURBE N2 X=X + ((Y1 - Y2) / PF2); M2=M2 + 1; 'FINSI'; 'FINSI'; *&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& *& & *& PENTES INITIALES DE CHAQUES COTES DE 1 & *& PENTES FINALES INFERIEURES A 1 & *& & *&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 'SI' ('ET' ('EGA' IPEND 'F') ('EGA' IPENF 'B')); XOUY=XX; *--------------------------------------------------------DEBUT DE COURBE 'SI' (X1 < X2); *-------------------------------------------RESTRICTION DE LA COURBE N1 I=1; 'REPE' BOUCLE17 (M1 - 1); I=I + 1; 'SI' (X <EG X2); M1=M1 - 1; 'SINON'; 'QUITTER' BOUCLE17; 'FINSI'; 'FIN' BOUCLE17; 'FINSI'; 'SI' (X1 > X2); *-------------------------------------------RESTRICTION DE LA COURBE N2 I=1; 'REPE' BOUCLE18 (M2 - 1); I=I + 1; 'SI' (X <EG X1); M2=M2 - 1; 'SINON'; 'QUITTER' BOUCLE18; 'FINSI'; 'FIN' BOUCLE18; 'FINSI'; *----------------------------------------------------------FIN DE COURBE 'SI' (X1 < X2); *------------------------------------------PROLONGATION DE LA COURBE N1 Y=Y + ((X2 - X1) * PF1); M1=M1 + 1; 'FINSI'; 'SI' (X1 > X2); *------------------------------------------PROLONGATION DE LA COURBE N2 Y=Y + ((X1 - X2) * PF2); M2=M2 + 1; 'FINSI'; 'FINSI'; *&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& *& & *& PENTES INITIALES SUPERIEURES A 1 & *& PENTES FINALES INFERIEURES A 1 & *& & *&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 'SI' ('ET' ('EGA' IPEND 'A') ('EGA' IPENF 'B')); XOUY=YX; *--------------------------------------------------------DEBUT DE COURBE 'SI' (X1 < X2); *------------------------------------------PROLONGATION DE LA COURBE N2 M2= M2 + 1; Y=Y + ((X1 - X2) * PI2); 'FINSI'; 'SI' (X1 > X2); *------------------------------------------PROLONGATION DE LA COURBE N1 M1= M1 + 1; Y=Y + ((X2 - X1) * PI1); 'FINSI'; *----------------------------------------------------------FIN DE COURBE 'SI' (X1 < X2); *------------------------------------------PROLONGATION DE LA COURBE N1 Y=Y + ((X2 - X1) * PF1); M1=M1 + 1; 'FINSI'; 'SI' (X1 > X2); *------------------------------------------PROLONGATION DE LA COURBE N2 Y=Y + ((X1 - X2) * PF2); M2=M2 + 1; 'FINSI'; 'FINSI'; *&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& *& & *& PENTES INITIALES INFERIEURES A 1 & *& PENTES FINALES SUPERIEURES A 1 & *& & *&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 'SI' ('ET' ('EGA' IPEND 'B') ('EGA' IPENF 'A')); XOUY=XY; *--------------------------------------------------------DEBUT DE COURBE 'SI' (X1 < X2); *------------------------------------------PROLONGATION DE LA COURBE N2 M2= M2 + 1; Y=Y + ((X1 - X2) * PI2); 'FINSI'; 'SI' (X1 > X2); *------------------------------------------PROLONGATION DE LA COURBE N1 M1= M1 + 1; Y=Y + ((X2 - X1) * PI1); 'FINSI'; *----------------------------------------------------------FIN DE COURBE 'SI' (Y1 < Y2); *------------------------------------------PROLONGATION DE LA COURBE N1 X=X + ((Y2 - Y1) / PF1); M1=M1 + 1; 'FINSI'; 'SI' (Y1 > Y2); *------------------------------------------PROLONGATION DE LA COURBE N2 X=X + ((Y1 - Y2) / PF2); M2=M2 + 1; 'FINSI'; 'FINSI'; *======================================================================= *= = *= ELABORATION DE LA COURBE RELATIVE A PARAM = *= = *======================================================================= *----------------------------------------------------------------------- *- COUPURE DANS LA COURBE : INTERPOLATION D'ABORD EN Y, PUIS EN X - *----------------------------------------------------------------------- 'SI' ('EGA' XOUY 'YX'); M=M1 / 2; I=0; 'REPE' BOUCLE19 M; I=I + 1; 'SINON'; 'FINSI'; X=(LAMBDA * X1) + ((1. - LAMBDA) * X2); 'REMP' LABS I X; 'REMP' LORD I Y; 'FIN' BOUCLE19; 'REPE' BOUCLE20 (M1 - M); I=I + 1; 'SINON'; 'FINSI'; Y=(LAMBDA * Y1) + ((1. - LAMBDA) * Y2); 'REMP' LABS I X; 'REMP' LORD I Y; 'FIN' BOUCLE20; 'FINSI'; *----------------------------------------------------------------------- *- COUPURE DANS LA COURBE : INTERPOLATION D'ABORD EN X, PUIS EN Y - *----------------------------------------------------------------------- 'SI' ('EGA' XOUY 'XY'); M=M1 / 2; I=0; 'REPE' BOUCLE21 M; I=I + 1; 'SINON'; 'FINSI'; Y=(LAMBDA * Y1) + ((1. - LAMBDA) * Y2); 'REMP' LABS I X; 'REMP' LORD I Y; 'FIN' BOUCLE21; 'REPE' BOUCLE22 (M1 - M); I=I + 1; 'SINON'; 'FINSI'; X=(LAMBDA * X1) + ((1. - LAMBDA) * X2); 'REMP' LABS I X; 'REMP' LORD I Y; 'FIN' BOUCLE22; 'FINSI'; *----------------------------------------------------------------------- *- CAS D'UNE INTERPOLATION SANS COUPURE EN X - *----------------------------------------------------------------------- 'SI' ('EGA' XOUY 'XX'); I=0; 'REPE' BOUCLE23 M1; I=I + 1; 'SINON'; 'FINSI'; Y=(LAMBDA * Y1) + ((1. - LAMBDA) * Y2); 'REMP' LORD I Y; 'FIN' BOUCLE23; 'FINSI'; *----------------------------------------------------------------------- *- CAS D'UNE INTERPOLATION SANS COUPURE EN Y - *----------------------------------------------------------------------- 'SI' ('EGA' XOUY 'YY'); I=0; 'REPE' BOUCLE24 M1; I=I + 1; 'SINON'; 'FINSI'; X=(LAMBDA * X1) + ((1. - LAMBDA) * X2); 'REMP' LABS I X; 'FIN' BOUCLE24; 'FINSI'; *----------------------------------------------------------------------- *- FIN DE LA PROCEDURE - *----------------------------------------------------------------------- DETRUIRE TABS1; DETRUIRE TORD1; DETRUIRE TABS2; DETRUIRE TORD2; * * 'FINPROC' EVN;
© Cast3M 2003 - Tous droits réservés.
Mentions légales