[Tech] Segmentation fault

Christian argonauta74@gmail.com
Gio 26 Mar 2009 12:15:55 CET


La parte di codice...

C   CALCOLO DELLA PRODUZIONE TOTALE
C
      PT1=0.
      PT2=0.
C      
      IF ((BATHY.GT.ZE).AND.(BATHY.GE.ZETUDE)) GOTO 500   
      IF ((BATHY.GT.ZE).AND.(BATHY.LE.ZETUDE)) GOTO 501
      IF ((BATHY.LT.ZE).AND.(BATHY.LT.ZETUDE)) GOTO 502
C       
C   CASO 1 = BATIMETRIA MAGGIORE DI ZE E ZETUDE  
500   CONTINUE 
      DO 480 IZ=1,NIZ1
      Z=DZ*(IZ-1)
      X=PZ(IZ)
      IF(IZ.EQ.1.OR.IZ.EQ.NIZ1)X=0.5*X
      IF(Z.LE.ZE) THEN
      PT1=PT1+X
      ELSE
      PT2=PT2+X
      ENDIF
480   CONTINUE
      PT1=PT1*DZ
      PT2=PT2*DZ
      PT=PT1+PT2
      OPEN(810,FILE='PRODVALUE',STATUS='OLD')
      WRITE(810,'(F6.4)')PT
      CLOSE(810) 
C
C   CASO 2 = BATIMETRIA MAGGIORE DI ZE MA MINORE DI ZETUDE   
501   CONTINUE               
      ZETUDE=BATHY
      DZ=ZETUDE/NIZ
      DO 481 IZ=1,NIZ1
      Z=DZ*(IZ-1)
      X=PZ(IZ)
      IF(IZ.EQ.1.OR.IZ.EQ.NIZ1)X=0.5*X
      IF(Z.LE.ZE) THEN
      PT1=PT1+X
      ELSE
      PT2=PT2+X
      ENDIF
481   CONTINUE
      PT1=PT1*DZ
      PT2=PT2*D
      PT=PT1+PT2
      OPEN(810,FILE='PRODVALUE',STATUS='OLD')
      WRITE(810,'(F6.4)')PT
      CLOSE(810) 
C      
C   CASO 3 = BATIMETRIA MINORE DI ZE QUINDI MINORE DI ZETUDE   
502   CONTINUE    
      ZE=BATHY
      DZ=BATHY/NIZ
      DO 482 IZ=1,NIZ1
      Z=DZ*(IZ-1)
      X=PZ(IZ)
      IF(IZ.EQ.1.OR.IZ.EQ.NIZ1)X=0.5*X
      IF(Z.LE.ZE) THEN
      PT1=PT1+X
      ELSE
      PT2=PT2+X
      ENDIF
482   CONTINUE
      PT1=PT1*DZ
      PT2=PT2*DZ
      PT=PT1+PT2
      OPEN(810,FILE='PRODVALUE',STATUS='OLD')
      WRITE(810,'(F6.4)')PT
      CLOSE(810) 

Ho notato che il file PRODVALUE all'interno del quale devono andare a
finire i valori di PT rimane sempre vuoto, non viene scritto.

Grazie.
-- 
Christian
Instant messaging (Gtalk/jabber-Skype): argonauta74@gmail.com
        
"..chiunque abbia osservato almeno una volta con i propri occhi la
bellezza della natura non è destinato alla morte, ma alla natura
stessa."

Konrad Lorenz




Maggiori informazioni sulla lista flug-tech