Download corrig.dgibi

Back to the list

**
* chute d une structure sur une autre
**
opti dime 3 elem cub8 ;
graph = FAUX ;

p_ori = 0. 0. 0. ; e_x = 1. 0. 0. ; e_y = 0. 1. 0. ; e_z = 0. 0. 1. ;

r1 = 0.5 ; n1 = 3 ; n2 = 4 ; n3 = 5 ;
 h_chute = 0.1 ;
p_c0 = p_ori plus e_z ; p_0 = p_c0 plus (r1*e_x) ;
lr_0 = p_c0 d n1 p_0 ; 
p_90 = p_c0 plus (r1*e_y) ; lr_90 = p_c0 d n1 p_90 ;
lp_1 = p_0 c n2 p_ori p_90 ;
ch2 = manu chpo lp_1 uz 1. ; ch1 = nomc (coor 3 lp_1) uz;
depl lp_1 moins (ch1 - ch2) ; 
ls_0 = lr_0 et lp_1 et lr_90 ; elim 1.e-4 ls_0 ;
opti elem tri3 ;
s_0i = surf plan ls_0 ; s_0 = oriente s_0i direction ((-1.)*e_z) ;
opti elem cub8 ;
v_0 = volu n3 s_0 tran e_z ;

s_ei = s_0 moins (h_chute*e_z) coul cyan ; 
s_e = oriente s_ei direction e_z;
v_e = s_e volu trans 1 ((-1.)*e_z) ; s_eb = face 2 v_e ;
v_e = v_e coul vert ;

 v_0 depl plus (r1*0.*e_x) ;
macont1 = ('IMPO' 'MAIL' s_0 s_e) 'COUL' 'CYAN' ;
si graph ;
titre 'maillages projectile, cible, contact ' ;
trac cach (v_0 et macont1 et v_e);
finsi ;

mo_c = mode v_0 mecanique elastique ;
ca_c = mate mo_c youn 2.e11 nu 0.3 rho 8.e4 ;
mocont1= mode macont1 contact unilateral ;
mo_e = mode v_e mecanique elastique ;
ca_e = mate mo_e youn 1.e12 nu 0.4  rho 1.e4 ;

mass_c = mass mo_c ca_c ;
po_c = mass_c * (manu chpo v_0 -9.81 uz) ;
ev_1 = evol manu (prog 0. 1.e3) (prog 1. 1.) ;
chg1= char meca ev_1 po_c ;

bl_e = bloq depl s_eb ;

*------------modal
nmod2 = 10 ;
rig_c = rigi mo_c ca_c ;
tab_c= vibr simul 0.1 nmod2 rig_c mass_c tbas ; 
def_0 = defo v_0 tab_c . modes . 1 . deformee_modale 0. ;
repeter b_mol nmod2 ;
  vsm_i = vmis mo_c 
  (sigma mo_c ca_c tab_c . modes . &b_mol . deformee_modale) ;
 def_i = defo v_0 tab_c . modes . &b_mol . deformee_modale 0.1 
       vsm_i mo_c ;
titre ' mode ' tab_c . modes . &b_mol . numero_mode
   ' frequence ' tab_c . modes . &b_mol . frequence ;
*list tab_c . modes . &b_mol . point_repere ;
si graph ;
 trac (def_0 et def_i) cach ;
finsi ;

   ma_i = manu poi1  tab_c . modes . &b_mol . point_repere ;
   mo_i = mode ma_i mecanique elastique modal ;
   ca_i = mate mo_i frequence tab_c . modes . &b_mol . frequence 
     mass tab_c . modes . &b_mol . masse_generalisee 
     defo tab_c . modes . &b_mol . deformee_modale ;
 si (&b_mol ega 1) ;
  m_dal = mo_i ; c_dal = ca_i ;
 sinon ;
  m_dal = m_dal et mo_i ; c_dal = c_dal et ca_i ;
 finsi ;  

fin b_mol ;

chg_al = pjba chg1 m_dal c_dal ;

t_chu = table 'PASAPAS' ;
t_chu . modele = m_dal et mocont1 et mo_e ;
t_chu . caracteristiques = c_dal et ca_e ;
t_chu . chargement = chg_al ;
t_chu . blocages_mecaniques = bl_e ;
t_chu . dynamique = vrai ;
t_chu . temps_calcules = prog 0. pas 0.02 0.3 ;

pasapas t_chu ; 

chd_0 = reco  t_chu . deplacements . 1 m_dal c_dal ; 
defm_0 = defo s_0 (redu chd_0 s_0 )  0. ;
defm_i = def_0 ; 
defm_ti = defo (v_0 et v_e) chd_0 0. ;
omp_0 = prog 0. ; am_t = prog 0. ;
l_coul = (prog 1.5 pas 1. 22.5)*1.e6 ; 
repeter b_mchu ((dime t_chu . temps ) - 1) ;
  chd_i = reco  t_chu . deplacements . &b_mchu m_dal c_dal ;
  sig_i = sigma mo_c ca_c chd_i ;
  vmm_i = (vmis mo_c sig_i) et 
       (vmis mo_e (redu t_chu . contraintes . &b_mchu mo_e)) ; 
  defm_i = defm_i et 
  (defo s_0  (redu chd_i s_0 ) 1. ) ;
 defm_ii =  defo (v_0 et v_e) 
    (chd_i et (redu t_chu . deplacements . &b_mchu v_e)) 1. 
             vmm_i (mo_e et mo_c)  ;
  defm_ti = defm_ti et defm_ii ;
 si graph ;
 titre 'modal - temps : ' t_chu . temps . &b_mchu ;
  trac defm_ii l_coul;
 finsi ;
 omp_0 = omp_0 et (prog (extr t_chu . deplacements . &b_mchu uz p_0) );
 am_t = am_t et (prog t_chu . temps . &b_mchu) ;

fin b_mchu ;

evmp_0 = evol rouge manu 'TEMPS (s)' am_t 'DEPL (m)' omp_0 ;
si graph ;
trac anim defm_i s_0 ;trac anim defm_ti vmm_i (mo_e et mo_c) l_coul;
dess evmp_0 ;
finsi ;
*--------------
*opti donn 3 ;

tabchu = table 'PASAPAS' ;
tabchu . modele = mo_c et mocont1 et mo_e;
tabchu . caracteristiques = ca_c et ca_e ;
tabchu . chargement  = chg1 ;
tabchu . blocages_mecaniques = bl_e ;
tabchu . dynamique = vrai ;
tabchu . temps_calcules = prog 0. pas 0.02 0.3 ;

pasapas tabchu ;

def_0 = defo s_0 (redu tabchu . deplacements . 1 s_0 )  0. ;
def_i = def_0 ; 
def_ti = defo (v_0 et v_e) tabchu . deplacements . 1 0. ;
o_p_0 = prog 0. ; a_t = prog 0. ;
l_coul = (prog 1.5 pas 1. 22.5)*1.e6 ; 
repeter b_chu ((dime tabchu . temps ) - 1) ;
*  vm_i = vmis tabchu . contraintes . &b_chu tabchu . modele ; 
  vm_i = vmis (mo_e et mo_c) tabchu . contraintes . &b_chu ; 
  def_i = def_i et 
  (defo s_0  (redu tabchu . deplacements . &b_chu s_0 ) 1. ) ;
 def_ii =  defo (v_0 et v_e)  tabchu . deplacements . &b_chu  1. 
             vm_i (mo_e et mo_c)  ;
  def_ti = def_ti et def_ii ;
 si graph ;
 titre 'EF - temps : ' tabchu . temps . &b_chu ;
*  trac def_ii l_coul;
 finsi ;
 o_p_0 = o_p_0 et (prog (extr tabchu . deplacements . &b_chu uz p_0) ) ;
 a_t = a_t et (prog tabchu . temps . &b_chu) ;

fin b_chu ;

ev_p_0 = evol bleu manu 'TEMPS (s)' a_t 'DEPL (m)' o_p_0  ;
 si graph ;
trac anim def_i s_0 ;trac anim def_ti vm_i (mo_e et mo_c) l_coul;
dess ev_p_0 ;
 finsi ;

 si graph ;
titre ' chute ';
dess (ev_p_0 et evmp_0) ;
 finsi ;

si ((abs(((extr o_p_0 10) - (extr omp_0 10))/(extr omp_0 10))) < 3.e-3);
   erre 0 ;
finsi ;

fin ;







 

 

© Cast3M 2003 - All rights reserved.
Disclaimer