Download nlin_tailmail.dgibi

Back to the list

* fichier : nlin_tailmail.dgibi
'OPTION' echo 0 ;
*
'DEBPROC' TAILMAIL ;
'ARGUMENT' _mt*'MAILLAGE' ;
'ARGUMENT' disc*'MOT     ' ;
'ARGUMENT' direc*'POINT   ' ;
*
vdim  = 'VALEUR' 'DIME' ;
numop  = 1 ;
numvar = 1 ;
numder = vdim ;
numdat = vdim ;
numcof = 1 ;
*
A = ININLIN numop numvar numdat numcof numder ;   
   A . 'VAR' . 1 . 'NOMDDL' = 'MOTS' 'DUMM' ;
   A . 'VAR' . 1 . 'DISC'   = 'CSTE' ;
   A . 'VAR' . 1 . 'VALEUR' = 1.D0 ;
   'REPETER' iidim vdim ;
      idim = &iidim ;
      A . 'DAT' . idim . 'NOMDDL' = 'MOTS' 'DUMM' ;
      A . 'DAT' . idim . 'DISC'   = 'CSTE' ;
      A . 'DAT' . idim . 'VALEUR' = ('COORDONNEE' idim direc) ;
   'FIN' iidim ;
*   
   A . 'COF' . 1 . 'COMPOR' = 'CHAINE' 'TAILDIRE' ;
   A . 'COF' . 1 . 'LDAT'   = 'LECT' 1 PAS 1 vdim ;
*   
   A . 1 . 1 . 0  = 'LECT' 1 ;
*
   numdat = 0 ;
   numcof = 0 ;
   B = ININLIN numop numvar numdat numcof numder ;   
   B . 'VAR' . 1 . 'NOMDDL' = 'MOTS' 'DUMM' ;
   B . 'VAR' . 1 . 'DISC'   = 'CSTE' ;
   B . 'VAR' . 1 . 'VALEUR' = 1.D0 ;
   B . 1 . 1 . 0  = 'LECT' ;
*
ctail = NLIN disc _mt A B 'ERF1' 'GAU7' ;
vtail = 'MAXIMUM' ('RESULT' ctail) ;
'RESPRO' vtail ;
'FINPROC' ;
*
'DEBPROC' CAS ;
'ARGUMENT' icas*'ENTIER' ;
'SI' ('EGA' icas 1) ;
   'OPTION' 'DIME' 1  ;
   p1 = 'POIN' 0. ; p2 = 'POIN' PI ;
   tit = 'CHAINE' 'Segment' ;
   mt = 'MANUEL' 'SEG2' p1 p2 ;
   disc  = 'LINE' ;
   direc = 'POIN' ('**' 2 0.5D0) ;
   _mt   = 'CHANGER' mt 'QUAF' ;
   exact  = PI ;
   tolerr = 1.D-12 ;
'FINSI' ;   
*
'SI' ('EGA' icas 2) ;
   'OPTION' 'DIME' 2  ;
   p1 = 0. 0. ; p2 = 1. 0. ; p3 = 0.5 ('/' ('**' 3 0.5) 2.)  ;
   tit = 'CHAINE' 'Triangle LINE 1 2 3' ;
   mt = 'MANUEL' 'TRI3' p1 p2 p3 ;
   disc  = 'LINE' ;
   direc = PI ('**' 2 0.5D0) ;
   _mt   = 'CHANGER' mt 'QUAF' ;
   exact  = 2.D0 '*' ('**' 3 -0.5D0) ;
   tolerr = 1.D-12 ;
'FINSI' ;   
*
'SI' ('EGA' icas 3) ;
   'OPTION' 'DIME' 2  ;
   p1 = 0. 0. ; p2 = 1. 0. ; p3 = 0.5 ('/' ('**' 3 0.5) 2.)  ;
   tit = 'CHAINE' 'Triangle QUAI 1 3 2' ;
   mt = 'MANUEL' 'TRI3' p1 p3 p2 ;
   disc  = 'QUAI' ;
   direc = ('+' PI 1.) ('**' 2 0.5D0) ;
   _mt   = 'CHANGER' mt 'QUAF' ;
   exact  = 2.D0 '*' ('**' 3 -0.5D0) ;
   tolerr = 1.D-12 ;
'FINSI' ;   
*
'SI' ('EGA' icas 4) ;
   'OPTION' 'DIME' 2  ;
   p1 = 0. 0. ; p2 = 1. 0. ; p3 = 0.5 ('/' ('**' 3 0.5) 2.)  ;
   tit = 'CHAINE' 'Triangle QUAF 3 2 1' ;
   mt = 'MANUEL' 'TRI3' p3 p2 p1 ;
   disc  = 'QUAF' ;
   direc = ('**' 2 0.5D0) PI ;
   _mt   = 'CHANGER' mt 'QUAF' ;
   exact  = 2.D0 '*' ('**' 3 -0.5D0) ;
   tolerr = 1.D-12 ;
