infistream

5.12 Exercises

Latihan 1
Sebuah alat penting yang digunakan dengan OpenFOAM® adalah Doxygen [18]. Ini adalah perangkat lunak sumber terbuka yang menghasilkan dokumentasi otomatis dari sumber C++ yang dianotasi. Doxygen menggunakan formalisme grafik UML (http://www.uml-diagrams.org/class-reference.html) dan mampu secara visual menampilkan hubungan antara berbagai kelas, diagram pewarisan, dan diagram kolaborasi, yang semuanya dihasilkan secara otomatis sebagai dokumen HTML yang mudah dibaca.

Ada dua opsi untuk mengakses Doxygen. Yang pertama adalah menghasilkan dokumen dengan kompilasi langsung di mesin lokal (file utama ditempatkan di $WM_PROJECT_DIR/doc/Doxygen). Opsi kedua adalah mengakses Doxygen di web di alamat http://www.openfoam.org/docs/cpp/. Opsi terbaru ini memberikan dokumentasi yang selalu terkini.

Untuk memulai, buka browser di alamat http://www.openfoam.org/docs/cpp/ atau buka file $WM_PROJECT_DIR/doc/Doxygen/html/index.html. Setelah dibuka, klik tombol “Classes” yang muncul di menu bagian atas layar. Kemudian klik tombol “Class Index”. Setelah diklik, daftar berurutan secara alfabetis dari semua kelas yang didefinisikan dalam OpenFOAM® ditampilkan. Diagram pewarisan dari setiap kelas bersama dengan fungsi anggota publiknya dan kelas turunannya dapat diperoleh dengan hanya mengklik nama kelas yang muncul dalam daftar.

Doxygen digunakan untuk dengan cepat menelusuri semua file sumber serta memeriksa semua properti kelas dan namespace. Pada dasarnya, informasi yang paling umum untuk dicari adalah pewarisan kelas dan fungsi anggota publik serta konstruktor kelas publik.

(a) Menggunakan dokumentasi Doxygen, temukan definisi kelas dari jenis data berikut:
– Foam::face
– Foam::cell
– Foam::fvMesh
– Foam::fvMatrix

(b) Temukan kelas induk untuk masing-masing kelas dari (a).

(c) Temukan konstruktor publik untuk masing-masing kelas yang didefinisikan dalam (a).

(d) Temukan semua fungsi anggota publik yang didefinisikan dalam masing-masing kelas dari (a).

(e) Temukan semua fungsi anggota publik yang didefinisikan dalam kelas induk dari masing-masing kelas dari (a).

Latihan 2
Jalankan testDiffusion (yang tersedia sebagai kasus uji dengan uFVM) selama satu iterasi, kemudian

(a) Gunakan ‘cfdGetCoefficients’ untuk mendapatkan struktur data matriks global dan bandingkan dengan yang ditunjukkan dalam Gambar 5.18.

(b) Gunakan cfdGetMesh untuk mendapatkan referensi ke objek Mesh dan temukan definisi dari sebuah face, sebuah cell, dan sebuah vertex.

References

1. Blazek J (2005) Computational fluid dynamics: principles and applications. Elsevier,
Amsterdam
2. Ferziger JH, Peric M (2002) Computational methods for fluid dynamics, 3rd edn. Springer,
Berlin
3. Versteeg HK, Malalasekera W (2007) An introduction to computational fluid dynamics: the
finite volume method. Prentice Hall, New Jersey
4. Courant R, Friedrichs KO, Lewy H (1928) Über die partiellen Differenzengleichungen der
Mathematischen Physik. Math Ann 100:32–74 (English translation, with commentaries by
Lax, P.B., Widlund, O.B., Parter, S.V., in IBM J. Res. Develop. 11 (1967))
5. Crank J, Nicolson P (1947) A practical method for numerical integration of solution of partial
differential equations of heat-conduction type. Proc Cambridge Philos Soc 43:50–67
6. Clough RW (1960) The finite element method in plane stress analysis. Proceedings of second
ASCE conference on electronic computation, Pittsburg, Pennsylvania, 8:345–378
7. Launder BE, Spalding DB (1972) Mathematical models of turbulence. Academic Press,
Massachusetts
8. Patankar SV (1967) Heat and mass transfer in turbulent boundary layers, Ph.D. Thesis,
Imperial College, London University, UK
9. Gosman AD, Pun WM, Runchal AK, Spalding DB, Wolfshtein M (1969) Heat and mass
transfer in recirculating flows. Academic Press, London
10. Runchal AK (1969) Transport processes in steady two-dimensional separated flows. Ph.D.
Thesis, Imperial College of Science and Technology, London, UK
134 5 The Finite Volume Method

11. Runchal AK, Wolfshtein M (1969) Numerical integration procedure for the steady-state
Navier-Stokes equations. Mech Eng Sci II 5:445–453
12. Rhie CM, Chow WL (1983) A numerical study of the turbulent flow past an isolated airfoil
with trailing edge separation. AIAA J 21:1525–1532
13. Lilek Z, Peric M (1995) A fourth-order finite volume method with collocated variable
arrangement. Comput Fluids 24(3):239–252
14. Leonard BP (1988) Universal limiter for transient interpolation modeling of the advective
transport equations: the ultimate conservative difference scheme. NASA Technical
Memorandum 100916, ICOMP-88-11
15. Baliga BR, Patankar SVA (1983) Control volume finite-element method for two-dimensional
fluid flow and heat transfer. Numer Heat Transf 6:245–261
16. Vaughan RV (2009) Basic control volume finite element methods for fluids and solids. IISc
research monographs series, IISc Press
17. OpenFOAM (2015) Version 2.3.x. http://www.openfoam.org
18. OpenFOAM Doxygen (2015) Version 2.3.x. http://www.openfoam.org/docs/cpp/