fortran çıktı alamıyorum

Başlatan zeusmaster, 02 Aralık 2011 - 15:01:53

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

zeusmaster

       program ozdegervektor
       implicit real (A-H,O-Z)
       parameter (N=3)
dimension A(N,N) , V(N,N)
       data A/5,4,2,4,5,2,2,2,2/
       tol = 1.0E-6
       call JACOBI(A,V,N,TOL)
do i=1,N
       do j=1,N
write(*,*) J,'ozdeger:' , A(I,J)
       write(*,*) I, V(I,J)
end do
       end do
       end
       
       SUBROUTINE JACOBI(A,V,N,TOL)
       IMPLICIT REAL*8 (A-H,O-Z)
       DIMENSION A(N,N), V(N,N)
       SIFIR=0.0D0
       TOPLAM=SIFIR
       TOL=DABS(TOL)
       DO 20 I=1,N
       DO 10 J=1,N
       IF (TOL.GT.SIFIR) V(I,J)=SIFIR
   10  TOPLAM=TOPLAM+DABS(A(I,J))
       IF(TOL.GT.SIFIR) V(I,I)=1.0
   20  CONTINUE
       IF (N.EQ.1)RETURN
       IF(TOPLAM.LE.SIFIR) RETURN
       TOPLAM = TOPLAM/DFLOAT(N*N)
   30  TTOPLAM=SIFIR
       AMAX=SIFIR
       DO 50 J=2,N
       IH=J-1
       DO 50 I=1,IH
       AA=DABS(A(I,J))
       IF(AA.GT.AMAX) AMAX=AA
       TTOPLAM=TTOPLAM+AA
       IF(AA.LT.0.1*AMAX) GO TO 50
       AA=ATAN2(2.0*A(I,J),A(I,I)-A(J,J))/2.0
       SINAA=DSIN(AA)
       COSAA=DCOS(AA)
       DO 60 K=1,N
       TT=A(K,I)
       A(K,I)=COSAA*TT+SINAA*A(K,J)
       A(K,J)=-SINAA**TT+COSAA*A(K,J)
       TT=V(K,I)
       V(K,I)=COSAA*TT+SINAA*V(K,J)
   60  V(K,J)=-SINAA*TT+COSAA*V(K,J)
       A(I,I)=COSAA*A(I,I)+SINAA*A(J,I)
       A(J,J)=-SINAA*A(I,J)+COSAA*A(J,J)
       A(I,J)=SIFIR
       DO 40 K=1,N
       A(I,K)=A(K,I)
       A(J,K)=A(K,J)
   40  CONTINUE
   50  CONTINUE
       IF(DABS(TTOPLAM)/TOPLAM.GT.TOL) GO TO 30
RETURN
END


sonuçları ekrana yazdırmıyor.Gidişatın neresinde hata var acaba?
Up and Running...

travego0403

#1
Hocam bu bilim dünyası Fortranı neden bırakmaz ki? :)

Bu uygulamayı başka bir dilde yazma şansınız yok mu? Altı üstü 50 satır kod başka bir dile aktarılabilir. Başka bir akademisyen görmediği sürece cevap alamayabilirsiniz. Fortran bilenlerin sayısı bayağı bir az. :(
Matrislerle özdeğer vektörü gibi bir şey bulmaya çalışıyorsunuz galiba.
"Matematik bir dildir ve bu dilde şairlere fizikçi denir." Richard Feynman

zeusmaster

@travego0403 aynen doğru söylüyorsun.Ben çok söyledim başka bir dile geçelim diye ama nümerik fizik dili fortran.Belki senle bişeyler yapıp ortaya koyarsak değişir :)
Up and Running...

travego0403

Basit programlar için neden olmasın?  :)
"Matematik bir dildir ve bu dilde şairlere fizikçi denir." Richard Feynman

zeusmaster

Konunun silinmesini istiyorum.Kodda gereğinden fazla hata var ve baştan yazıldı.
Up and Running...

alquirel

#5
Nasıl çözüldü?

zeusmaster

#6
Kodu yazan hoca çok sayıda hata yaptığını farkletti ve kodu geri çekti :=)
Up and Running...

alquirel

#7
Gereğini yapalım o halde ;)

cagriemer

Sorun aslinda cozulmemis. @alquirel ve @bahdem musaadenizle [Cozuldu] etiketini kaldiriyorum.