pschoc
C PSCHOC SOURCE CHAT 05/01/13 02:37:16 5004 IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) ************************************************************************ * * P S C H O C * ----------- * * FONCTION: * --------- * * calcule le pseudo-mode en d{placement pour une force de choc. * * MODULES UTILISES: * ----------------- * -INC PPARAM -INC CCOPTIO -INC CCREEL -INC SMCOORD * * PARAMETRES: (e)=entr{e (s)=sortie * ----------- * * IRAID (e) pointeur sur la matrice K de la structure. * MTRAV (e) pointeur sur un segemnt contenant les modes. * IPCH (e) point de choc. * NORM (e) normale de choc. * IJ (e) point de la structure IJ * ICHP1 (s) pointeur sur le pseudo-mode en d{placement. * * SEGMENT MTRAV REAL*8 FREQ(NBMODE),MN(NBMODE),MW2(NBMODE), & QX(NBMODE),QY(NBMODE),QZ(NBMODE) INTEGER DEPL(NBMODE) ENDSEGMENT * * * AUTEUR, DATE DE CREATION: * ------------------------- * * Lionel VIVAN Juillet 1988 * ************************************************************************ * ICHP1 = 0 * * normalisation de la normale * IPNV = (IDIM + 1) * (NORM - 1) PS = 0.D0 DO 10 ID = 1,IDIM XC = XCOOR(IPNV + ID) PS = PS + XC * XC 10 CONTINUE IF (PS.LT.XPETIT) THEN RETURN ENDIF RACPS = SQRT(PS) XX = XCOOR(IPNV + 1) / RACPS XY = XCOOR(IPNV + 2) / RACPS IF (IDIM.EQ.3) THEN XZ = XCOOR(IPNV + 3) / RACPS ENDIF IF (IJ.EQ.2) THEN XX = -1.D0 * XX XY = -1.D0 * XY IF (IDIM.EQ.3) THEN XZ = -1.D0 * XZ ENDIF ENDIF * * liste des composantes * IF (IDIM.EQ.3) THEN ENDIF CALL MOTS IF (IERR.NE.0) RETURN IF (IDIM.EQ.3) THEN ENDIF CALL MOTS IF (IERR.NE.0) RETURN * * cr{ation du chpoint force * IF (IDIM.EQ.3) THEN ENDIF CALL MANUEL IF (IERR.NE.0) RETURN * SEGACT MTRAV NBMODE = FREQ(/1) * * r{solution du syst}me statique * CALL RESOU IF (IERR.NE.0) RETURN * * r{solution du syst}me dynamique * DO 70 ID = 1,NBMODE IPHI = DEPL(ID) IF (IERR.NE.0) RETURN XFLOT = XPHINF / MW2(ID) IF (ID .EQ. 1) THEN IF (IERR.NE.0) RETURN ELSE IF (IERR.NE.0) RETURN IF (IERR.NE.0) RETURN ICHPDY = ICHP4 ENDIF 70 CONTINUE * * calcul du pseudo-mode * IF (IERR.NE.0) RETURN IF (IERR.NE.0) RETURN IF (IERR.NE.0) RETURN * SEGDES MTRAV * END
© Cast3M 2003 - Tous droits réservés.
Mentions légales