* fichier : mdiavf.dgibi ************************************************************************ ************************************************************************ * ********************** cas test mdiavf.dgibi ************************ * * *-------------------------------------------------------------------- * Test élémentaire des opérateurs DFDT et MDIA en Volumes Finis * et en formulation EFM1. *-------------------------------------------------------------------- * On résoud dc/dt + ac = 0 avec a coefficient de décroissance ([c]/s) * L'opérateur DFDT discrétise la dérivée en temps; * L'opérateur MDIA discrétise la décroissance. * La condition initiale c(x,y,t=0) vaut x+y et a est constant au cours * du temps, égale à x. * La solution est c(x,y,t) = c0 exp(-at) = (x+y) exp (-xt) * La solution calculée est entachée d'une erreur de discrétisation * temporelle. Cette erreur est de l'ordre de a*a*tfinal*deltat. * * +-----------+------------+--------------------------+ * | Temps | Espace | Décentrement | * | IMPL EXPL | EFM1 EF VF | CENTREE SUPGDC SUPG TVIS | * +------+-----------+------------+--------------------------+ * | DFDT | x - | x - x | x sans interet ici | * | MDIA | x 0 | x 0 x | x 0 0 0 | * +------+-----------+------------+--------------------------+ * * 0 = non disponible; - = non testé ici; x = testé ici * *-------------------------------------------------------------------- * Auteur : F.DABBENE (TTMF) 12/97 *-------------------------------------------------------------------- * GRAPH = 'N' ; * *====================== * CREATION DU MAILLAGE *====================== * * Points * A = 0.1D0 0.1D0 ; B = 0.1D0 1.0D0 ; C = 1.0D0 1.0D0 ; D = 1.0D0 0.1D0 ; * * Droites * NP1 = 5 ; * * Maillage et table DOMAINE * * *======================== * DEFINITION DU PROBLEME *======================== * * Initialisation des données temporelles * * NITER1 : Nombre de pas de temps * DELTA_T : Valeur du pas de temps * NITER1 = 10 ; DELTA_T = 1.D-1 ; TFINAL1 = NITER1 * DELTA_T ; * * Récupération des coordonnées pour initialisation * * * Création des modèles numériques * *--- EFM1 * RV1 = 'EQEX' $DOMAI1 'ITMA' NITER1 'OPTI' 'EFM1' 'IMPL' 'CENTREE' 'OPTI' 'EFM1' 'IMPL' 'ZONE' $DOMAI1 'OPER' 'MDIA' XS1 'INCO' 'TS' ; RV1. 'DT' = DELTA_T ; RV1. 'INCO' . 'DT' = RV1 . 'DT' ; * *--- VF * RV2 = 'EQEX' $DOMAVF 'ITMA' NITER1 'OPTI' 'VF' 'IMPL' 'CENTREE' 'OPTI' 'VF' 'IMPL' 'CENTREE' 'ZONE' $DOMAVF 'OPER' 'MDIA' XC1 'INCO' 'TC' ; RV2. 'DT' = DELTA_T ; RV2. 'INCO' . 'DT' = RV2 . 'DT' ; * * *=========================== * RESOLUTION DU TRANSITOIRE *=========================== * EXEC rv1 ; EXEC rv2 ; * *================= * Post-traitement *================= * SOL1 = 'EXP' (-1.D0 * XS1 * TFINAL1) * (XS1 + YS1) ; SOL2 = 'EXP' (-1.D0 * XC1 * TFINAL1) * (XC1 + YC1) ; ERR1 = 'ABS' (RV1.'INCO'.'TS' - SOL1) ; ERR2 = 'ABS' (RV2.'INCO'.'TC' - SOL2) ; 'SI' ('NEG' GRAPH 'N') ; * * 'FINS' ; * *======================== * TEST DE NON REGRESSION *======================== * TOL1 = TFINAL1 * DELTA_T / 2. ; 'MESS' 'Cumul Erreur :' OK1 'Tolerance :' TOL1 ; 'SI' ( OK1 > TOL1) ; 'SINO' ; 'FINS' ; * 'FIN' ;
© Cast3M 2003 - Tous droits réservés.
Mentions légales