Geowissenschaftliche Datenverarbeitung mit FORTRAN90

Werbung
Übung zu praktischen Arbeitsmethoden (MT3)
Geowissenschaftliche Datenverarbeitung mit
FORTRAN90
Physische
Geographie
Uni Augsburg
Inhalt:
Programmiersprache FORTRAN90/95
Ziel: Wozu Programmieren?
Erlernen des Programmierens allgemein
Fähigkeit zur flexiblen Verarbeitung von Geodaten
Fähigkeit zur Lösung komplexer (EDV-)Probleme allgemein
Leistungsnachweis:
1.) kleinere Übungsaufgaben = Programm-Quelltext-Dateien
(unbenotet)
2.) größeres eigenständig angefertigtes Programm
mit Dokumentation/Beschreibung
an:
Betreff:
[email protected]
fortran_u??_<benutzerkennung>
Übung zu praktischen Arbeitsmethoden (MT3)
Geowissenschaftliche Datenverarbeitung mit
FORTRAN90
Physische
Geographie
Uni Augsburg
Literatur:
Regionales Rechenzentrum Niedersachsen (Hrsg.) (1997):
Fortran95 – Nachschlagewerk für ANSI-Fortran/DIN-Fortran.
Hannover.
Regionales Rechenzentrum Niedersachsen (Hrsg.) (2004):
Unix Eine Einführung . Hannover
Kühme, T. & Witschital P. (1991): Die Fortran-Fibel. Oldenburg
+ Antiquariat ...
+ Internet!!!
geowiki: http://geo21.geo.uni-augsburg.de/geowiki
Kolinsky Skript!
Physische
Geographie
Uni Augsburg
Geowissenschaftliche Datenverarbeitung mit
FORTRAN90
Rechnerbedienung:
Der Rechner als Werkzeug zur Datenverarbeitung
Bildschrim/Drucker
?
OUTPUT
Rechner
Arbeitsspeicher
CPU
Mensch
INPUT
Tastatur/Maus
Festspeicher
Physische
Geographie
Uni Augsburg
Geowissenschaftliche Datenverarbeitung mit
FORTRAN90
Rechnerbedienung:
Der Rechner als Werkzeug zur Datenverarbeitung
Rechner
Bildschrim/Drucker
Arbeitsspeicher
OUTPUT
Betriebssystem
Software
CPU
Mensch
INPUT
Tastatur/Maus
Festspeicher
Geowissenschaftliche Datenverarbeitung mit
FORTRAN90
Rechnerbedienung:
Der Rechner als Werkzeug zur Datenverarbeitung
Mensch
Shell/Software/GUI
Betriebssystem
Hardware
Physische
Geographie
Uni Augsburg
Geowissenschaftliche Datenverarbeitung mit
FORTRAN90
Rechnerbedienung:
Der Rechner als Werkzeug zur Datenverarbeitung
Tastatur
Mensch
Shell/Software/GUI
Betriebssystem
Hardware
Maus
Physische
Geographie
Uni Augsburg
Geowissenschaftliche Datenverarbeitung mit
FORTRAN90
Physische
Geographie
Uni Augsburg
Rechnerbedienung:
Bedienung eines Rechners
= Aufruf eines ausführbaren Programmes
Beispiel 1:
Der Befehl „ls“ (Auflisten von Dateien und Verzeichnissen)
„ls“ ist eine ausführbare Datei (executable) in /bin/
pico /bin/ls -> binäre Steuerzeichen für den Prozessor!
Beispiel 2:
Der Befehl „/usr/bin/gedit“ (Texteditor)
„gedit“ ist eine executable in /usr/bin/
Geowissenschaftliche Datenverarbeitung mit
FORTRAN90
Physische
Geographie
Uni Augsburg
Rechnerbedienung:
Bedienung eines Rechners
= Aufruf eines ausführbaren Programmes
= executable
= Datei mit binärem Maschinencode
Wie werden executables zur Rechnerbedienung erzeugt?
Kein Mensch kann/will ausführbaren binär-code selbst
schreiben!
=> einfache (human readable) Programmiersprache
& Übersetzung in ausführbaren binär-code
Physische
Geographie
Uni Augsburg
Geowissenschaftliche Datenverarbeitung mit
FORTRAN90
Der Weg von der Idee zur executable:
1.) Problem gedanklich in Teilschritte zerlegen
Teilschritte als Anweisungen in Programmiersprache
formulieren, in Quelltextdatei schreiben
2.) mit einem Hilfsprogramm (Compiler) in Binärcode
übersetzen => executable
3.) executable ausführen
Problem
Programmiersprache
Compiler
Quelltext
executable
./a.out
Beispiel:
Problem
Es soll das Wort
„Hallo“ auf den
Bildschirm geschrieben werden
Physische
Geographie
Uni Augsburg
Programmiersprache
Fortran90
Compiler
Quelltext
Datei: hallo.f90:
program main
write(*,*)“hallo“
end program main
executable
gfortran hallo.f90
>./a.out
>hallo
1.) Die Datei „hallo.f90“ ist die sog. Quelltext-Datei (source code)
Sie kann mit jedem x-beliebigen Editor geschrieben werden (pico, gedit, xemacs, etc.)
Sie enthält Anweisungen in Fortran90-Syntax (die der Fortran-Compiler versteht)
2.) Der Compiler „gfortran“ wird aufgerufen mit dem Namen der Quelltextdatei als Argument
Er liest die Anweisungen in „hallo.f90“ der Reihe nach
und produziert (wenn nichts anderes angeben ist) die executable „a.out“
3.) Die executable „a.out“ enthält den ausführbaren binärcode
Sie kann als Befehl aufgerufen werden und führt die Anweisungen aus
Beispiel:
Problem
Es soll das Wort
„Hallo“ auf den
Bildschirm geschrieben werden
Physische
Geographie
Uni Augsburg
Programmiersprache
Fortran90
Compiler
Quelltext
Datei: hallo.f90:
program main
write(*,*)“hallo“
end program main
executable
gfortran hallo.f90
>./a.out
>hallo
Übung: Lassen Sie ihren Namen statt „hallo“ ausgeben!
Vorgehensweise (3 Schritte):
1.) die Datei „hallo.f90“ editieren: nano hallo.f90 (strg-x zum Beenden von pico, y, Enter)
2.) Compileraufruf: gfortran hallo.f90
3.) die neu erstellte executable ausführen: ./a.out
Compilerbedienung
Physische
Geographie
Uni Augsburg
Es gibt verschiedene Fortran-Compiler, u.a.:
- gfortran (open source)
- ifort (intel, persönliche Benutzung frei, schnell)
- pgf90 (Portlandgroup compiler)
Alle compiler wollen die Endung „.f90“ für Fortran90-Quelltexte
Die zu erstellende executable kann statt „a.out“ auch anders
benannt werden: Argument „-o <name>“ bei Aurfuf
> gfortran ­o hallo hallo.f90
> ./hallo
hallo
Weitere Optionen: > gfortran ­­help
Physische
Geographie
Uni Augsburg
Übungsaufgabe bis Mittwoch: fortran_u01_<Benutzerkennung>
Lassen Sie durch mehrere Anweisungen verschiedene Worte
ausgeben.
Benennen Sie den Quelltext: u01<benutzerkennung>.f90
Benennen Sie die executable: u01<benutzerkennung>
per e-mail an: [email protected]
Betreff:
fortran_u01_<benutzerkennung>
Anhang 1:
die Quelltextdatei (u01<benutzerkennung>.f90)
Anhang 2:
die executable (u01<benutzerkennung>)
Herunterladen