1 : C LEKDIV SOURCE PV 09/03/12 21:27:21 6325 2 : SUBROUTINE LEKDIV(MTABD,NU,MTABX,KINC,MCHELM,KPOIND) 3 : IMPLICIT INTEGER(I-N) 4 : IMPLICIT REAL*8 (A-H,O-Z) 5 : C*********************************************************************** 6 : C 7 : C Ce sous programme lit le NUième coefficient d'un opérateur, stocké 8 : C à l'indice ARGnu de la table KIZX de pointeur MTABX associée à 9 : C l'opérateur en cours de traitement. 10 : C Le coefficient est de type ENTIER, FLOTTANT, POINT, CHPOINT ou MOT. 11 : C Dans le cas MOT, on récupère la donnée se trouvant à l'indice MOT 12 : C de la table INCO. 13 : C Ce Sp lit lit le coefficient et rend un MCHAML quoi qu'il arrive 14 : C Le MCHAML en retour est jetable il est calcule aux pts d'integrations 15 : C---------------------------------------------------------------------- 16 : C HISTORIQUE : 20/10/01 : Création 17 : C 18 : C HISTORIQUE : 19 : C 20 : C 21 : C--------------------------- 22 : C Paramètres Entrée/Sortie : 23 : C--------------------------- 24 : C 25 : C E/ MTABD : Objet model de la zone 26 : C E/ NU : Rang du coefficient à aller chercher (ENTIER) 27 : C E/ MTABX : Pointeur de la table contenant le coefficient 28 : C E/ KINC : Pointeur de la table INCO dans laquelle on va chercher 29 : C les valeurs des indices lorsque ceux-ci sont des MOTS. 30 : C /S MCHELM : Chamelem pts d'intégration pour le COEF 31 : C E/ KPOIND : ENTIER type du support GÉométrique DUAL du shéma 32 : C d'intégration => pour la création du Chamelem 33 : C---------------------------------------------------------------------- 34 : C KPOIN = 0->SOMMET 1-> FACE 2-> CENTRE 3-> CENTREP0 4-> CENTREP1 5-> MSOMMET 35 : C---------------------------------------------------------------------- 36 : C************************************************************************ 37 : 38 : -INC SMCHAML 39 : -INC SMCHPOI 40 : -INC SMELEME 41 : -INC SMCOORD 42 : -INC CCOPTIO 43 : -INC CCGEOME 44 : CHARACTER*8 TYPE,NOM,NARG 45 : LOGICAL LOGI 46 : DIMENSION XPOI(3) 47 : C***************************************************************************** 48 : CLEKDIV 49 : C 50 : C- Récupération du TYPE du NUième argument de l'opérateur 51 : C 52 : c write(6,*)' DEBUT LEKDIV NU=',NU 53 : 54 : IF (NU.LE.0 .OR. NU.GE.100) THEN 55 : INTERR(1) = NU 56 : INTERR(2) = 1 57 : INTERR(3) = 99 57 : CALL ERREUR(789) 58 : RETURN 59 : ENDIF 60 : IF (NU.LE.9) THEN 61 : WRITE(NARG,FMT='(A3,I1)')'ARG',Nu 62 : ELSE 63 : WRITE(NARG,FMT='(A3,I2)')'ARG',Nu 64 : ENDIF 65 : TYPE = ' ' 65 : CALL LENCHA(NARG,LC) 65 : CALL ACCTAB(MTABX,'MOT', 0,0.D0,NARG(1:LC),LOGI, 0, 66 : & TYPE ,IVAL,COEF, NOM,LOGI,MCHPOI) 67 : 68 : c write(6,*)' TYPE ,MCHPOI =',TYPE ,MCHPOI 69 : IF(TYPE.EQ.'MOT')THEN 70 : TYPE=' ' 70 : CALL ACMO(KINC,NOM,TYPE,MCHPOI) 71 : ENDIF 72 : 73 : 74 : IF(TYPE.NE.'CHPOINT ')THEN 75 : C On ne veut pas d'objet de type %m1:8 76 : MOTERR(1: 8) = TYPE 76 : CALL ERREUR(39) 77 : RETURN 78 : ENDIF 79 : 79 : CALL MELDIV(MTABD,MCHPOI,MCHELM,KPOIND) 80 : 81 : c write(6,*)' FIN LEKDIV ' 82 : RETURN 83 : 1001 FORMAT(20(1X,I5)) 84 : 1002 FORMAT(10(1X,1PE11.4)) 85 : END 86 : 87 : 88 : 89 : 90 : 91 : 92 : 93 : 94 :
© Cast3M 2003 - All rights reserved.
Disclaimer