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