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
初學者
2,488 檢視
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 積分
4 回應
mecej4
榮譽貢獻者 III
2,488 檢視
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.
ghazooo
初學者
2,488 檢視
@ 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

mecej4
榮譽貢獻者 III
2,488 檢視
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.
ghazooo
初學者
2,488 檢視
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
回覆