GNU Fortran z elementami wizualizacji danych



GNU Fortran

Notka wydawnicza

"GNU Fortran z elementami wizualizacji danych" jest podręcznikiem do nauki nowoczesnego programowania w Fortranie 77 i 90/95, opartego na kompilatorach Open Source i systemach operacyjnych Windows i Unix/Linux. Pierwszy rozdział zawiera wprowadzenie dotyczące ogólnych zagadnień związanych z programowaniem, podstawowe wiadomości o Fortranie, GNU Fortranie i Wolnym Oprogramowaniu, a także środowiskach programistycznych przeznaczonych do pracy z tym językiem. Rozdziały drugi i trzeci zawierają informacje pomocne podczas instalacji i użytkowania kompilatorów GNU Fortranu w systemach operacyjnych Windows oraz Linux. Dalsze dziesięć rozdziałów opisuje partiami standard Fortranu 77. Standard 90/95 przedstawiony został w obszernym rozdziale 14. Celowość takiego podziału narzuca praktyka: do dzisiaj bowiem większość kodów źródłowych Fortranu napisana została w standardzie 77. Dobry programista powinien zatem rozróżniać te standardy i umiejętnie poruszać się w zbiorach ich instrukcji, tak aby efektywnie pracować z dowolną wersją kodu źródłowego i w razie potrzeb dokonać tłumaczenia jednego standardu na drugi. Rozdzielenie materiału na części poświęcone starszemu i nowszemu standardowi języka ma również za zadanie ułatwić wdrożenie się w standard 90/95 osobom znającym Fortran 77, a chcącym pogłębić swoje wiadomości. Rozdział 15 przedstawia ogólne strategie programowania nakierowanego na uzyskiwanie efektów graficznych: wykresów dwu- i trójwymiarowych, rozkładów pól skalarnych i wektorowych, map geograficznych czy też animacji. Konkretne zastosowanie wybranych rozwiązań - biblioteki graficznej DISLIN i środowiska Gnuplot - w integracji z językiem Fortran, przedstawione zostało odpowiednio w rozdziałach 16 i 17. Rozdział 16 wymaga od czytelnika opanowania w podstawowym zakresie języka Fortran. Podobnie jest z rozdziałem 17, z tym że informacje w nim przedstawione dają się łatwo zastosować również w całkowitym oderwaniu od języka Fortran. Ostatni rozdział książki przedstawia technikę integracji programów pisanych w języku Fortran, narzędzi graficznych oraz języka powłoki systemów operacyjnych Windows oraz Linux do wykonywania tzw. obliczeń parametrycznych. Cennym elementem podręcznika jest opracowana w postaci załącznika tabela około 200 funkcji wewnętrznych dostępnych w kompilatorach GNU Fortranu. Wskazane są w niej również standardy, w których poszczególne funkcje występują. Całość materiału została tak ułożona, że odbiorcą książki może być zarówno osoba rozpoczynająca swoją przygodę z językiem Fortran, jak również osoba język ten znająca, ale poszukująca prostych i skutecznych metod wizualizacji danych. Książka "GNU Fortran z elementami wizualizacji danych" stanowi jak dotąd najobszerniejszą i najszerszą publikacją dotyczącą języka Fortran - i pierwszą opisującą kompilatory Open Source - wydaną w języku polskim. Czytelnika zainteresuje zapewne informacja, że autor podręcznika jest również autorem bezpłatnego pakietu oprogramowania służącego do programowania w języku Fortran i integrującego omawiane w książce narzędzia, a podjęte przez niego niekomercyjne przedsięwzięcie stworzenia kompleksowego zestawu informacji i narzędzi jest unikalne w skali światowej. Oprogramowanie autora, wszystkie kody źródłowe przykładów zawartych w książce, a także dodatkowe przykłady stosowania wszystkich opisanych w załączniku książki funkcji wewnętrznych, dostępne są na stronie http://moskit.uwm.edu.pl/~wojsob/

Od autora (fragment z książki)

Istnieje wiele publikacji związanych z językiem Fortran, z pewnych jednak względów postanowiłem napisać kolejny. Oto one:

Podczas korzystania z podręcznika zalecam instalację pakietu Edi (o ile praca odbywa się w środowisku Windows) - można go pobrać z mojej strony domowej. Oprócz omawianych w książce kompilatorów g77, g95 i gfortran, pakiet Edi zawiera również wbudowaną bibliotekę DISLIN, środowisko Gnuplot oraz inne przedstawione w książce narzędzia. Nie będzie zatem potrzebna instalacja i konfiguracja tych dodatków. Bezpośrednio po instalacji można ćwiczyć dowolny fragment materiału z podręcznika bez dodatkowych czynności wstępnych. W skład pakietu Edi wchodzi również podręcznik użytkownika, zbiór kursów i materiałów, opis i przykłady stosowania funkcji wewnętrznych oraz zestaw dodatkowych narzędzi. Na stronie domowej projektu Edi można również pobrać kody źródłowe wszystkich prezentowanych w książce przykładów.

Mam nadzieję, że moje opracowanie będzie przydatne. Życzę efektywnej nauki i pracy oraz jak najmniejszej liczby błędów w kodach źródłowych...

