Download frocable.dgibi

Back to the list

* fichier :  frocable.dgibi
*
*    fichier:   frocable.dgibi 
*

opti dime 2 mode plan cont elem qua4;

*=== GEOMETRIES===

P1   = 0 0;
P2   = 5 0;
liab = P1 droi 5 P2;
su   = liab trans 15 (0 3);

P3  = 0 1.5; 
P4  = 5 1.5;
*P5  = 0 2.5; 
*P6  = 5 2.5;

cab1 = p3 droi 11 P4;
*cab2 = p5 droi 10 p6;
*cabt = cab1 et cab2;

bordy = cote 4 su;

cab1= coul rouge cab1;
su  = coul vert su;
toto= cab1 et su;

*trac toto;

*opti donn 5;
*=== MODELES===

MODCAB1 = model cab1 mecanique elastique barre;

*list modcab1;
*list modcab2;
cabfr= impf cab1;
*MODFRO1 = model cabfr contact frottant frocable modcab1 su;
modfro1= model cab1 contact frottant frocable su;
*list modfro1;

* juste pour voir azppel a rfco
*cdep  crr = rfco modfro1 vrai ;
*list bb;
*opti donn 5;

*list ( frig modfro1);
MODBET = model su  mecanique elastique;

*list modfro1;

*=== MATERIAUX===

Ebet=34567e6;
nubet=0.2;
rhobet=2240;

matbet = mate MODBET YOUN Ebet NU nubet RHO rhobet;

Ecab=200000e6;
nucab=0.3;
rhocab=8000;

frotcab1=0.18;

phicab1 =0.002;
* on multiplie phicab1 par 10 pour avoir une influence
* plus importante
phicab1=phicab1*10;

matcab1 = mate MODCAB1 YOUN Ecab NU nucab RHO rhocab sect 0.15 ; 
matfro1 = mate MODFRO1 FF   frotcab1 PHIF phicab1; 

mattot= matcab1 et matfro1 et matbet;

modtot= modfro1 et modcab1 et modbet; 


*list matfro1;


*===RIGIDITES===

ribet= RIGI MODBET matbet;
ricab= RIGI MODCAB1 matcab1;

*list riac1;
*list riac2;

*===PRECONTRAINTES===

TAB = table;
TAB.'FF  '=frotcab1;
TAB.'PHIF'=phicab1;
TAB.'GANC'=0;
TAB.'RMU0'=0.43;
TAB.'FPRG'=1.7d9;
TAB.'RHL0'=2.5;

*===CALCUL DES FORCES===

PRE1 = PREC MODCAB1 MATCAB1 TAB 3.e5;
PRE2 = PREC MODCAB1 MATCAB1 TAB 6.e5;
PRE3 = PREC MODCAB1 MATCAB1 TAB 9.e5;
PRE4 = PREC MODCAB1 MATCAB1 TAB 1.2e6;
PRE5 = PREC MODCAB1 MATCAB1 TAB 1.5e6;
PRE6 = PREC MODCAB1 MATCAB1 TAB 1.8e6;
PRE7 = PREC MODCAB1 MATCAB1 TAB 2.1e6;
PRE8 = PREC MODCAB1 MATCAB1 TAB 2.4e6;
PRE9 = PREC MODCAB1 MATCAB1 TAB 2.7e6;
PRE10 = PREC MODCAB1 MATCAB1 TAB 3.e6;
*list pre10;
el1=cab1 elem 1;
el2=cab1 elem 4;

FORC1 = FORC FX 3.e6 p4; 
*list forc1;

FORC2 = FORC FX -3.e6 p3;

depenc= bloque depl ( bordy );

deppoi= bloque maxi UX P3;
*deppoi= bloque mini UX P4;
*riac1 = rela glissant modfro1 su 0.001 ;
*list riac1;
*opti donn 5;

*cl= riac1  et depenc et deppoi;
cl= depenc et deppoi;

*rig= rigi modtot mattot;
*rigtot=rig et cl;
*dep=reso rigtot forc1;

*VEC1 = VECT forc1 1.E-6 FX FY turq;
*trac (vec1) toto;

*def1=defo toto dep 0. blanc;
*def2=defo toto dep rouge;

*trac (def1 et def2);


*sig1=sigma modcab1 matcab1 dep;
*sxx1=extr sig1 comp;
*xx  =exco 'EFFX' sig1;list xx;
 
*===PAS A PAS===

*list1=prog 0 pas 0.5 1. pas 1. 3.;  
*list2=prog 0  1 1 1 1;
*list3=prog 0 0  1 1.01 1.02;

list1=prog 0 pas 0.5 1 2 3  ;  
list2=prog 0 1 1 1 1  ;
list3=prog 0 0 0.99 pas 0.005 1. ;

evt1=evol manu list1 list2; 
evt2=evol manu list1 list3;

*dess (evt1 et evt2);


cha1=char meca forc1 evt1;
cha2=char meca forc2 evt2;

chat=cha1 et cha2;

tab1 = table;
tab1.'BLOCAGES_MECANIQUES'=cl;
tab1.'MODELE'=modtot;
tab1.'CHARGEMENT'=chat;
list mattot;
tab1.'CARACTERISTIQUES'=mattot;
tab1.'TEMPS_CALCULES'=list1;
tab1.'PRECISION'=1.e-7;

pasapas tab1;

*opti sauv 'donnees.sauv';
*sauv tab1;
debproc  ecri ta*table  mo*mmodel  ge*maillage;
co= ta.contraintes ; 
de= ta.deplacements ;
re = ta. reactions ;
cab= extr mo maillage;
na = (dime co ) - 1;
 repe bo na;
mess ' contraintes  au pas ' &bo;
list (( co . &bo redu mo) exco EFFX);
fin bo;
*repe ba na;
*mess ' deplacements au pas ' &ba;
*list ( de . &ba redu ge);
**fin ba;
repe bi na;
mess ' reactions au pas ' &bi;
list ( re . &bi redu ge) ;
fin bi;
finp ;
*ecri tab1 modcab1 cab1;
ffr1=(tab1.contraintes . 1) exco EFFX ;
list ffr1;
valref= ffr1 extr EFFX  1 6 2;
ffr4= (tab1.contraintes . 4) exco EFFX ;
minffr4= mini ffr4;
* teste de la valeur min trouvée au temps 1 par rapport a 
* solution fournie par precontrainte( pre10)
xpre= mini pre10;
xsol= mini  ffr1;
mess ' xsol ' xsol  ' xpre ' xpre;
ersol= abs ( (xsol - xpre) / xpre);
mess ' erreur sur la precontrainte '  ersol ;

si ( ersol > 1.e-2) ;
erreur 5 ;
finsi; 

* on compare  la valeur trouvé au temps 1
*pour le point central (valref) et celle trouvée 
* pour le temps 4 

er=abs((minffr4 -  valref)/valref);
mess ' erreur en % '  er;
si ( er > 0.01);
 erreur 5;
finsi;
*list pre10;
*list ffr1;
fin;






 

 

 

© Cast3M 2003 - All rights reserved.
Disclaimer