gaussmath Geschrieben 19. Januar 2010 Geschrieben 19. Januar 2010 Hallo, es geht um Fortan 77. Vorab die Frage: Können Subroutines überhaupt Funktionen aufrufen? Ich habe folgenden Aufbau (Metakommentare stehen in "") : SUBROUTINE KALK_DELTAT ( c NLOC, NRET, NARG, RET, ARGS, CRESLT, CZ,DZ,IZ,LZ,RZ ) IMPLICIT NONE "Variablendeklarationen und Anweisungen" "Es folgt ein beispielhafter Funktionsaufruf" C Initialsiere Verdampfungsenthalpie VENT=dhv(TBETRB) END C **************Bereich für die Funktionen******************** CC Berechnung der Verdampfungsenthalpie C Die Eingabe muss in Kelvin erfolgen. Die Ausgabe erfolgt in kJ*kg^-1. DOUBLE PRECISION function dhv(t) EXTERNAL grei, greii DOUBLE PRECISION t dhv=greii(t)-grei(t) END CC Berechnung der freien Gibbs-Energie (Region I) C Die Eingabe muss in Kelvin erfolgen. Die Ausgabe erfolgt in kJ*kg^-1. DOUBLE PRECISION function grei(t) "Variablendeklarationen und Anweisungen" END CC Berechnung der freien Gibbs-Energie (Region II) C Die Eingabe muss in Kelvin erfolgen. Die Ausgabe erfolgt in kJ*kg^-1. DOUBLE PRECISION function greii(t) "Variablendeklarationen und Anweisungen" END Beim Kompilieren erhalte ich die Fehlermeldung: "Function 'dhv' has no implicit type". Lösche ich das "IMPLICIT NONE" in der Subroutine, erhalte ich die Fehlermeldung, dass die Datentypen REAL(8) und REAL(4) kollidieren. Danke und Grüße, gaussmath Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.