Changeset 2366 in Sophya for trunk/Eval/JET/fmtx.f


Ignore:
Timestamp:
Apr 18, 2003, 5:48:16 PM (22 years ago)
Author:
ansari
Message:

Ajout fonctions Sin/Cos/... ds jet.h + prog en f90 - Reza 18/4/2003

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Eval/JET/fmtx.f

    r2363 r2366  
    4747      CALL FPrtTim(4)
    4848
     49      DO K=1,NTIME
     50        C1 = K*0.135
     51        C2 = COS(6.*C1)+0.04
     52        C3 = SIN(C1*8.5)
     53        CALL OPEFMTX(K, MX1, MX2, MX5, C1, C2, C3)
     54      ENDDO
     55      PRINT *, 'FIN  MX5 = C1*MX1 + MX3 + COS(C2*MX2*MX1) '
     56      CALL FPrtTim(5)
     57
    4958      PRINT *, ' ------ FIN programme ---------- '
    5059      END
     
    8291      END
    8392
     93      SUBROUTINE OPEFMTX(K, MX1, MX2, MX5, C1, C2, C3)
     94      INTEGER I,J,K
     95      DOUBLE PRECISION MX1(1000,500), MX2(1000,500)
     96      DOUBLE PRECISION MX5(1000,500)
     97      DOUBLE PRECISION C1,C2,C3
     98      DO I=1,1000
     99         DO J=1,500
     100            MX5(I,J) = C1*MX1(I,J)+MX2(I,J)+
     101     +                 C3*COS(C2*MX2(I,J)*MX1(I,J))
     102         ENDDO
     103      ENDDO
     104      IF (K.EQ.5) PRINT *, 'OPEFMTX/COS - 5 -> ', MX5(20,5)
     105      IF (K.EQ.15) PRINT *, 'OPEFMTX/COS - 15 -> ', MX5(20,15)
     106      RETURN
     107      END
     108
    84109      SUBROUTINE OPADDMTX(K, MX1, MX2, MX3, MX5, C1, C2, C3)
    85110      INTEGER I,J,K
     
    104129      DOUBLE PRECISION C1,C2,C3
    105130      NTOT = 1000*500
    106       CALL DVCAL(NTOT, C1, MX1, 1, MX5, 1)
    107       CALL DZAXPY(NTOT, C2, MX2, 1, MX5, 1, MX4, 1)
    108       CALL DZAXPY(NTOT, C3, MX3, 1, MX4, 1, MX5, 1)
     131C  Sur OSF :
     132C      CALL DVCAL(NTOT, C1, MX1, 1, MX5, 1)
     133C      CALL DZAXPY(NTOT, C2, MX2, 1, MX5, 1, MX4, 1)
     134C      CALL DZAXPY(NTOT, C3, MX3, 1, MX4, 1, MX5, 1)
     135C  Sinon
     136      CALL DCOPY(NTOT, MX1, 1, MX5, 1)
     137      CALL DSCAL(NTOT, C1, MX5, 1)
     138      CALL DAXPY(NTOT, C2, MX2, 1, MX5, 1)
     139      CALL DAXPY(NTOT, C3, MX3, 1, MX3, 1)
    109140      IF (K.EQ.5) PRINT *, 'MTXBLAS - 5 -> ', MX5(20,5),
    110141     + ' NTot=' , NTOT
Note: See TracChangeset for help on using the changeset viewer.