Télécharger topofilt.procedur

Retour à la liste

Numérotation des lignes :

  1. * TOPOFILT PROCEDUR CB215821 18/01/29 21:15:11 9715
  2. ************************************************************************
  3. ** Procedure called by TOPOPTIM for filtering the sensitivity field
  4. **
  5. ** Author:
  6. ** Guenhael Le Quilliec (LaMe - Polytech Tours)
  7. **
  8. ** Version:
  9. ** 2.0 2017/11/11
  10. ************************************************************************
  11.  
  12. DEBP TOPOFILT tab0*'TABLE' ;
  13. frate0 = tab0.'TAUX_FILTRAGE' ;
  14. SI (frate0 > 0) ;
  15. dc0 = tab0.'WTABLE'.'SENSIBILITE' ;
  16. x0 = tab0.'WTABLE'.'TOPOLOGIE' ;
  17. mecha0 = EXIS tab0.'WTABLE' 'MECANIQUE' ;
  18. SI mecha0 ;
  19. mod1 = tab0.'WTABLE'.'MECANIQUE'.'MODELE'.(1) ;
  20. SINO ;
  21. mod1 = tab0.'WTABLE'.'THERMIQUE'.'MODELE'.(1) ;
  22. mat1 = tab0.'WTABLE'.'THERMIQUE'.'CARACTERISTIQUES'.(1) ;
  23. volElT1 = tab0.'WTABLE'.'THERMIQUE'.'VOLUME'.(1) ;
  24. FINS ;
  25. zdiv0 = tab0.'ZERO_DIVISION' ;
  26.  
  27. field0 = dc0 * x0 ;
  28. REPE loop1 frate0 ;
  29. field0 = CHAN 'CHAM' (CHAN 'CHPO' mod1 field0 'MOYE') mod1
  30. 'GRAVITE' ;
  31. FIN loop1 ;
  32.  
  33. * In thermal mode, 'GRAVITE' option is not respected
  34. * This problem is solved by INTG 'ELEM'
  35. SI (NON mecha0) ;
  36. field0 = (INTG 'ELEM' field0 mod1 mat1) / volElT1 ;
  37. FINS ;
  38.  
  39. dc0 = field0 / (BORN x0 'SCAL' 'MINI' zdiv0) ;
  40.  
  41. * Save the filtered sensibility
  42. tab0.'WTABLE'.'SENSIBILITE' = dc0 ;
  43. FINS ;
  44. FINP ;
  45.  
  46.  
  47.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales