hbmdmat
C HBMDMAT SOURCE OF166741 26/05/11 21:15:09 12538 *======================================================================= * Derivation dans le domaine frequentiel : cas matriciel * Ms = w*Me*kron(L,In) * e NT,NDDL : nombre de coefficients, ddl * e OMEG : coefficient * es Ms : matrice d'entree/sortie *======================================================================= IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) -INC TMDYNC POINTEUR Me.MATWRK, Ms.MATWRK NHBM = ((NT/NDDL)-1)/2 c copie locale : Ms(:,:) --> Me(:,:) c* nmc = NT c* nmc = Ms.MATRC(/1) = MS.MATRC(/2) = NT ! c* CALL COPYMAT(NT,Ms.MATRC,Me.MATRC) SEGINI,Me=Ms c Premiere colonne de blocs: termes statiques DO J = 1, NDDL DO I = 1, NT Ms.MATRC(I,J) = 0.D0 ENDDO ENDDO c Boucle sur les lignes de blocs DO I = 1,2*NHBM+1 c Boucle sur les harmoniques (colonnes) DO J = 2,2*NHBM,2 Cf = OMEG*(J/2) c Permutation des blocs DO JJ=1,NDDL j_z1 = (J-1)*NDDL + JJ j_z2 = j_z1 + NDDL DO II = 1, NDDL i_z = (I-1)*NDDL + II Ms.MATRC(i_z,j_z1) = -Cf*Me.MATRC(i_z,j_z2) Ms.MATRC(i_z,j_z2) = Cf*Me.MATRC(i_z,j_z1) ENDDO ENDDO ENDDO ENDDO SEGSUP,Me RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales