- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am trying to make a VAX fortran code work on intel fortran for windows. The problem is it has a "call errset" statement. My understanding is "errset" isn't used in intel fortran. I'm having trouble figuring out how to produce a similar result in intel fortran without using errset. Any suggestions on this or where to look? Thank you in advance.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Here's the section with errset. The three lines are indented so they will stand out. My job won't allow me to send you the whole file. Mylimited understanding is that it's supposed tostore errors for later viewing. I hope this is enough. Thank you in advance.
PRINT*,'ENTER INPUT FILE NAME'
READ(*,'(A)')FINP
FTMP='TEMP.DAT'
DO J=80,1,-1
IF (FINP(J:J).EQ.'.') GO TO 91
END DO
91 FLST=FINP(1:J)//'LST'
FSUM=FINP(1:J)//'SUM'
FACC=FINP(1:J)//'ACC'
OPEN (JLST,NAME=FLST,TYPE='NEW')
OPEN (JSUM,NAME=FSUM,TYPE='NEW',
* CARRIAGECONTROL='LIST')
OPEN (JACC,NAME=FACC,TYPE='NEW',
* CARRIAGECONTROL='LIST')
!CLEAN INPUT FILE FROM LINES THAT STARTS WITH "*"
CALL CLEAN_FILE(FINP,FTMP)
! READ FROM THE CLEANED INPUT FILE
1 CALL ERRSET(72,.TRUE.,.FALSE.,.FALSE.,.FALSE.,32767)
CALL ERRSET(73,.TRUE.,.FALSE.,.FALSE.,.FALSE.,32767)
CALL ERRSET(88,.TRUE.,.FALSE.,.FALSE.,.FALSE.,32767)
NRUN=NRUN+1
CALL GUSTA (FTMP,FLST,FSUM,FACC)
CALL GUSTD
CALL GUSTE
CALL GUSTF
CALL GUSTG
CALL GUSTL
CALL GUSTS
CALL GUSTT (NRUN)
GO TO 1
END
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I would suggest simply commenting out those calls. By default, Intel Fortran uses IEEE floating point semantics which continue on these errors and give you an Infinity or a NaN (Not a Number). If these are used in a later calculation, then you may get other results. Try it and see. There are other, newer ways of controlling floating point behavior but I don't want to get into that yet. I think that just removing the calls will give you behavior closer to what the VAX would do.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page