[updated 10.Nov.2009]

Librairie integran > Fichier fspecw.f

Qui appelle fspecw ?

line
      SUBROUTINE FSPECW (NBL,WL,NCL,NBFPRC
     &                  ,ELDIPQ,TYPE,COFVAR,COEFFR,COFVAC,COEFFC,IMP)
line
  Auteur: C. Chambeyron (Novembre 2002)
  Derniere modification : C.Chambeyron & D.Martin (10 novembre 2009)
  Version 1
 
  Calcul par quadrature d'un integrand elements finis localises
 
  -- Arguments --
  NBL    nombre de d.l. de l'inconnue variationnelle
  WL     valeurs des fonctions de base pour l'interpolation de l'inconnue
         (en ligne) variationnelle en un point de quadrature
  NCL    nombre de composantes de l'inconnue variationnelle en ligne
  NBFPRC nombre de fonctions propres (inconnue spectrale) 
  ELDIPQ poids de quadrature multiplie par l'element differentiel
  TYPE   type (REEL ou COMPLEXE) de l'integrand ou du coeff. variable
  COFVAR tableau des valeurs des fonctions spectrales (cas REEL)
  COEFFR tableau des valeurs cumulees des integrands elementaires aux points
         de quadrature (cas REEL)
  COFVAC coeff. variable (cas COMPLEXE)
  COEFFC tableau des valeurs cumulees des integrands elementaires aux points
         de quadrature (cas COMPLEXE)
  IMP    numero du fichier d'impression si non nul
line
      IMPLICIT NONE
      CHARACTER*(*) TYPE
      INTEGER       NBL,NCL,NBFPRC,IMP
      REAL          WL(*),ELDIPQ
     &             ,COFVAR(*),COEFFR(NCL,NBL,*)
      COMPLEX       COFVAC(*),COEFFC(NCL,NBL,*)
 
      INTEGER       J,I,I1
line
      IF (TYPE(1:1).EQ.'R') THEN
 
         DO 22 J=1,NBFPRC
            DO 21 I=1,NBL
               DO 20 I1=1,NCL
                 COEFFR(I1,I,J)=COEFFR(I1,I,J) + ELDIPQ*COFVAR(J)*WL(I)
 20            CONTINUE
 21         CONTINUE
 22      CONTINUE
       
      ELSE        
 
         DO 42 J=1,NBFPRC
            DO 41 I=1,NBL 
               DO 40 I1=1,NCL
                 COEFFC(I1,I,J)=COEFFC(I1,I,J) + ELDIPQ*COFVAC(J)*WL(I)
 40            CONTINUE
 41         CONTINUE
 42      CONTINUE
 
      ENDIF
 
      IF (IMP.GT.0) THEN
         IF (NCL.GT.1) THEN
            CALL PRINTV ('(FspecW)',NCL,NBL,1,NBFPRC,NBFPRC
     &                             ,TYPE,COEFFR,COEFFC,IMP)
         ELSE
            CALL PRINTG ('(FspecW)',NBL,NBFPRC,NBFPRC
     &                             ,TYPE,COEFFR,COEFFC,IMP)
         ENDIF
      ENDIF
line
 -- File history
  Version 1 : C.Chambeyron & D.Martin (10 novembre 2009)
  rajout boucle en 'I1' pour traiter le cas vectoriel (2008)
  Version 0 : C.Chambeyron & D.Martin (Juin 2006)
line
                                                                    END !FspecW
    
line
top

fspecw est appelé dans (2 procédures)

top