Télécharger prform.eso

Retour à la liste

Numérotation des lignes :

prform
  1. C PRFORM SOURCE CB215821 24/04/12 21:16:55 11897
  2. subroutine prform
  3. implicit real*8(a-h,o-z)
  4. implicit integer(i-n)
  5.  
  6. -INC PPARAM
  7. -INC CCOPTIO
  8. -INC SMMODEL
  9. -INC SMCHAML
  10. -INC SMCOORD
  11. segment itrav(nmod)
  12. call LIROBJ('MMODEL ',mmodel,1,iretou)
  13. CALL ACTOBJ('MMODEL ',mmodel,1)
  14. call LIROBJ('MCHAML ',mchel1,1,iretou)
  15. CALL ACTOBJ('MCHAML ',mchel1,1)
  16. if(ierr.ne.0) return
  17.  
  18. call reduaf ( mchel1,mmodel,mchel2,1,iretr,kerre)
  19. if( iretr.ne.1) then
  20. call erreur (kerre)
  21. return
  22. endif
  23.  
  24. segact mcoord
  25. segact mmodel
  26. nmod=kmodel(/1)
  27.  
  28. segini itrav
  29. iresu=0
  30. do io=1,nmod
  31. if(itrav(io).eq.0) then
  32. n1=nmod
  33. imodel=kmodel(io)
  34. segact imodel
  35. itrav(io)=1
  36. segini mmode2
  37. ia=1
  38. mmode2.kmodel(ia)=imodel
  39. do 1 iy=io+1,kmodel(/1)
  40. if(itrav(iy).ne.0) go to 1
  41. imode2=kmodel(iy)
  42. segact imode2
  43. if(conmod.eq.imode2.conmod) then
  44. itrav(iy)=1
  45. ia=ia+1
  46. mmode2.kmodel(ia)=imode2
  47. endif
  48. 1 continue
  49. n1=ia
  50. if( n1.ne.mmode2.kmodel(/1)) segadj mmode2
  51. call fform1(mmode2,mchel2,ifact)
  52. if(iresu.eq.0) then
  53. iresu=ifact
  54. else
  55. call fuschl(iresu,ifact,ires)
  56. iresu=ires
  57. endif
  58. segsup mmode2
  59. endif
  60. enddo
  61. segsup itrav
  62. if( iresu.ne.0) then
  63. call ACTOBJ('MCHAML ',iresu,1)
  64. call ECROBJ('MCHAML ',iresu)
  65. endif
  66. end
  67.  
  68.  
  69.  
  70.  
  71.  

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