'FINSI' ;   
*
'SI' ('EGA' icas 5) ;
   'OPTION' 'DIME' 2  ;
   p1 = 0. 0. ; p2 = PI 0. ; p3 = PI ('**' 2 0.5) ;
   p4 = 0.  ('**' 2 0.5) ;
   tit = 'CHAINE' 'Rectangle QUAF 1' ;
   mt = 'MANUEL' 'QUA4' p1 p2 p3 p4 ;
   disc  = 'QUAF' ;
   direc = 1. 0. ;
   _mt   = 'CHANGER' mt 'QUAF' ;
   exact  = PI '*' ('**' 2 0.5) ;
   tolerr = 1.D-12 ;
'FINSI' ;   
*
'SI' ('EGA' icas 6) ;
   'OPTION' 'DIME' 2  ;
   p1 = 0. 0. ; p2 = PI 0. ; p3 = PI ('**' 2 0.5) ;
   p4 = 0.  ('**' 2 0.5) ;
   tit = 'CHAINE' 'Rectangle QUAF 2' ;
   mt = 'MANUEL' 'QUA4' p1 p2 p3 p4 ;
   disc  = 'QUAF' ;
   direc = 0. 1. ;
   _mt   = 'CHANGER' mt 'QUAF' ;
   exact  = ('**' 2 0.5) '*' ('**' 2 0.5) ;
   tolerr = 1.D-12 ;
'FINSI' ;   
*
'RESPRO' tit _mt disc direc exact tolerr ;
'FINPROC' ;
************************************************************************
* NOM         : NLIN_TAILMAIL
* DESCRIPTION : Teste la loi de comportement TAILDIRE
*
*
* LANGAGE     : GIBIANE-CAST3M
* AUTEUR      : Stéphane GOUNAND (CEA/DEN/DM2S/SFME/LTMF)
*               mél : gounand@semt2.smts.cea.fr
**********************************************************************
* VERSION    : v1, 26/07/2006, version initiale
* HISTORIQUE : v1, 26/07/2006, 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 !
************************************************************************
*
*
interact= FAUX ;
graph   = FAUX ;
verbose = FAUX ;
'SI' ('NON' interact) ;
  'OPTION' 'TRAC' 'PS' ;
'SINON' ;
  'OPTION' 'TRAC' 'X' ;
*  'OPTION' 'TRAC' 'OPEN' ;
'FINSI' ;  
*
tres = 'TABLE' ;
*
ncas = 6 ;
mgau = 'GAU7' ;
ok = VRAI ;
'REPETER' iicas ncas ;
icas = &iicas ;
*icas = 6 ;
tit _mt disc direc exact tolerr = CAS icas ;
ldepl = 'MOTS' 'UX' 'UY' 'UZ' ;
'SI' graph ;
   'REPETER' iidim ('VALEUR' 'DIME') ;
      idim = &iidim ;
      cvec = 'MANUEL' 'CHPO' _mt 1 ('EXTRAIRE' ldepl idim)
       ('COORDONNEE' idim direc) ;
      'SI' ('EGA' idim 1) ;
         cvtot = cvec ;
      'SINON' ;
         cvtot = '+' cvtot cvec ;
      'FINSI' ;
   'FIN' iidim ;
   vtot = 'VECTEUR' cvtot 'DEPL' 'JAUN' ;      
   'TRACER' vtot _mt ;
'FINSI' ;   
*
appro = TAILMAIL _mt disc direc ;
*
tes = '<' ('ABS' ('-' exact appro)) tolerr ;
*
ok = ok 'ET' tes ;
*'SI' ('OU' verbose ('NON' tes)) ;
   'MESSAGE' ('CHAINE' tit ' ' disc ' tolerr=' tolerr) ;
   'MESSAGE' ('CHAINE' 'exact = ' exact
                       '  exact - appro = ' ('-' exact appro)) ;
   'SI' tes ; 'MESSAGE' ('CHAINE' 'tes = ok') ;
   'SINON' ;  'MESSAGE' ('CHAINE' 'tes = KO') ; 'FINSI' ;
*'FINSI' ;
'FIN' iicas ;
'SI' ok ;
   'MESSAGE' ('CHAINE' 'Tout sest bien passe') ;
'SINON' ;
   'MESSAGE' ('CHAINE' 'Il y a eu des erreurs') ;
'FINSI' ;
*'LISTE' matm1 ; 'LISTE' matm2 ;
'SI' interact ;
   'OPTION' 'DONN' 5 ;
'FINSI' ;
'SI' ('NON' ok) ;
   'ERREUR' 5 ;      
'FINSI' ;
*
* End of dgibi file NLIN_TAILMAIL
*
'FIN' ;

 

 

© Cast3M 2003 - All rights reserved.
Disclaimer