Télécharger kcent1.eso

Retour à la liste

Numérotation des lignes :

kcent1
  1. C KCENT1 SOURCE OF166741 25/02/21 21:17:40 12166
  2. SUBROUTINE KCENT1 (IPMODL,IPCHE1,IPROTA,IPRIG,IFLAM,IRET)
  3. *
  4. *_______________________________________________________________________
  5. *
  6. * appelé par KCENTR ( opérateur KCEN )
  7. *
  8. * Creation d'une matrice de raideur centrifuge
  9. * (Calcul dans un repère tournant)
  10. *
  11. * entrees :
  12. * ========
  13. *
  14. * ipmodl pointeur sur un mmodel
  15. * ipche1 pointeur sur un mchaml de caracteristique
  16. * iprota pointeur sur un point (vecteur vitesse de rotation)
  17. * iflam vrai si on se sert de la matrice pour des calculs de flambage
  18. *
  19. * sorties :
  20. * =========
  21. *
  22. * iprig pointeur sur la matrice de raideur centrifuge
  23. * iret 1 si ok, 0 sinon
  24. *
  25. * Didier COMBESCURE mars 2003
  26. *_______________________________________________________________________
  27. IMPLICIT INTEGER(I-N)
  28. IMPLICIT REAL*8(A-H,O-Z)
  29.  
  30. -INC PPARAM
  31. -INC CCOPTIO
  32. -INC CCHAMP
  33. -INC CCGEOME
  34. -INC CCREEL
  35.  
  36. -INC SMRIGID
  37. -INC SMCHAML
  38. -INC SMELEME
  39. -INC SMCOORD
  40. -INC SMINTE
  41. -INC SMMODEL
  42.  
  43. SEGMENT NOTYPE
  44. CHARACTER*16 TYPE(NBTYPE)
  45. ENDSEGMENT
  46.  
  47. CHARACTER*8 CMATE
  48. CHARACTER*(NCONCH) CONM
  49. PARAMETER (NINF=3)
  50. INTEGER INFOS(NINF)
  51. LOGICAL lsupfo,lsupdp
  52. C
  53. DIMENSION VROT(3)
  54. C
  55. NHRM=NIFOUR
  56. IRET = 0
  57.  
  58. C Activation XCOOR
  59. SEGACT MCOORD
  60. C____________________________________________________________________
  61. C
  62. C LECTURE DU VECTEUR ROTATION
  63. C____________________________________________________________________
  64. C
  65. C Cas 3D (idim=3)
  66. IF (IFOUR.EQ.2) THEN
  67. IF (IPROTA.EQ.0) THEN
  68. VROT(1) = 0.D0
  69. VROT(2) = 0.D0
  70. VROT(3) = 1.D0
  71. ELSE
  72. VROT(1) = XCOOR((4*IPROTA) - 3)
  73. VROT(2) = XCOOR((4*IPROTA) - 2)
  74. VROT(3) = XCOOR((4*IPROTA) - 1)
  75. ENDIF
  76. C Cas Axi et 2D Fourier (idim=2)
  77. ELSE IF ((IFOUR.EQ.0) .OR. (IFOUR.EQ.1)) THEN
  78. IF (IPROTA.EQ.0) THEN
  79. VROT(1) = 0.D0
  80. VROT(2) = 1.D0
  81. VROT(3) = 0.D0
  82. ELSE
  83. VROT(1) = 0.D0
  84. VROT(2) = XCOOR((3*IPROTA) - 1)
  85. VROT(3) = 0.D0
  86. ENDIF
  87. C Pas d'autres cas ...
  88. C --> ERREUR "Fonction indisponible pour ce mode de calcul"
  89. ELSE
  90. IPRIG=0
  91. CALL ERREUR(710)
  92. RETURN
  93. ENDIF
  94.  
  95.  
  96. C____________________________________________________________________
  97. C
  98. C ACTIVATION DU MODELE
  99. C____________________________________________________________________
  100. MMODEL=IPMODL
  101. SEGACT MMODEL
  102. NSOUS=KMODEL(/1)
  103. C
  104. c_______________________________________________________________________
  105. c
  106. c initialisation du chapeau de l objet rigidite
  107. c_______________________________________________________________________
  108. NRIGEL=NSOUS
  109. SEGINI MRIGID
  110. IF (IFLAM.NE.0) THEN
  111. MTYMAT='MASSE'
  112. ELSE
  113. MTYMAT='RIGIDITE'
  114. ENDIF
  115. IFORIG=IFOUR
  116. ICHOLE=0
  117. IMGEO1=0
  118. IMGEO2=0
  119. ISUPEQ=0
  120. DO 499 ISOUS=1,NSOUS
  121. IRIGEL(4,ISOUS)=0
  122. COERIG(ISOUS)=1.D0
  123. 499 CONTINUE
  124.  
  125. C_______________________________________________________________________
  126. C
  127. C DEBUT DE LA BOUCLE SUR LES DIFFERENTES SOUS ZONES
  128. C_______________________________________________________________________
  129. C
  130. DO 500 ISOUS=1,NSOUS
  131. C
  132. C ON RECUPERE LINFORMATION GENERALES
  133. C
  134. IMODEL=KMODEL(ISOUS)
  135. SEGACT IMODEL
  136. IIPDPG = imodel.IPDPGE
  137. IIPDPG = IPTPOI(IIPDPG)
  138. IPMAIL = imodel.IMAMOD
  139. CONM = imodel.CONMOD
  140. C
  141. C TRAITEMENT DU MODELE
  142. C
  143. MELEME=IMAMOD
  144. MELE=NEFMOD
  145. NFOR=FORMOD(/2)
  146. NMAT=MATMOD(/2)
  147. npint = MAX(infmod(1),1)
  148. C
  149. C NATURE DU MATERIAU
  150. C
  151. CALL NOMATE(FORMOD,NFOR,MATMOD,NMAT,CMATE,MATE,INAT)
  152. IF (CMATE.EQ.' ') THEN
  153. CALL ERREUR(251)
  154. GOTO 9997
  155. ENDIF
  156. C_______________________________________________________________________
  157. C
  158. C INFORMATION SUR L ELEMENT FINI
  159. C_______________________________________________________________________
  160. C
  161. * if (npint.eq.12345) then
  162. * integration aux noeuds
  163. * CALL ELQUOI(MELE,0,1,IPINF,IMODEL)
  164. * else
  165. * CALL ELQUOI(MELE,0,4,IPINF,IMODEL)
  166. * endif
  167. iplaz=4
  168. if (npint.eq.12345) iplaz=1
  169. * IF (IERR.NE.0) THEN
  170. * GOTO 9997
  171. * ENDIF
  172. MFR =INFELE(13)
  173. LRE =INFELE(9)
  174. LW =INFELE(7)
  175. LHOOK =INFELE(10)
  176. NDDL =INFELE(15)
  177. IELE=INFELE(14)
  178. ICARA=INFELE(5)
  179. * MINTE=INFELE(11)
  180. MINTE=INFMOD(2+iplaz)
  181. MINTE1=INFMOD(8)
  182. IPMINT=MINTE
  183. IPMIN1=MINTE1
  184. C
  185. C INITIALISATION DE MINTE
  186. C
  187. SEGACT,MINTE
  188. NBPGAU=POIGAU(/1)
  189. C
  190. C CREATION DU TABLEAU INFOS
  191. C
  192. CALL IDENT(IPMAIL,CONM,IPCHE1,0,INFOS,IRTD)
  193. IF (IRTD.EQ.0) GOTO 9996
  194. C
  195. C ON RECUPERE LES MELVAL ET LES MELEME
  196. C
  197. MELEME=IPMAIL
  198. SEGACT MELEME
  199. *
  200. * modification du meleme pour le remplissage du segment descripteur
  201. * en deformations planes generalisees
  202. *
  203. NBNN =NUM(/1)
  204. NBELEM=NUM(/2)
  205. IPPORE=0
  206. IF(MFR.EQ.33) IPPORE=NBNN
  207. C
  208. C ---------------------------------------------------------*
  209. C INITIALISATION DU SEGMENT DESCR, SEGMENT DESCRIPTEUR DES *
  210. C DES INCONNUES RELATIVES A LA MATRICE DE RIGIDITE *
  211. C ---------------------------------------------------------*
  212. NLIGRP = INFELE(9)
  213. NLIGRD = INFELE(9)
  214. SEGINI DESCR
  215. IPDSCR=DESCR
  216. if(lnomid(1).ne.0) then
  217. nomid=lnomid(1)
  218. segact nomid
  219. modepl=nomid
  220. ndepl=lesobl(/2)
  221. ndum=lesfac(/2)
  222. lsupdp=.false.
  223. else
  224. lsupdp=.true.
  225. CALL IDPRIM(IMODEL,MFR,MODEPL,NDEPL,NDUM)
  226. endif
  227. if(lnomid(2).ne.0) then
  228. nomid=lnomid(2)
  229. segact nomid
  230. moforc=nomid
  231. nforc=lesobl(/2)
  232. lsupfo=.false.
  233. else
  234. lsupfo=.true.
  235. CALL IDDUAL(IMODEL,MFR,MOFORC,NFORC,NDUM)
  236. endif
  237. C
  238. IF (NDEPL.EQ.0.OR.NFORC.EQ.0.OR.NDEPL.NE.NFORC) THEN
  239. CALL ERREUR(5)
  240. SEGSUP DESCR
  241. GOTO 9990
  242. ENDIF
  243. C
  244. C REMPLISSAGE DU SEGMENT DESCRIPTEUR
  245. C
  246. IDDL=1
  247. NCOMP=NDEPL
  248. NBNNS=NBNN
  249. C IF (MFR.EQ.33) NCOMP=NDEPL-1
  250. C IF (IFOUR.EQ.-3) THEN
  251. C NCOMP=NDEPL-3
  252. C NBNNS=NBNN-1
  253. C ENDIF
  254. IF (MFR.EQ.19.OR.MFR.EQ.21) NBNNS=NBNN/2
  255. NOMID=MODEPL
  256. SEGACT NOMID
  257. NOMID=MOFORC
  258. SEGACT NOMID
  259. DO 1004 INOEUD=1,NBNNS
  260. DO 1005 ICOMP=1,NCOMP
  261. NOMID=MODEPL
  262. LISINC(IDDL)=LESOBL(ICOMP)
  263. NOMID=MOFORC
  264. LISDUA(IDDL)=LESOBL(ICOMP)
  265. NOELEP(IDDL)=INOEUD
  266. NOELED(IDDL)=INOEUD
  267. IDDL=IDDL+1
  268. 1005 CONTINUE
  269. 1004 CONTINUE
  270. *
  271. NOMID=MODEPL
  272. NOMID=MOFORC
  273. SEGDES DESCR
  274. C
  275. C ------------------------------------------------------------*
  276. C INITIALISATION DU SEGMENT xMATRI, *
  277. C CONTENANT LES MATRICES DE RIGIDITE ELEMENTAIRES *
  278. C ------------------------------------------------------------*
  279. C NBELEM: NB D'ELEMENTS DANS LA SOUS ZONE
  280. NLIGRP=LRE
  281. NLIGRD=LRE
  282. C LVAL=(LRE*(LRE+1))/2
  283. C
  284. NELRIG=NBELEM
  285. SEGINI xMATRI
  286. IPMATR=xMATRI
  287. C
  288. C------------------------------------------------------*
  289. C TRAITEMENT DU CHAPEAU DES RIGIDITES, SEGMENT MRIGID *
  290. C------------------------------------------------------*
  291. C
  292. IRIGEL(1,ISOUS)=IPMAIL
  293. IRIGEL(2,ISOUS)=0
  294. IRIGEL(3,ISOUS)=IPDSCR
  295. IRIGEL(4,ISOUS)=xMATRI
  296. IRIGEL(5,ISOUS)=NHRM
  297. C
  298. C MATRICE SYMETRIQUE
  299. C
  300. IRIGEL(7,ISOUS)=0
  301. C
  302. C_______________________________________________________________________
  303. C
  304. C TRAITEMENT DES CHAMP MATERIAUX
  305. C_______________________________________________________________________
  306. C
  307. NBROBL=0
  308. NBRFAC=0
  309. MOMATR=0
  310. IVAMAT=0
  311. IVACAR=0
  312. LHOTRA=0
  313. *
  314. * rho dans les cas poutre,tuyau, barr et massif
  315. *
  316. IF (MFR.EQ.1.OR.MFR.EQ.27.OR.MFR.EQ.7.OR.MFR.EQ.13.OR.
  317. . MFR.EQ.3.OR.MFR.EQ.5.OR.MFR.EQ.9) THEN
  318. *
  319. IF(CMATE.NE.'SECTION') THEN
  320. NBROBL=1
  321. SEGINI NOMID
  322. LESOBL(1)='RHO '
  323. NBTYPE=1
  324. SEGINI NOTYPE
  325. TYPE(1)='REAL*8'
  326. ELSE
  327. LHOTRA=LHOOK
  328. NBROBL=2
  329. SEGINI NOMID
  330. MOMATR=NOMID
  331. LESOBL(1)='MODS'
  332. LESOBL(2)='MATS'
  333. NBTYPE=2
  334. SEGINI NOTYPE
  335. TYPE(1)='POINTEURMMODEL'
  336. TYPE(2)='POINTEURMCHAML'
  337. ENDIF
  338. MOMATR=NOMID
  339. MOTYPE=NOTYPE
  340. ENDIF
  341. C
  342. IF (MOMATR.NE.0) THEN
  343. *
  344. * verification du support des composantes recherchees
  345. *
  346. CALL QUESUQ(IMODEL,IPCHE1,4,0,MOMATR,IPLAZ,ISUP,IRET1)
  347. IF(ISUP.GT.1)THEN
  348. GO TO 9990
  349. ENDIF
  350. *
  351. CALL KOMCHA(IPCHE1,IPMAIL,CONM,MOMATR,MOTYPE,1,INFOS,3,IVAMAT)
  352. SEGSUP NOTYPE
  353. IF (IERR.NE.0) GOTO 9990
  354. NMATR=NBROBL
  355. NMATF=NBRFAC
  356. NMATT=NMATR+NMATF
  357. IF(ISUP.EQ.1)THEN
  358. CALL VALCHE(IVAMAT,NMATT,IPMINT,IPPORE,MOMATR,MELE)
  359. IF(IERR.NE.0)THEN
  360. ISUP=0
  361. GOTO 9990
  362. ENDIF
  363. ENDIF
  364. ENDIF
  365. C
  366. NMATR=NBROBL
  367. NMATF=NBRFAC
  368. NMATT=NMATR+NMATF
  369. C
  370. C____________________________________________________________________
  371. C
  372. C TRAITEMENT DES CHAMPS DE CARACTERISTIQUES
  373. C____________________________________________________________________
  374. C
  375. NBROBL=0
  376. NBRFAC=0
  377. MOCARA=0
  378. NCARA=0
  379. NCARF=0
  380. NCARR=0
  381. IVECT=0
  382. *
  383. * caracteristiques pour les poutres
  384. *
  385. IF (MFR.EQ.7 ) THEN
  386. IF (CMATE.EQ.'SECTION') THEN
  387. NBROBL=0
  388. NBRFAC=4
  389. SEGINI NOMID
  390. MOCARA=NOMID
  391. LESFAC(1)='OMEG'
  392. LESFAC(2)='VX'
  393. LESFAC(3)='VY'
  394. LESFAC(4)='VZ'
  395. IVECT=1
  396. *
  397. NBTYPE=4
  398. SEGINI NOTYPE
  399. MOTYPE=NOTYPE
  400. TYPE(1)='REAL*8'
  401. TYPE(2)='REAL*8'
  402. TYPE(3)='REAL*8'
  403. TYPE(4)='REAL*8'
  404. *
  405. ELSE
  406. NBROBL=4
  407. NBRFAC=6
  408. SEGINI NOMID
  409. MOCARA=NOMID
  410. LESOBL(1)='TORS'
  411. LESOBL(2)='INRY'
  412. LESOBL(3)='INRZ'
  413. LESOBL(4)='SECT'
  414. LESFAC(1)='SECY'
  415. LESFAC(2)='SECZ'
  416. LESFAC(3)='OMEG'
  417. LESFAC(4)='VX'
  418. LESFAC(5)='VY'
  419. LESFAC(6)='VZ'
  420. IVECT=1
  421. *
  422. NBTYPE=10
  423. SEGINI NOTYPE
  424. MOTYPE=NOTYPE
  425. TYPE(1)='REAL*8'
  426. TYPE(2)='REAL*8'
  427. TYPE(3)='REAL*8'
  428. TYPE(4)='REAL*8'
  429. TYPE(5)='REAL*8'
  430. TYPE(6)='REAL*8'
  431. TYPE(7)='REAL*8'
  432. TYPE(8)='REAL*8'
  433. TYPE(9)='REAL*8'
  434. TYPE(10)='REAL*8'
  435. ENDIF
  436. *
  437. * caracteristiques pour les tuyaux
  438. *
  439. ELSE IF (MFR.EQ.13) THEN
  440. NBROBL=2
  441. NBRFAC=5
  442. SEGINI NOMID
  443. MOCARA=NOMID
  444. LESOBL(1)='EPAI'
  445. LESOBL(2)='RAYO'
  446. LESFAC(1)='RACO'
  447. LESFAC(2)='OMEG'
  448. LESFAC(3)='VX'
  449. LESFAC(4)='VY'
  450. LESFAC(5)='VZ'
  451. IVECT=1
  452. *
  453. NBTYPE=7
  454. SEGINI NOTYPE
  455. MOTYPE=NOTYPE
  456. TYPE(1)='REAL*8'
  457. TYPE(2)='REAL*8'
  458. TYPE(3)='REAL*8'
  459. TYPE(4)='REAL*8'
  460. TYPE(5)='REAL*8'
  461. TYPE(6)='REAL*8'
  462. TYPE(7)='REAL*8'
  463. *
  464. * caracteristiques pour les barres
  465. *
  466. ELSE IF (MFR.EQ.27) THEN
  467. NBRFAC=0
  468. NBROBL=1
  469. SEGINI NOMID
  470. MOCARA=NOMID
  471. LESOBL(1)='SECT'
  472. *
  473. NBTYPE=1
  474. SEGINI NOTYPE
  475. MOTYPE=NOTYPE
  476. TYPE(1)='REAL*8'
  477. *
  478. * epaisseur et excentrement dans le cas des coques
  479. *
  480. ELSEIF (MFR.EQ.3.OR.MFR.EQ.5.OR.MFR.EQ.9) THEN
  481. NBROBL=1
  482. NBRFAC=1
  483. SEGINI NOMID
  484. MOCARA=NOMID
  485. LESOBL(1)='EPAI'
  486. LESFAC(1)='EXCE'
  487. *
  488. NBTYPE=1
  489. SEGINI NOTYPE
  490. MOTYPE=NOTYPE
  491. TYPE(1)='REAL*8'
  492. *
  493. ENDIF
  494. *
  495. IF (MOCARA.NE.0) THEN
  496. *
  497. * verification du support des composantes recherchees
  498. *
  499. CALL QUESUQ(IMODEL,IPCHE1,4,0,MOCARA,IPLAZ,ISUP,IRET2)
  500. IF(ISUP.GT.1)THEN
  501. GO TO 9990
  502. ENDIF
  503. *
  504. CALL KOMCHA(IPCHE1,IPMAIL,CONM,MOCARA,MOTYPE,1,INFOS,3,IVACAR)
  505. SEGSUP NOTYPE
  506. IF (IERR.NE.0) GOTO 9990
  507. NCARA=NBROBL
  508. NCARF=NBRFAC
  509. NCARR=NCARA+NCARF
  510. IF(ISUP.EQ.1)THEN
  511. CALL VALCHE(IVACAR,NCARR,IPMINT,IPPORE,MOCARA,MELE)
  512. IF(IERR.NE.0)THEN
  513. ISUP=0
  514. GOTO 9990
  515. ENDIF
  516. ENDIF
  517. ENDIF
  518. NCARA=NBROBL
  519. NCARF=NBRFAC
  520. NCARR=NCARA+NCARF
  521. C
  522. C
  523. C_______________________________________________________________________
  524. C
  525. C NUMERO DES ETIQUETTES :
  526. C ETIQUETTES DE 1 A 98 POUR TRAITEMENT SPECIFIQUE A L ELEMENT
  527. C LES ELEMENTS SONT GROUPES COMME SUIT :
  528. C - MASSIF,LIQUIDE 'SURFACE LIBRE' ----------------------> KCENT3
  529. C - COQ3/POUTRE,DKT,COQ4,COQ8,COQ2,DST ------------------> KCENT2
  530. C ET POUTRE DE TIMOSCHENKO
  531. C_______________________________________________________________________
  532. * CABL SEG2 SEG3 TRI3 TRI4 TRI6 TRI7 QUA4 QUA5 QUA8 QUA9
  533. GOTO ( 99, 99, 11, 11, 99, 11, 99, 11, 99, 11, 99
  534. * RAC2 RAC3 CUB8 CU20 PRI6 PR15 LIA3 LIA4 LIA6 LIA8 MULT
  535. & , 99, 99, 11, 11, 11, 11, 99, 99, 99, 99, 99
  536. * TET4 TE10 PYR5 PY13 COQ3 DKT POUT LISP FAC3 FAC4 FAC6
  537. & , 11, 11, 11, 11, 21, 21, 21, 99, 99, 99, 99
  538. * FAC8 LTR3 LQU4 LCU8 LPR6 LTE4 LPY5 COQ8 TUYA TUFI COQ2
  539. & , 99, 99, 99, 99, 99, 99, 99, 21, 21, 99, 21
  540. * POI1 BARR RACO LSU2 COQ4 LISM COF3 RES2 LSU3 LSU4 LICO
  541. & , 99, 21, 99, 99, 21, 99, 99, 99, 99, 99, 99
  542. * COQ6 CVS2 CVS3 CVT3 CVT6 CVQ4 CVQ8 THP5 TH13 THP6 TH15
  543. & , 21, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99
  544. * THC8 TH20 ICT3 ICQ4 ICT6 ICQ8 ICC8 ICT4 ICP6 IC20 IC10
  545. & , 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99
  546. * IC15 TRIP QUAP CUBP TETP PRIP TIMO JOI2 JOI3 JOT3 JOI4
  547. & , 99, 99, 99, 99, 99, 99, 21, 99, 99, 99, 99
  548. * JOI6 JOI8 LISC TRIH DST LIC4 CERC TUYO LSE2 LITU HYT3
  549. & , 99, 99, 99, 99, 21, 99, 21, 99, 99, 99, 99
  550. * HYQ4 HYT4 HYP6 HYC8 TRIS QUAS POIS FOR3 JOP3 JOP6 JOP8
  551. & , 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99
  552. * POL3 POL4 POL5 POL6 POL7 POL8 POL9 PO10 PO11 PO12 PO13
  553. & , 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99
  554. * PO14 BAR3 BAEX LIA2 QUAH CUBH ROT3 SEF2 TRF3 QUF4 CUF8
  555. & , 99, 21, 99, 99, 99, 99, 99, 99, 99, 99, 99
  556. * PRF6 TEF4 PYF5 MSE3 MTR6 MQU9 MC27 MP18 MT10 MP14 SEF3
  557. & , 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99
  558. * TRF7 QUF9 CF27 PF21 TF15 PF19 SEG6 TR21 QU36 C216 P126
  559. & , 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99
  560. * TE56 PY91 TRH6
  561. & , 99, 99, 99),MELE
  562. C
  563. 99 CONTINUE
  564. SEGSUP xMATRI
  565. IRIGEL(4,ISOUS)=0
  566. MOTERR(1:4)=NOMTP(MELE)
  567. MOTERR(5:12)='KCEN'
  568. CALL ERREUR(86)
  569. GOTO 9990
  570. C_______________________________________________________________________
  571. C
  572. C MASSIF
  573. C_______________________________________________________________________
  574. C
  575. 11 CONTINUE
  576. CALL KCENT3 (IPMAIL,NDDL,LRE,NBPGAU,IPMINT,MELE,MFR,IVAMAT,
  577. &IVACAR,NMATT,IPMATR,VROT,IIPDPG)
  578. GOTO 510
  579. C_______________________________________________________________________
  580. C
  581. C BARRE, POUTRE, POUTRE DE TIMOSCHENKO, COQUE, CERC
  582. C_______________________________________________________________________
  583. C
  584. 21 CONTINUE
  585. CALL KCENT2(IPMAIL,LRE,LW,MELE,IVAMAT,NMATT,IVACAR,NCARR,
  586. &IVECT,ISOUS,NBPGAU,IPMINT,IPMIN1,NDDL,MATE,
  587. &CMATE,LHOTRA,IPMATR,VROT,IIPDPG)
  588. GOTO 510
  589. C_______________________________________________________________________
  590. C
  591. C DESACTIVATION DES SEGMENTS PROPRES A LA ZONE GEOMETRIQUE IA
  592. C_______________________________________________________________________
  593. C
  594. 510 CONTINUE
  595. C
  596. IF (ISUP.EQ.1) THEN
  597. CALL DTMVAL(IVAMAT,3)
  598. CALL DTMVAL(IVACAR,3)
  599. ELSE
  600. CALL DTMVAL(IVAMAT,1)
  601. CALL DTMVAL(IVACAR,1)
  602. ENDIF
  603. C
  604. NOMID=MOCARA
  605. IF (MOCARA.NE.0) SEGSUP NOMID
  606. NOMID=MOMATR
  607. SEGSUP NOMID
  608. NOMID=MOFORC
  609. if(lsupfo)SEGSUP NOMID
  610. NOMID=MODEPL
  611. if(lsupdp)SEGSUP NOMID
  612. C
  613. C ERREUR DANS LES S-P MASSE2 ,MASSE3 ,MASSE4
  614. C
  615. IF (IERR.NE.0) GOTO 9997
  616.  
  617. 500 CONTINUE
  618.  
  619. IRET = 1
  620. SEGDES MRIGID
  621. IPRIG = MRIGID
  622. GOTO 666
  623. C
  624. C ERREUR DANS UNE SOUS ZONE, DESACTIVATION ET RETOUR
  625. C
  626. 9990 CONTINUE
  627. IRET = 0
  628.  
  629. IF (ISUP.EQ.1) THEN
  630. CALL DTMVAL(IVAMAT,3)
  631. CALL DTMVAL(IVACAR,3)
  632. ELSE
  633. CALL DTMVAL(IVAMAT,1)
  634. CALL DTMVAL(IVACAR,1)
  635. ENDIF
  636. C
  637. NOMID=MOMATR
  638. IF (MOMATR.NE.0) SEGSUP NOMID
  639. NOMID=MOCARA
  640. IF (MOCARA.NE.0) SEGSUP NOMID
  641. NOMID=MOFORC
  642. if(lsupfo)SEGSUP NOMID
  643. NOMID=MODEPL
  644. if(lsupdp)SEGSUP NOMID
  645. C
  646. 9996 CONTINUE
  647. C
  648. 9997 CONTINUE
  649. SEGSUP MRIGID
  650. IPRIG = 0
  651. C
  652. 666 CONTINUE
  653. C Desactivation XCOOR
  654. SEGDES MCOORD
  655.  
  656. RETURN
  657. END
  658.  
  659.  
  660.  

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