Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

Fatal Error F1002 / Help Me

ghazooo
Beginner
2,310 Views
Hi ,

I have a Fortran 77 program code , I am using fortran power station on XP .

I wrote this program because I am studying Master's degree in Mechanics , It is a very long Finite element method code.

when I press the compile order it shows me the following message :

"fatal error F1002: compiler is out of heap space in pass 2"

I googled the problem , and found the following solutions :

http://www.microsofttranslator.com/BV.aspx?ref=CSSKB&from=en&to=ar&a=http://support.microsoft.com/kb/112345/en-us?fr=1

But to be honest , I did not understand the solution !!!

I think my code is good and clear .

Does any one have any suggestions to solve this problem ?? please consider me as a very simple programmer.

I will really appreciate that .

Thanks in Advance

Ghazooo
0 Kudos
4 Replies
mecej4
Honored Contributor III
2,310 Views
The Microsoft KB article is very clear. The simplest way for you to avoid the problem is to compile without using the /Zi option.

The problem pertains to FPS-1. You may try to obtain FPS-4, which is said to have this bug fixed. Both, however, are obsolete compilers.

The Fortran language has gone through significant and major changes and improvements over the decade since FPS-1 was released. Consider using a modern compiler.
0 Kudos
ghazooo
Beginner
2,310 Views
@ mecej4 , Thank you for your answer

In fact I know I am using a very old comiler ... but I have to use them for a reason.

I am indeed using the FPS-4 !! ,,, and I do not how to change the Zi option , hope you teach me that .

My code is the following :

1 -Main Program STARTS with :

PARAMETER (HLENGTH=600.0,VLENGTH=600.0,NHELE=6,NVELE=6,NTYPE=1)

PARAMETER (DENSITY=2.78E-6,POISON=0.34,THICK=1.0,EMODULE=6.87E4)

PARAMETER (NTOTALNODE=(NHELE+1)*(NVELE+1))

PARAMETER (NHNODE=NHELE+1,NVNODE=NVELE+1)

PARAMETER (MK=(NTOTALNODE-2*NHNODE-2*(NVNODE-2))*5)

PARAMETER (DELTAH=(HLENGTH+0.0)/(NHELE+0.0))

PARAMETER (DELTAV=(VLENGTH+0.0)/(NVELE+0.0))

DIMENSION NODEMATRIX(NTOTALELE,4)

REAL*8 STIFFMATRIX(20,20),MASSMATRIX(20,20)

REAL*8 STIFFMATRIXS(20,20),MASSMATRIXS(20,20)

DIMENSION NODEROWT(4),NODEROWT2(20)

DIMENSION NM(NVNODE,NHNODE)

REAL*8 GSM(NTOTALNODE*5,NTOTALNODE*5),NCARRIER(MK),

&GMM(NTOTALNODE*5,NTOTALNODE*5),AA(MK,MK),BB(MK,MK)

CALL STIFFMAT(STIFFMATRIX,DELTAV,DELTAH,THICK,EMODULE)

CALL MASSMAT(MASSMATRIX,DELTAV,DELTAH,THICK,DENSITY)

CALL STIFFMATS(STIFFMATRIXS,DELTAV,DELTAH)

CALL MASSMATS(MASSMATRIXS,DELTAV,DELTAH,DENSITY)

.

.

.

. etc

2- The Subroutins are STARTS as following :

A- SUBROUTINE STIFFMAT(STIFFMATRIX,DELTAV,DELTAH,THICK,EMODULE)

REAL*8 STIFFMATRIX(20,20),B(6,20),BT(20,6),D(6,6)

REAL*8 CC(5),ZETAM(5),ETAM(5),CA,CB,ZETA,ETA,SUM,SUM2,SUM3

. . .etc

B- SUBROUTINE MASSMAT(MASSMATRIX,DELTAV,DELTAH,THICK,DENSITY)

REAL*8 MASSMATRIX(20,20),B(5,20),BT(20,5),D(5,5)

REAL*8 CC(5),ZETAM(5),ETAM(5),CA,CB,ZETA,ETA,SUM,SUM2,SUM3

. . .etc

C- SUBROUTINE MASSMATS(MASSMATRIXS,DELTAV,DELTAH,DENSITY)

REAL*8 MASSMATRIXS(20,20),B(5,20),BT(20,5),D(5,5),IS,JS,AS

REAL*8 CC(5),ZETAM(5),CA,ZETA,ETA,SUM,SUM2,SUM3

. . .etc

D- SUBROUTINE STIFFMATS(STIFFMATRIXS,DELTAV,DELTAH)

REAL*8 STIFFMATRIXS(20,20),B(3,20),BT(20,3),D(3,3)

REAL*8 CC(5),ZETAM(5),CA,ZETA,ETA,SUM,SUM2,SUM3

. . .etc

What do I have to change ??

Thank you for your help

0 Kudos
mecej4
Honored Contributor III
2,310 Views
Compiling a large Fortran project needs familiarity with the options provided by the Fortran compiler.

Since FPS is an obsolete compiler, you may not find much support here. Posts in this forum are mostly about Intel compilers, with an emphasis on current versions.

Google is not an effective tool for learning basics. A text-book to learn Fortran-77 and your compiler's documentation will be more helpful.

I don't remember the commands for FPS anymore, but one of the following will give you a list of all the compiler switches and their meanings:

fl32 /?
fl32 /help
fl32 -help

You may need to try "fort32" in place of "fl32" in the above (depending on whether you have FPS1 or FPS4).

The following command will probably compile your sources, if there are no syntax errors in them:

fl /O2 *.f /Fefea.exe

Mostly, you are going to be on your own unless you find someone who still uses FPS on this forum.
0 Kudos
ghazooo
Beginner
2,310 Views
Thank you for your nice words .

I prefer if you delete your last comment , because it reflects your lackof knowledge.

you do not know any thing about that "CAVE" language .

in addition , your solution is wrong . I solved it by my self by rearranging the parameters.

Please , do not talk again about something you do not know .... simply say "I dont know "

End of discussion.

Bye
0 Kudos
Reply