Zawartość podręcznika

W skrócie, podręcznik "GNU Fortran z elementami wizualizacji danych" zawiera:

Materiały dodatkowe

Interfejs programu Edi
Rys 1. Interfejs programu Edi 3.1

Uwagi:

Literatura

  1. Bloodshed Software. URL: http://www.bloodshed.net (En, 2007-10-16).
  2. Burley J.C.: Using and Porting GNU Fortran. URL: http://gcc.gnu.org/onlinedocs/gcc-3.4.6/g77.pdf (En, 2007-10-16).
  3. Compaq Fortran User Manual for Tru64 UNIX and Linux Alpha Systems. URL: http://alpha.caspur.it/FORTRAN_USR_MAN_DOC/dfumroutines.htm (2007-10-16).
  4. Cygwin Home. URL: http://www.cygwin.com (En, 2007-10-16).
  5. DISLIN 9.1 A Data Plotting Library by Helmut Michels. URL: http://www.mps.mpg.de/dislin/manual.html (En, 2007-10-16).
  6. DISLIN Home Page. URL: http://www.mps.mpg.de/dislin (En, 2007-10-16).
  7. F90GL. URL: http://math.nist.gov/f90gl (En, 2007-10-16).
  8. Force Project. URL: http://www.guilherme.tk (En, 2007-10-16).
  9. Fortran. URL: http://www.answers.com/topic/fortran (En, 2007-10-16).
  10. Fortran 77 and VMS Intrinsic Functions. URL: http://docs.sun.com/source/819-3684/3_F77_Intrins.html (En, 2007-10-16).
  11. Fortran 77 Runtime Error Messages. URL: http://www.uic.edu/depts/accc/software/compilers/forterr.html (En, 2007-10-16).
  12. Fortran 77 Table of Intrinsic Functions. URL: http://gcc.gnu.org/onlinedocs/gcc-3.4.6/g77/Table-of-Intrinsic-Functions.html (En, 2007-10-16).
  13. Fortran 90 Concise Reference. URL: http://www.ifuap.buap.mx/manuales/profortran/F90_Reference.pdf (En, 2007-10-16).
  14. Fortran 90 for the Fortran 77 Programmer. URL: http://www.whoi.edu/CIS/training/classes/f77to90 (En, 2007-10-16).
  15. Fortran 90 Intrinsic procedures. URL: http://www.pcc.qub.ac.uk/tec/courses/f90/stu-notes/F90_notesMIF_13.html (En, 2007-10-16).
  16. Fortran 95 by Dr. M.J. Rutter. URL: http://www.tcm.phy.cam.ac.uk/~mjr/f1nn.pdf (En, 2007-10-16).
  17. Fortran and C/C++ Mixed Programming. URL: http://www.neurophys.wisc.edu/comp/docs/notes/not017.html (En, 2007-10-16).
  18. Fortran - Categories of Intrinsic Functions. URL: http://alpha.caspur.it/FORTRAN_DOC/www.compaq.com_80/fortran/docs/lrm/lrm0193.htm (En, 2007-10-16).
  19. Fortran Library Reference. SUN Studio 10. URL: http://www.fzu.cz/oddeleni/savt/luna/dokumentace/Library.pdf (En, 2007-10-16).
  20. Free Fortran Compilers. URL: http://www.thefreecountry.com/compilers/fortran.shtml (En, 2007-10-16).
  21. Free Pascal Lazarus Project. URL: http://www.lazarus.freepascal.org/modules.php (En, 2007-10-16).
  22. FTN95 Personal Edition. URL: http://www.silverfrost.com/32/ftn95/ftn95_personal_edition.asp (En, 2007-10-16).
  23. G77 - Table of Intrinsic Functions. URL: http://gcc.gnu.org/onlinedocs/gcc-3.4.6/g77/Table-of-Intrinsic-Functions.html#Table-of-Intrins (En, 2007-10-16).
  24. G77 - Run-time Library Errors. URL: http://gcc.gnu.org/onlinedocs/gcc-3.4.6/g77/Run_002dtime-Library-Errors.html (En, 2007-10-16).
  25. G95 Manual. URL: http://genome.jouy.inra.fr/doc/public/g95/G95Manual.pdf (En, 2007-10-16).
  26. GCC Online documentation. URL: http://gcc.gnu.org/onlinedocs/ (En, 2007-10-16).
  27. Gfortran Intrinsic Procedures. URL: http://os.cqu.edu.au/cgi-bin/info/info2html.cgi?(gfortran)Intrinsic%20Procedures (En, 2007-10-16).
  28. GNU Fortran 77 (g77) Legacy Site. URL: http://world.std.com/~burley/g77.html (En, 2007-10-16).
  29. Gnumeric - The Gnome Office Spreadsheet. URL: http://www.gnome.org/projects/gnumeric (En, 2007-10-16).
  30. GNUPlot & Vi. URL: http://fatcat.ftj.agh.edu.pl/~tomczyk (Pl, 2007-10-16).
  31. GNUPlot HomePage. URL: http://www.gnuplot.info (En, 2007-10-16).
  32. GNUPlot - not so Frequently Asked Questions. URL: http://t16web.lanl.gov/Kawano/gnuplot/index-e.html (En, 2007-10-16).
  33. Harper J.F.: Fortran 95 for Fortran 77 Users. Victoria University of Wellington. URL: http://www.mcs.vuw.ac.nz/math/papers/JFH10_f95_2007.pdf (2007-10-16).
  34. Host/Target specific installation notes for GCC: URL: http://gcc.gnu.org/install/specific.html (En, 2007-10-16).
  35. Intel® Compilers. URL: http://www.intel.com/cd/software/products/asmo-na/eng/compilers (En, 2007-10-16).
  36. Intel Fortran Language Reference. URL: http://www.ncsa.uiuc.edu/UserInfo/Resources/Software/Intel/Compilers/9.0/lang_for.pdf (En, 2007-10-16).
  37. Intel Fortran Programmer's Reference. URL: ftp://download.intel.com/support/performancetools/fortran/linux/v7/for_prg.pdf (En, 2007-10-16).
  38. Intrinsic functions in Fortran 90. URL: http://www.nsc.liu.se/~boein/f77to90/a5.html (En, 2007-10-16)
  39. IrfanView. URL: http://www.irfanview.com (En, 2007-10-16).
  40. Lahey Fortran. URL: http://www.lahey.com (En, 2007-10-16).
  41. Liczby pierwsze - liczby pseudolosowe. URL: http://www.eioba.com/a2322/liczby_pierwsze_liczby_pseudolosowe (Pl, 2007-10-16).
  42. MinGW - Home: URL: http://www.mingw.org (En, 2007-10-16).
  43. NDrW. JPEGVideo. URL: http://www.ndrw.co.uk (En, 2007-10-16).
  44. Octave. URL: http://www.octave.org (En, 2007-10-16).
  45. OpenOfficeOrg. URL: http://www.openoffice.org (En, 2007-10-16).
  46. Open Watcom Main Page. URL: http://www.openwatcom.org/index.php/Main_Page (En, 2007-10-16).
  47. PSPLOT. PostScript for Technical Drawings. URL: http://www.nova.edu/ocean/psplot.html (En, 2007-10-16).
  48. RPM Search. URL: http://rpm.pbone.net (En, 2007-10-16).
  49. PGI Fortran Reference. URL: http://www.pgroup.com/doc/pgifortref.pdf (En, 2007-10-16).
  50. Programmeinheiten. URL: http://www.kfa-juelich.de/zam/docs/bhb/bhb_html/d0124/node58.html (De, 2007-10-16).
  51. SciLab. URL: http://www.scilab.org (En, 2007-10-16).
  52. Software from Alan J. Miller. URL: http://users.bigpond.net.au/amiller (En, 2007-10-16).
  53. Status of Fortran 95. URL: http://www.nsc.liu.se/~boein/f77to90/f95.html (En, 2007-10-16).
  54. Summary of the new features in Fortran 90. URL: http://www.nsc.liu.se/~boein/f77to90/a3.html (En, 2007--10-16).
  55. Tablica znaków ASCII: URL: http://office.microsoft.com/pl-pl/word/HA011331361045.aspx (Pl, 2007-10-16).
  56. The G95 project. URL: http://g95.sourceforge.net (En, 2007-10-16).
  57. The GNU Fortran Compiler. URL: http://gcc.gnu.org/onlinedocs/gfortran (En, 2007-10-16).
  58. The Ultimate Packer for eXecutables. URL: http://upx.sourceforge.net (En, 2007-10-16).
  59. Using GNU Fortran 95. URL: http://gcc.gnu.org/onlinedocs/gcc-4.2.2/gfortran.pdf (En, 2007-10-16).
  60. VFort. URL: http://www.imamod.ru/~vab/vfort (En, 2007-10-16).
  61. Welcome to the home of GNU Fortran. URL: http://gcc.gnu.org/fortran (En, 2007-01-20).
  62. Wikipedia: Cygin. URL: http://pl.wikipedia.org/wiki/Cygwin (Pl, 2007-10-16).
  63. Wikipedia: MinGW. URL: http://pl.wikipedia.org/wiki/MinGW (Pl, 2007-10-16).
  64. Wikipedia: Paradygmat programowania. URL: http://pl.wikipedia.org/wiki/Paradygmat_programowania (Pl, 2007-10-16).
  65. Wikipedia: Popularne Formaty Graficzne. URL: http://pl.wikipedia.org/wiki/Grafika_komputerowa#Popularne_formaty_graficzne (Pl, 2007-10-16).
  66. XL Fortran for AIX 8.1. URL: http://www.ncsa.uiuc.edu/UserInfo/Resources/Hardware/IBMp690/IBM/usr/share/man/info/en_US/xlf (2007-10-16).
  67. Zadora M., Zając M.: Komputerowe Symulacje Numeryczne. Fortran 95. URL: http://fatcat.ftj.agh.edu.pl/~majozo/paper.pdf (2007-10-16).



http://www.uwm.edu.pl/edu/sobieski