manuso
C MANUSO SOURCE CB215821 20/11/25 13:34:01 10792 & IJONCT,ISOL) IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) ************************************************************************ * * M A N U S O * ----------- * * FONCTION: * --------- * * CREE UN OBJET SOLUTION DE SOUS-TYPE SOUSTY. * * MODULES UTILISES: * ----------------- * -INC PPARAM -INC CCOPTIO -INC SMCHPOI -INC SMELEME -INC SMSOLUT * * PARAMETRES: (E)=ENTREE (S)=SORTIE (+ = CONTENU DANS UN COMMUN) * ----------- * * SOUSTY (E) SOUS-TYPE DE L'OBJET SOLUTION : * MODE,SOLUSTAT,DYNAMIQU. * NUME (E) NUMERO DU MODE. * XFREQ (E) FREQUENCE. * XMN (E) MASSE GENERALISEE. * Q1 (E) DEPLACEMENT GENERALISE. * Q2 (E) DEPLACEMENT GENERALISE. * Q3 (E) DEPLACEMENT GENERALISE. * ICHPT (E) POINTEUR SUR LE CHAMP DE DEPLACEMENTS. * ICHEL (E) POINTEUR SUR LE CHAMP DE CONTRAINTES. * IJONCT (E) POINTEUR SUR LE MJONCT * ISOL (S) POINTEUR SUR L'OBJET SOLUTION. * * CHARACTER*8 SOUSTY * * MODE DE FONCTIONNEMENT: *------------------------ * * ON SUPPOSE QUE LE PROGRAMME APPELANT A VERIFIE QUE LE * MOT-CLE "SOUSTY" SOIT CORRECT. * * * AUTEUR, DATE DE CREATION: * ------------------------- * * LIONEL VIVAN JUILLET 1988 * * LANGAGE: * -------- * * ESOPE + FORTRAN77 * ************************************************************************ * LVALM = 5 NIMOD = 3 N = 1 NIPO = 10 SEGINI MSOLUT ISOL = MSOLUT DO 10 I = 1,NIPO MSOLIT(I) = 0 MSOLIS(I) = 0 10 CONTINUE SEGINI MMODE MSOLIS(4) = MMODE IMMODD(1) = NUME FMMODD(1) = XFREQ FMMODD(2) = XMN FMMODD(3) = Q1 FMMODD(4) = Q2 FMMODD(5) = Q3 MSOLIS(5) = ICHPT IF (ICHEL.NE.0) THEN MSOLIS(6) = ICHEL ENDIF IF (IJONCT.NE.0) THEN MSOLIS(10) = IJONCT ENDIF * MCHPOI = MSOLIS(5) SEGACT MCHPOI IF (IFOPOI.NE.1) GOTO 20 ICHPOI=MCHPOI MCHPOI=ICHPOI IF (IFO.NE.1) THEN IMMODD(2)=0 IMMODD(3)=0 ELSE IMMODD(2)=IHARM IF(IHARM.LT.0)IMMODD(3)=1 IF(IHARM.GE.0)IMMODD(3)=2 ENDIF 20 CONTINUE SEGDES MCHPOI SEGDES MMODE ITYSOL = SOUSTY * * **** ON CREE LE NOEUD NBNO+1 QUI VA ETRE ASSOCIE AU MODE. * **** ON MET CE NOEUD A L ORIGINE. IL VA SERVIR D INDICE AU MODE * NBSOUS = 0 NBREF = 0 NBNN = 1 NBELEM = 1 SEGINI MELEME NUM(1,1) = IPOIN ITYPEL = 1 SEGDES MELEME MSOLIS(3) = MELEME * SEGINI MSOLEN ISOLEN(1) = MSOLIS(4) SEGDES MSOLEN MSOLIS(4) = MSOLEN * SEGINI MSOLEN ISOLEN(1) = MSOLIS(5) SEGDES MSOLEN MSOLIS(5) = MSOLEN MSOLIT(5) = 2 * IF (MSOLIS(6) .NE. 0) THEN SEGINI MSOLEN ISOLEN(1) = MSOLIS(6) SEGDES MSOLEN MSOLIS(6) = MSOLEN MSOLIT(6) = 5 ENDIF * IF (MSOLIS(10) .NE. 0) THEN SEGINI MSOLEN ISOLEN(1) = MSOLIS(10) SEGDES MSOLEN MSOLIS(10) = MSOLEN MSOLIT(10) = 14 ENDIF * SEGDES MSOLUT * RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales