* fichier : deduad3d.dgibi ************************************************************************ * Section : Langage Objets * Section : Maillage Autres * Section : Fluides Thermique ************************************************************************ 'OPTI' 'ECHO' 0 ; ************************************************************************ * NOM : DEDUAD3D * DESCRIPTION : cas test 3d pour deduadap * * * LANGAGE : GIBIANE-CAST3M * AUTEUR : Stéphane GOUNAND (CEA/DEN/DM2S/SFME/LTMF) * mél : gounand@semt2.smts.cea.fr ********************************************************************** * VERSION : v1, 21/09/2005, version initiale * HISTORIQUE : v1, 21/09/2005, création * HISTORIQUE : * HISTORIQUE : ************************************************************************ * Prière de PRENDRE LE TEMPS de compléter les commentaires * en cas de modification de ce sous-programme afin de faciliter * la maintenance ! ************************************************************************ * 'SAUTER' 2 'LIGNE' ; 'MESSAGE' ' Execution de deduad3d.dgibi' ; 'SAUTER' 2 'LIGNE' ; * * * interact= FAUX ; graph = FAUX ; debug = FAUX ; * *BEGINPROCEDUR cas3d ************************************************************************ * NOM : CAS3D * DESCRIPTION : Construit les cas pour deduadap 3D * * * * LANGAGE : GIBIANE-CAST3M * AUTEUR : Stéphane GOUNAND (CEA/DEN/DM2S/SFME/LTMF) * mél : gounand@semt2.smts.cea.fr ********************************************************************** * VERSION : v1, 15/12/2004, version initiale * HISTORIQUE : v1, 15/12/2004, création * HISTORIQUE : * HISTORIQUE : ************************************************************************ * Prière de PRENDRE LE TEMPS de compléter les commentaires * en cas de modification de ce sous-programme afin de faciliter * la maintenance ! ************************************************************************ * * 'DEBPROC' CAS3D ; 'ARGUMENT' mesh*'ENTIER' ; 'ARGUMENT' nbmail2*'ENTIER' ; 'ARGUMENT' ltri/'LOGIQUE' ; * 'SI' ('NON' ('EXISTE' ltri)) ; ltri = 'VRAI' ; 'FINSI' ; * 'ARGUMENT' disc/'MOT' ; 'SI' ('NON' ('EXISTE' disc)) ; disc = 'LINE' ; 'FINSI' ; * 'SI' ('<' nbmail2 1) ; cherr = 'CHAINE' 'Nombre de mailles inférieur à 2...' ; 'ERREUR' cherr ; 'FINSI' ; nbmail = '*' nbmail2 2 ; * 'SI' ltri ; 'SI' ('EGA' disc 'LINE') ; 'OPTION' 'ELEM' 'TRI3' ; 'SINON' ; 'OPTION' 'ELEM' 'TRI6' ; 'FINSI' ; 'SINON' ; 'SI' ('EGA' disc 'LINE') ; 'OPTION' 'ELEM' 'QUA4' ; 'SINON' ; 'OPTION' 'ELEM' 'QUA8' ; 'FINSI' ; 'FINSI' ; * p000 = 0. 0. 0. ; p100 = .5 0. 0. ; p200 = 1. 0. 0. ; p010 = 0. .5 0. ; p110 = .5 .5 0. ; p210 = 1. .5 0. ; p020 = 0. 1. 0. ; p120 = .5 1. 0. ; p220 = 1. 1. 0. ; p001 = 0. 0. .5 ; p101 = .5 0. .5 ; p201 = 1. 0. .5 ; p011 = 0. .5 .5 ; p111 = .5 .5 .5 ; p211 = 1. .5 .5 ; p021 = 0. 1. .5 ; p121 = .5 1. .5 ; p221 = 1. 1. .5 ; p002 = 0. 0. 1. ; p102 = .5 0. 1. ; p202 = 1. 0. 1. ; p012 = 0. .5 1. ; p112 = .5 .5 1. ; p212 = 1. .5 1. ; p022 = 0. 1. 1. ; p122 = .5 1. 1. ; p222 = 1. 1. 1. ; * n2 = nbmail2 ; n1 = '-' nbmail 1 ; crit = 1.D-4 ; 'SI' ('OU' ('EGA' mesh 1) ('EGA' mesh 3)) ; ba = 'ET' ('DROIT' n2 p000 p100) ('DROIT' n2 p100 p200) ; dr = 'ET' ('DROIT' n2 p200 p210) ('DROIT' n2 p210 p220) ; ha = 'ET' ('DROIT' n2 p220 p120) ('DROIT' n2 p120 p020) ; ga = 'ET' ('DROIT' n2 p020 p010) ('DROIT' n2 p010 p000) ; ligg = 'ET' ('DROIT' n2 p000 p001) ('DROIT' n2 p001 p002) ; 'FINSI' ; 'SI' ('EGA' mesh 2) ; ba = 'ET' ('DROIT' n1 p000 p100) ('DROIT' 1 p100 p200) ; dr = 'ET' ('DROIT' n1 p200 p210) ('DROIT' 1 p210 p220) ; ha = 'ET' ('DROIT' 1 p220 p120) ('DROIT' n1 p120 p020) ; ga = 'ET' ('DROIT' 1 p020 p010) ('DROIT' n1 p010 p000) ; ligg = 'ET' ('DROIT' n1 p000 p001) ('DROIT' 1 p001 p002) ; 'FINSI' ; * bas = 'DALLER' ba dr ha ga ; 'SI' ('EGA' disc 'LINE') ; 'OPTION' 'ELEM' 'CUB8' ; 'SINON' ; 'OPTION' 'ELEM' 'CU20' ; 'FINSI' ; mt = 'VOLUME' bas 'GENE' ligg ; emt = 'ENVELOPPE' mt ; * amt = 'ARETE' mt ; * 'TRACER' 'CACH' mt ; pmt = 'CHANGER' emt 'POI1' ; pmtz0 = 'POIN' pmt 'PLAN' p000 p200 p020 crit ; pmtz1 = 'POIN' pmt 'PLAN' p002 p202 p022 crit ; pmty0 = 'POIN' pmt 'PLAN' p000 p200 p002 crit ; pmty1 = 'POIN' pmt 'PLAN' p020 p220 p022 crit ; pmtx0 = 'POIN' pmt 'PLAN' p000 p020 p002 crit ; pmtx1 = 'POIN' pmt 'PLAN' p200 p220 p202 crit ; * 'TRACER' (emt 'ET' ('COULEUR' pmtz0 'ROUG')) ; * 'LISTE' pmtz0 ; fz0 = 'ELEM' emt 'APPUYE' 'STRICTEMENT' pmtz0 ; * 'TRACER' (emt 'ET' ('COULEUR' fz0 'ROUG')) ; * 'LISTE' pmtz1 ; fz1 = 'ELEM' emt 'APPUYE' 'STRICTEMENT' pmtz1 ; fy0 = 'ELEM' emt 'APPUYE' 'STRICTEMENT' pmty0 ; fy1 = 'ELEM' emt 'APPUYE' 'STRICTEMENT' pmty1 ; fx0 = 'ELEM' emt 'APPUYE' 'STRICTEMENT' pmtx0 ; fx1 = 'ELEM' emt 'APPUYE' 'STRICTEMENT' pmtx1 ; * * Cas QUAF * 'SI' ('EGA' disc 'QUAF') ; mt = 'CHANGER' mt 'QUAF' ; fz0 = 'CHANGER' fz0 'QUAF' ; fz1 = 'CHANGER' fz1 'QUAF' ; fy0 = 'CHANGER' fy0 'QUAF' ; fy1 = 'CHANGER' fy1 'QUAF' ; fx0 = 'CHANGER' fx0 'QUAF' ; fx1 = 'CHANGER' fx1 'QUAF' ; 'ELIMINATION' (mt 'ET' fx0 'ET' fx1 'ET' fy0 'ET' fy1 'ET' fz0 'ET' fz1 'ET' ba) 1.D-6 ; _mt = mt ; 'SINON' ; _mt = 'CHANGER' mt 'QUAF' ; 'FINSI' ; * * Blocages * rigblo = ('BLOQUE' 'UX' (fx0 'ET' fx1)) 'ET' ('BLOQUE' 'UY' (fy0 'ET' fy1)) 'ET' ('BLOQUE' 'UZ' (fz0 'ET' fz1)) ; cblo = 'DEPIMPOSE' rigblo 0. ; * * Métrique * $mt = 'MODELISER' mt 'THERMIQUE' ; 'SI' ('ET' ('>EG' mesh 1) ('