Télécharger lignecourant.dgibi
* fichier : lignecourant.dgibi GRAPH = faux ; *********************************************************************** * CALCUL DES LIGNES DE COURANT : ON TESTE LES OPERATEURS LAPN ET FIMP * * ON VERIFIE QUE L'ERREUR ENTRE PSI_NUM ET PSI_EXACT EVOLUE DE FACON * * QUADRATIQUE * * H. PAILLERE/TTMF/JUILLET 1997 * * ON CONSIDERE LE DOMAINE [0,1]x[0,1] ET LA FONCTION DE COURANT * * PSI_EXACT = x(x-1)y^2(y-1) * * ASSOCIEE AU CHAMP DE VITESSE (u,v) DONNE PAR : * * u_ex = dPSI/dy et v_ex = -dPSI/dx * * ON RESOUD L'EQUATION DE POISSON : * * d2PSI/dx2 + d2PSI/dy2 = du_ex/dy - dv_ex/dx * * AVEC COMME C.L PSI=0 SUR LES BORDS DU DOMAINE * *********************************************************************** REPETER BLOC2 6 ; n = (&BLOC2) ; NX = 5*n ; NY = 5*n ; A1 = 0.0 0.0 ; A2 = 1.0 0.0 ; A3 = 1.0 1.0 ; A4 = 0.0 1.0 ; DOMA $DOMTOT 'IMPR' ; ****************************************************************** * EVALUATION DE LA FONCTION DE COURANT EXACTE + CHAMP DE VITESSE * ****************************************************************** SI ( GRAPH ) ; TRACE PSIEX DOMTOT 14 'TITR' 'FONCTION DE COURANT EXACTE' ; FINSI ; SI ( GRAPH ) ; TRACE UNCH DOMTOT 'TITR' 'CHAMP DE VITESSE' ; FINSI ; ****************************************************************** * ON CALCULE LA FONCTION DE COURANT NUMERIQUEMENT A PARTIR DE LA * * DONNEE DU CHAMP DE VITESSE * ****************************************************************** ZONE $DOMTOT OPER LAPN 1.0 INCO 'PSI' ZONE $DOMTOT OPER FIMP sw INCO 'PSI' 'CLIM' 'PSI' 'TIMP' CNT 0. ; RK.'INCO' = TABLE INCO ; EXEC RK ; PSI = RK.'INCO'.'PSI' ; SI ( GRAPH ) ; TRACE PSI DOMTOT CNT 14 'TITR' 'FONCTION DE COURANT CALCULEE' ; FINSI ; ************************************************************ * CALCUL DE L'ERREUR ENTRE FONCTION DE COURANT CALCULEE ET * * FONCTION DE COURANT ANALYTIQUE * ************************************************************ ERR = 0. ; REPETER BLOC1 NPTD ; FIN BLOC1 ; ERR = ERR/NPTD ; ERR = ERR ** 0.5 ; MESSAGE '======================================================' ; MESSAGE 'ERREUR EN NORME L2 = ' ERR ; MESSAGE '======================================================' ; SI ( (n 'NEG' 1) ) ; LISTE n ; ERRPSI = ERRPSI ET PERR ; ERRXXX = ERRXXX ET PXXX ; SINON ; FINSI ; FIN BLOC2 ; SI ( GRAPH ) ; TAB1 = TABLE ; TAB1.1 = 'MARQ CROI ' ; TAB1.'TITRE' = TABLE ; FINSI ; ERREUR 5 ; FINSI ; FIN ;
© Cast3M 2003 - Tous droits réservés.
Mentions légales