Télécharger cvecfl.eso

Retour à la liste

Numérotation des lignes :

cvecfl
  1. C CVECFL SOURCE KK2000 14/04/09 21:15:11 8027
  2.  
  3. SUBROUTINE C_VECFLMAC (X,NDIMX,VECM,NMODEL)
  4. IMPLICIT INTEGER(I-N)
  5. integer ndimx,nmodel,ndims,npcon,npcap,i,ndimv,kdummy
  6. complex*16 x(ndimx),vecm(ndimx),p,aux
  7. real*8 exm,qaa,pcc,eww,xk1,xk2,etb,exv,xep,paa,cco,
  8. . exl,xnn,aaa,bbb,pc0,exr,cca,phi,alp,pcc2,paa2,qaa2,
  9. . exm2,eww2,cpr,cpm,cfr
  10. common /MRScone/ exm,qaa,pcc,eww,xk1,xk2,etb,exv,xep,paa,cco,
  11. . exl,xnn,aaa,bbb
  12. common /MRScapp/ pc0,exr,cca,phi,alp,pcc2,paa2,qaa2,exm2,eww2,
  13. . cpr,cpm,cfr
  14. ndims=ndimx-2
  15. npcon=ndimx-1
  16. npcap=ndimx
  17. ndimv=2
  18. kdummy=nmodel
  19. if (nmodel.eq.22) kdummy=23
  20. call c_vflsigMAC(x,ndims,x(npcon),ndimv,vecm,kdummy)
  21. aux=(0.D0,0.D0)
  22. do i=1,3
  23. aux=aux+(x(i)+CMPLX(pcc))*vecm(i)
  24. enddo
  25. do i=4,ndims
  26. c aux=aux+2.D0*x(i)*vecm(i)
  27. aux=aux+x(i)*vecm(i)
  28. enddo
  29. if (abs(aux).eq.0.D0) then
  30. write(*,*)' Trabj plas negativo:',aux
  31. aux=0.D0
  32. endif
  33. p=-(x(1)+x(2)+x(3))/(3.D0,0.D0)
  34. vecm(npcon)=-aux*((p-CMPLX(pcc))/CMPLX(paa))**
  35. & (CMPLX(-exl))/(CMPLX(paa)*CMPLX(cco))
  36. vecm(npcap)=-aux*CMPLX(pc0/paa)**CMPLX(-abs(exr))/CMPLX(cca*paa)
  37. return
  38. end
  39.  
  40.  
  41.  
  42.  
  43.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales