Télécharger topofilt.procedur

Retour à la liste

Numérotation des lignes :

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

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