pybFoam 0.1.4__tar.gz → 0.1.6__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (270) hide show
  1. pybfoam-0.1.6/.github/workflows/pages.yaml +40 -0
  2. {pybfoam-0.1.4 → pybfoam-0.1.6}/.gitignore +1 -0
  3. pybfoam-0.1.6/CHANGELOG.md +36 -0
  4. {pybfoam-0.1.4 → pybfoam-0.1.6}/CMakeLists.txt +1 -1
  5. pybfoam-0.1.6/PKG-INFO +228 -0
  6. pybfoam-0.1.6/README.md +181 -0
  7. {pybfoam-0.1.4 → pybfoam-0.1.6}/cmake/FindOpenFOAM.cmake +23 -0
  8. pybfoam-0.1.6/docs/Makefile +20 -0
  9. pybfoam-0.1.6/docs/README.md +4 -0
  10. pybfoam-0.1.6/docs/api.rst +6 -0
  11. pybfoam-0.1.6/docs/changelog.rst +6 -0
  12. pybfoam-0.1.6/docs/conf.py +57 -0
  13. pybfoam-0.1.6/docs/contributing.rst +9 -0
  14. pybfoam-0.1.6/docs/index.rst +24 -0
  15. pybfoam-0.1.6/docs/installation.rst +13 -0
  16. pybfoam-0.1.6/docs/introduction.rst +26 -0
  17. pybfoam-0.1.6/docs/make.bat +35 -0
  18. pybfoam-0.1.6/docs/usage.rst +9 -0
  19. {pybfoam-0.1.4 → pybfoam-0.1.6}/pyproject.toml +8 -6
  20. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/CMakeLists.txt +1 -0
  21. pybfoam-0.1.6/src/pybFoam/_version.py +1 -0
  22. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/bind_control.cpp +5 -1
  23. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/bind_fields.cpp +1 -0
  24. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/bind_geo_fields.cpp +15 -0
  25. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/bind_mesh.cpp +2 -10
  26. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/bind_primitives.cpp +3 -0
  27. pybfoam-0.1.6/src/pybFoam/sampling/CMakeLists.txt +50 -0
  28. pybfoam-0.1.6/src/pybFoam/sampling/__init__.py +74 -0
  29. pybfoam-0.1.6/src/pybFoam/sampling/bind_sampling.cpp +418 -0
  30. pybfoam-0.1.6/src/pybFoam/sampling/bind_sampling.hpp +52 -0
  31. pybfoam-0.1.6/src/pybFoam/sampling/sampling.cpp +35 -0
  32. pybfoam-0.1.6/src/pybFoam/sampling/set_configs.py +289 -0
  33. pybfoam-0.1.6/src/pybFoam/sampling/surface_configs.py +194 -0
  34. pybfoam-0.1.6/src/pybFoam/sampling/utils.py +63 -0
  35. pybfoam-0.1.6/src/pybFoam/sampling.pyi +258 -0
  36. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/test_primitives.py +9 -0
  37. pybfoam-0.1.6/tests/pybind/test_set_sampling.py +585 -0
  38. pybfoam-0.1.6/tests/pybind/test_surface_sampling.py +675 -0
  39. pybfoam-0.1.6/tests/test_sampling_models.py +73 -0
  40. pybfoam-0.1.6/tests/test_sampling_set_configs.py +239 -0
  41. pybfoam-0.1.4/CHANGELOG.md +0 -0
  42. pybfoam-0.1.4/PKG-INFO +0 -75
  43. pybfoam-0.1.4/README.md +0 -30
  44. pybfoam-0.1.4/docs/404.md +0 -6
  45. pybfoam-0.1.4/docs/LICENSE +0 -13
  46. pybfoam-0.1.4/docs/LICENSE-BSD-NAVGOCO.txt +0 -27
  47. pybfoam-0.1.4/docs/_config.yml +0 -117
  48. pybfoam-0.1.4/docs/_data/alerts.yml +0 -18
  49. pybfoam-0.1.4/docs/_data/definitions.yml +0 -12
  50. pybfoam-0.1.4/docs/_data/glossary.yml +0 -13
  51. pybfoam-0.1.4/docs/_data/samplelist.yml +0 -109
  52. pybfoam-0.1.4/docs/_data/sidebars/doc_sidebar.yml +0 -80
  53. pybfoam-0.1.4/docs/_data/sidebars/home_sidebar.yml +0 -24
  54. pybfoam-0.1.4/docs/_data/strings.yml +0 -8
  55. pybfoam-0.1.4/docs/_data/terms.yml +0 -3
  56. pybfoam-0.1.4/docs/_data/topnav.yml +0 -34
  57. pybfoam-0.1.4/docs/_includes/archive.html +0 -15
  58. pybfoam-0.1.4/docs/_includes/callout.html +0 -4
  59. pybfoam-0.1.4/docs/_includes/commento.html +0 -8
  60. pybfoam-0.1.4/docs/_includes/custom/getting_started_series.html +0 -21
  61. pybfoam-0.1.4/docs/_includes/custom/getting_started_series_next.html +0 -13
  62. pybfoam-0.1.4/docs/_includes/custom/series_acme.html +0 -21
  63. pybfoam-0.1.4/docs/_includes/custom/series_acme_next.html +0 -32
  64. pybfoam-0.1.4/docs/_includes/custom/usermap.html +0 -16
  65. pybfoam-0.1.4/docs/_includes/custom/usermapcomplex.html +0 -93
  66. pybfoam-0.1.4/docs/_includes/feedback.html +0 -15
  67. pybfoam-0.1.4/docs/_includes/footer.html +0 -11
  68. pybfoam-0.1.4/docs/_includes/google_analytics.html +0 -8
  69. pybfoam-0.1.4/docs/_includes/head.html +0 -43
  70. pybfoam-0.1.4/docs/_includes/head_print.html +0 -30
  71. pybfoam-0.1.4/docs/_includes/image.html +0 -3
  72. pybfoam-0.1.4/docs/_includes/important.html +0 -3
  73. pybfoam-0.1.4/docs/_includes/initialize_shuffle.html +0 -130
  74. pybfoam-0.1.4/docs/_includes/inline_image.html +0 -3
  75. pybfoam-0.1.4/docs/_includes/links.html +0 -45
  76. pybfoam-0.1.4/docs/_includes/note.html +0 -3
  77. pybfoam-0.1.4/docs/_includes/sidebar.html +0 -60
  78. pybfoam-0.1.4/docs/_includes/taglogic.html +0 -33
  79. pybfoam-0.1.4/docs/_includes/tip.html +0 -3
  80. pybfoam-0.1.4/docs/_includes/toc.html +0 -23
  81. pybfoam-0.1.4/docs/_includes/topnav.html +0 -83
  82. pybfoam-0.1.4/docs/_includes/video.html +0 -8
  83. pybfoam-0.1.4/docs/_includes/warning.html +0 -3
  84. pybfoam-0.1.4/docs/_layouts/default.html +0 -108
  85. pybfoam-0.1.4/docs/_layouts/default_print.html +0 -26
  86. pybfoam-0.1.4/docs/_layouts/none.html +0 -5
  87. pybfoam-0.1.4/docs/_layouts/page.html +0 -70
  88. pybfoam-0.1.4/docs/_layouts/page_print.html +0 -17
  89. pybfoam-0.1.4/docs/_layouts/post.html +0 -41
  90. pybfoam-0.1.4/docs/createtag +0 -54
  91. pybfoam-0.1.4/docs/css/bootstrap.min.css +0 -7529
  92. pybfoam-0.1.4/docs/css/boxshadowproperties.css +0 -24
  93. pybfoam-0.1.4/docs/css/customstyles.css +0 -1203
  94. pybfoam-0.1.4/docs/css/font-awesome.min.css +0 -4
  95. pybfoam-0.1.4/docs/css/fonts/FontAwesome.otf +0 -0
  96. pybfoam-0.1.4/docs/css/fonts/fontawesome-webfont.eot +0 -0
  97. pybfoam-0.1.4/docs/css/fonts/fontawesome-webfont.svg +0 -2671
  98. pybfoam-0.1.4/docs/css/fonts/fontawesome-webfont.ttf +0 -0
  99. pybfoam-0.1.4/docs/css/fonts/fontawesome-webfont.woff +0 -0
  100. pybfoam-0.1.4/docs/css/fonts/fontawesome-webfont.woff2 +0 -0
  101. pybfoam-0.1.4/docs/css/modern-business.css +0 -89
  102. pybfoam-0.1.4/docs/css/printstyles.css +0 -159
  103. pybfoam-0.1.4/docs/css/syntax.css +0 -60
  104. pybfoam-0.1.4/docs/css/theme-blue.css +0 -121
  105. pybfoam-0.1.4/docs/css/theme-green.css +0 -110
  106. pybfoam-0.1.4/docs/feed.xml +0 -32
  107. pybfoam-0.1.4/docs/fonts/FontAwesome.otf +0 -0
  108. pybfoam-0.1.4/docs/fonts/fontawesome-webfont.eot +0 -0
  109. pybfoam-0.1.4/docs/fonts/fontawesome-webfont.svg +0 -520
  110. pybfoam-0.1.4/docs/fonts/fontawesome-webfont.ttf +0 -0
  111. pybfoam-0.1.4/docs/fonts/fontawesome-webfont.woff +0 -0
  112. pybfoam-0.1.4/docs/fonts/glyphicons-halflings-regular.eot +0 -0
  113. pybfoam-0.1.4/docs/fonts/glyphicons-halflings-regular.svg +0 -288
  114. pybfoam-0.1.4/docs/fonts/glyphicons-halflings-regular.ttf +0 -0
  115. pybfoam-0.1.4/docs/fonts/glyphicons-halflings-regular.woff +0 -0
  116. pybfoam-0.1.4/docs/fonts/glyphicons-halflings-regular.woff2 +0 -0
  117. pybfoam-0.1.4/docs/images/OFCaseStructure.png +0 -0
  118. pybfoam-0.1.4/docs/images/dlr_logo.png +0 -0
  119. pybfoam-0.1.4/docs/index.md +0 -33
  120. pybfoam-0.1.4/docs/js/customscripts.js +0 -54
  121. pybfoam-0.1.4/docs/js/jekyll-search.js +0 -1
  122. pybfoam-0.1.4/docs/js/jquery.ba-throttle-debounce.min.js +0 -9
  123. pybfoam-0.1.4/docs/js/jquery.navgoco.min.js +0 -8
  124. pybfoam-0.1.4/docs/js/jquery.shuffle.min.js +0 -1588
  125. pybfoam-0.1.4/docs/js/toc.js +0 -82
  126. pybfoam-0.1.4/docs/pages/doc/doc_OpenFOAM.md +0 -106
  127. pybfoam-0.1.4/docs/pages/doc/doc_externalComm.md +0 -113
  128. pybfoam-0.1.4/docs/pages/doc/doc_input.md +0 -103
  129. pybfoam-0.1.4/docs/pages/doc/doc_installation.md +0 -24
  130. pybfoam-0.1.4/docs/pages/doc/doc_introduction.md +0 -24
  131. pybfoam-0.1.4/docs/pages/doc/doc_output.md +0 -58
  132. pybfoam-0.1.4/docs/pages/doc/doc_python_wrapper.md +0 -9
  133. pybfoam-0.1.4/docs/pages/doc/doc_release_notes_01.md +0 -13
  134. pybfoam-0.1.4/docs/pdf/mydoc.pdf +6 -16256
  135. pybfoam-0.1.4/docs/pdf-doc.sh +0 -14
  136. pybfoam-0.1.4/docs/pdfconfigs/config_doc_pdf.yml +0 -20
  137. pybfoam-0.1.4/docs/pdfconfigs/prince-list.txt +0 -82
  138. pybfoam-0.1.4/docs/pdfconfigs/titlepage.html +0 -22
  139. pybfoam-0.1.4/docs/pdfconfigs/tocpage.html +0 -44
  140. pybfoam-0.1.4/docs/search.json +0 -33
  141. pybfoam-0.1.4/docs/sitemap.xml +0 -24
  142. pybfoam-0.1.4/docs/tooltips.html +0 -79
  143. pybfoam-0.1.4/docs/tooltips.json +0 -19
  144. pybfoam-0.1.4/docs/update.sh +0 -4
  145. pybfoam-0.1.4/docs/var/build.sh +0 -10
  146. pybfoam-0.1.4/src/pybFoam/_version.py +0 -1
  147. {pybfoam-0.1.4 → pybfoam-0.1.6}/.github/workflows/ci.yaml +0 -0
  148. {pybfoam-0.1.4 → pybfoam-0.1.6}/.github/workflows/release.yaml +0 -0
  149. {pybfoam-0.1.4 → pybfoam-0.1.6}/CMakePresets.json +0 -0
  150. {pybfoam-0.1.4 → pybfoam-0.1.6}/LICENSE +0 -0
  151. {pybfoam-0.1.4 → pybfoam-0.1.6}/cmake/Dependencies.cmake +0 -0
  152. {pybfoam-0.1.4 → pybfoam-0.1.6}/conftest.py +0 -0
  153. {pybfoam-0.1.4 → pybfoam-0.1.6}/scripts/generate_stubs.py +0 -0
  154. {pybfoam-0.1.4 → pybfoam-0.1.6}/scripts/pyInstall.sh +0 -0
  155. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/__init__.py +0 -0
  156. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/aggregation/CMakeLists.txt +0 -0
  157. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/aggregation/aggregation.cpp +0 -0
  158. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/aggregation/bind_aggregation.cpp +0 -0
  159. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/aggregation/bind_aggregation.hpp +0 -0
  160. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/fvc/CMakeLists.txt +0 -0
  161. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/fvc/bind_fvc.cpp +0 -0
  162. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/fvc/bind_fvc.hpp +0 -0
  163. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/fvc/fvc.cpp +0 -0
  164. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/fvc.pyi +0 -0
  165. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/fvm/CMakeLists.txt +0 -0
  166. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/fvm/bind_fvm.cpp +0 -0
  167. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/fvm/bind_fvm.hpp +0 -0
  168. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/fvm/fvm.cpp +0 -0
  169. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/io/__init__.py +0 -0
  170. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/io/model_base.py +0 -0
  171. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/io/system.py +0 -0
  172. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/py.typed +0 -0
  173. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/CMakeLists.txt +0 -0
  174. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/bind_cfdTools.cpp +0 -0
  175. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/bind_cfdTools.hpp +0 -0
  176. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/bind_control.hpp +0 -0
  177. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/bind_dict.cpp +0 -0
  178. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/bind_dict.hpp +0 -0
  179. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/bind_dimensioned.cpp +0 -0
  180. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/bind_dimensioned.hpp +0 -0
  181. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/bind_fields.hpp +0 -0
  182. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/bind_fvMatrix.cpp +0 -0
  183. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/bind_fvMatrix.hpp +0 -0
  184. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/bind_geo_fields.hpp +0 -0
  185. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/bind_io.cpp +0 -0
  186. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/bind_io.hpp +0 -0
  187. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/bind_mesh.hpp +0 -0
  188. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/bind_primitives.hpp +0 -0
  189. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core/pybFoam.cpp +0 -0
  190. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/pybFoam_core.pyi +0 -0
  191. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/runTimeTables/CMakeLists.txt +0 -0
  192. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/runTimeTables/foam_runTimeTables.C +0 -0
  193. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/runTimeTables/foam_runTimeTables.H +0 -0
  194. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/runTimeTables/runTimeTables.C +0 -0
  195. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/runTimeTables.pyi +0 -0
  196. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/thermo/CMakeLists.txt +0 -0
  197. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/thermo/bind_thermo.cpp +0 -0
  198. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/thermo/bind_thermo.hpp +0 -0
  199. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/thermo/thermo.cpp +0 -0
  200. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/thermo.pyi +0 -0
  201. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/turbulence/CMakeLists.txt +0 -0
  202. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/turbulence/bind_turbulence.cpp +0 -0
  203. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/turbulence/bind_turbulence.hpp +0 -0
  204. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/turbulence/turbulence.cpp +0 -0
  205. {pybfoam-0.1.4 → pybfoam-0.1.6}/src/pybFoam/turbulence.pyi +0 -0
  206. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/cavity/0.orig/U +0 -0
  207. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/cavity/0.orig/nu +0 -0
  208. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/cavity/0.orig/p +0 -0
  209. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/cavity/Allclean +0 -0
  210. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/cavity/Allrun +0 -0
  211. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/cavity/constant/transportProperties +0 -0
  212. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/cavity/icoFoam.py +0 -0
  213. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/cavity/log2 +0 -0
  214. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/cavity/system/PDRblockMeshDict +0 -0
  215. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/cavity/system/blockMeshDict +0 -0
  216. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/cavity/system/controlDict +0 -0
  217. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/cavity/system/decomposeParDict +0 -0
  218. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/cavity/system/fvSchemes +0 -0
  219. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/cavity/system/fvSolution +0 -0
  220. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/elbow/0.orig/U +0 -0
  221. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/elbow/0.orig/nu +0 -0
  222. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/elbow/0.orig/p +0 -0
  223. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/elbow/Allclean +0 -0
  224. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/elbow/Allrun +0 -0
  225. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/elbow/constant/transportProperties +0 -0
  226. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/elbow/icoFoam.py +0 -0
  227. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/elbow/system/controlDict +0 -0
  228. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/elbow/system/foamDataToFluentDict +0 -0
  229. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/elbow/system/fvSchemes +0 -0
  230. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/elbow/system/fvSolution +0 -0
  231. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/io/TestDict +0 -0
  232. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/io/TestDict.json +0 -0
  233. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/io/TestDict.yaml +0 -0
  234. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/io/controlDict +0 -0
  235. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/io/fvSchemes +0 -0
  236. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/io/fvSolution +0 -0
  237. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/io/test_controlDict.py +0 -0
  238. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/io/test_fvSchemes.py +0 -0
  239. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/io/test_fvSolution.py +0 -0
  240. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/io/test_parse_ofdict.py +0 -0
  241. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/0/U +0 -0
  242. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/0/alpha.water +0 -0
  243. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/0/p_rgh +0 -0
  244. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/0.orig/U +0 -0
  245. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/0.orig/alpha.water +0 -0
  246. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/0.orig/p_rgh +0 -0
  247. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/Allclean +0 -0
  248. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/Allrun +0 -0
  249. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/Allrun-parallel +0 -0
  250. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/constant/dynamicMeshDict +0 -0
  251. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/constant/g +0 -0
  252. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/constant/polyMesh/boundary +0 -0
  253. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/constant/polyMesh/faces +0 -0
  254. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/constant/polyMesh/neighbour +0 -0
  255. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/constant/polyMesh/owner +0 -0
  256. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/constant/polyMesh/points +0 -0
  257. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/constant/transportProperties +0 -0
  258. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/constant/turbulenceProperties +0 -0
  259. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/system/TestDict +0 -0
  260. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/system/blockMeshDict +0 -0
  261. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/system/controlDict +0 -0
  262. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/system/decomposeParDict +0 -0
  263. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/system/fvSchemes +0 -0
  264. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/system/fvSolution +0 -0
  265. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/system/setFieldsDict +0 -0
  266. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/test_aggregation.py +0 -0
  267. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/test_dict.py +0 -0
  268. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/test_fvc.py +0 -0
  269. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/test_fvm.py +0 -0
  270. {pybfoam-0.1.4 → pybfoam-0.1.6}/tests/pybind/test_geoFields.py +0 -0
@@ -0,0 +1,40 @@
1
+ name: Deploy Docs to GitHub Pages
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+
8
+ jobs:
9
+ build-and-deploy:
10
+ runs-on: ubuntu-latest
11
+ steps:
12
+ - uses: actions/checkout@v5
13
+
14
+ - name: Set up OpenFOAM
15
+ uses: gerlero/setup-openfoam@v1
16
+ with:
17
+ openfoam-version: 2412
18
+ - name: Install uv
19
+ uses: astral-sh/setup-uv@v6
20
+ - name: Set up Python
21
+ uses: actions/setup-python@v5
22
+ with:
23
+ python-version: '3.11'
24
+
25
+ - name: Install dependencies
26
+ run: |
27
+ uv sync --extra all
28
+
29
+ - name: Build docs
30
+ run: |
31
+ cd docs
32
+ uv run make html
33
+
34
+ - name: Deploy to GitHub Pages
35
+ uses: peaceiris/actions-gh-pages@v4
36
+ with:
37
+ github_token: ${{ secrets.GITHUB_TOKEN }}
38
+ publish_dir: docs/_build/html
39
+ publish_branch: gh-pages
40
+ force_orphan: true
@@ -136,3 +136,4 @@ __pycache__
136
136
  dist/
137
137
  build/
138
138
  _skbuild/
139
+ docs/_build
@@ -0,0 +1,36 @@
1
+ # Changelog
2
+
3
+
4
+ ## [0.1.6]
5
+
6
+ ### Added
7
+ - Initial implementation of sampling module with pybind11 bindings
8
+ - Support for sampledSurface types (plane, patch, cutting plane, iso-surface)
9
+ - Interpolation schemes (cell, cellPoint, cellPointFace)
10
+ - Line sampling functionality (uniform, cloud, polyLine, circle)
11
+ - Integration tests for surface and set sampling
12
+
13
+ ### Changed
14
+ - Updated build system to use scikit-build-core
15
+ - Improved CMake configuration for OpenFOAM library detection
16
+
17
+ ---
18
+
19
+ ## [-0.1.5]
20
+
21
+ ### Added
22
+ - Python bindings for OpenFOAM core functionality
23
+ - Field access and manipulation (volScalarField, volVectorField, volTensorField)
24
+ - Finite volume operators (fvc, fvm)
25
+ - Mesh access (fvMesh, polyMesh)
26
+ - Time management
27
+ - Dictionary I/O
28
+ - Basic turbulence model support
29
+ - NumPy buffer protocol integration for zero-copy field access
30
+
31
+ ### Known Issues
32
+ - Memory leaks in `selectTimes` function (requires RAII fix)
33
+ - Incorrect return value policies in some bindings
34
+ - Missing negative index checks in field accessors
35
+
36
+ ---
@@ -5,7 +5,7 @@ if(POLICY CMP0169)
5
5
  cmake_policy(SET CMP0169 OLD)
6
6
  endif()
7
7
 
8
- project(pybFoam VERSION 0.1.4 LANGUAGES CXX)
8
+ project(pybFoam VERSION 0.1.6 LANGUAGES CXX)
9
9
 
10
10
  # Set C++ standard
11
11
  set(CMAKE_CXX_STANDARD 17)
pybfoam-0.1.6/PKG-INFO ADDED
@@ -0,0 +1,228 @@
1
+ Metadata-Version: 2.4
2
+ Name: pybFoam
3
+ Version: 0.1.6
4
+ Summary: python bindings for OpenFOAM
5
+ Keywords: OpenFOAM,simulation,CFD
6
+ Author-Email: Henning Scheufler <henning.scheufler@web.de>
7
+ License-Expression: GPL-3.0-or-later
8
+ Classifier: Development Status :: 3 - Alpha
9
+ Classifier: Intended Audience :: End Users/Desktop
10
+ Classifier: Intended Audience :: Developers
11
+ Classifier: Intended Audience :: Science/Research
12
+ Classifier: Natural Language :: English
13
+ Classifier: Programming Language :: C++
14
+ Classifier: Programming Language :: Python :: 3 :: Only
15
+ Classifier: Programming Language :: Python :: 3.8
16
+ Classifier: Programming Language :: Python :: 3.9
17
+ Classifier: Programming Language :: Python :: 3.10
18
+ Classifier: Programming Language :: Python :: 3.11
19
+ Classifier: Programming Language :: Python :: 3.12
20
+ Classifier: Topic :: Scientific/Engineering
21
+ Project-URL: Homepage, https://github.com/HenningScheufler/pybFoam
22
+ Project-URL: Repository, https://github.com/HenningScheufler/pybFoam.git
23
+ Project-URL: Issues, https://github.com/HenningScheufler/pybFoam/issues
24
+ Requires-Python: >=3.8
25
+ Requires-Dist: numpy>=1.20
26
+ Requires-Dist: pybind11>=2.6.0
27
+ Requires-Dist: pydantic
28
+ Requires-Dist: pyyaml
29
+ Provides-Extra: dev
30
+ Requires-Dist: pytest>=6.0; extra == "dev"
31
+ Requires-Dist: pytest-cov; extra == "dev"
32
+ Requires-Dist: pytest-xdist; extra == "dev"
33
+ Requires-Dist: black; extra == "dev"
34
+ Requires-Dist: flake8; extra == "dev"
35
+ Requires-Dist: isort; extra == "dev"
36
+ Requires-Dist: mypy; extra == "dev"
37
+ Requires-Dist: cmake>=3.18; extra == "dev"
38
+ Requires-Dist: pybind11-stubgen>=2.5; extra == "dev"
39
+ Provides-Extra: docs
40
+ Requires-Dist: sphinx>=4.0; extra == "docs"
41
+ Requires-Dist: sphinx-sitemap; extra == "docs"
42
+ Requires-Dist: furo; extra == "docs"
43
+ Requires-Dist: sphinxcontrib-mermaid; extra == "docs"
44
+ Provides-Extra: all
45
+ Requires-Dist: pybFoam[dev,docs]; extra == "all"
46
+ Description-Content-Type: text/markdown
47
+
48
+ # pybFoam
49
+
50
+ Python bindings for OpenFOAM - enabling direct manipulation of OpenFOAM cases, fields, and meshes from Python.
51
+
52
+ Currently in the pre-alpha release state.
53
+
54
+ ---
55
+
56
+ ## Features
57
+
58
+ - **Direct Python access to OpenFOAM data structures**: Time, fvMesh, fields
59
+ - **Finite volume operators**: fvc (calculus), fvm (matrix operations)
60
+ - **Turbulence and thermodynamic models**: Access to OpenFOAM turbulence and thermo libraries
61
+ - **Sampling and post-processing**: Surface sampling, line sampling, interpolation
62
+ - **Pydantic configuration models**: Type-safe dictionary construction for sampling surfaces
63
+ - **NumPy integration**: Zero-copy access to OpenFOAM field data via buffer protocol
64
+
65
+ ---
66
+
67
+ ## Requirements
68
+
69
+ - **OpenFOAM**: v2012 or higher (sourced and installed)
70
+ - **Python**: 3.8 or higher
71
+ - **CMake**: 3.18 or higher
72
+ - **C++ Compiler**: C++17 compatible (GCC 7+, Clang 5+)
73
+ - **Build tools**: pybind11, scikit-build-core
74
+ - **Python packages**: numpy, pydantic
75
+
76
+ ---
77
+
78
+ ## Installation
79
+
80
+ ### Prerequisites
81
+
82
+ 1. Source your OpenFOAM environment:
83
+ ```bash
84
+ source /path/to/OpenFOAM/etc/bashrc
85
+ ```
86
+
87
+ 2. (Recommended) Create a virtual environment:
88
+ ```bash
89
+ python -m venv .venv
90
+ source .venv/bin/activate
91
+ ```
92
+
93
+ ### Install from source
94
+
95
+ ```bash
96
+ pip install .
97
+ ```
98
+
99
+ For development:
100
+ ```bash
101
+ pip install -e . --no-build-isolation
102
+ ```
103
+
104
+ ---
105
+
106
+ ## Quick Start
107
+
108
+ ### Basic Usage
109
+
110
+ ```python
111
+ import pybFoam as pf
112
+
113
+ # Create OpenFOAM time and mesh
114
+ time = pf.createTime()
115
+ mesh = pf.fvMesh(time)
116
+
117
+ # Access fields
118
+ p = pf.volScalarField.read_field(mesh, "p")
119
+ U = pf.volVectorField.read_field(mesh, "U")
120
+
121
+ # Compute gradients using finite volume calculus
122
+ grad_p = pf.fvc.grad(p)
123
+ div_U = pf.fvc.div(U)
124
+
125
+ # Convert to NumPy arrays for analysis
126
+ import numpy as np
127
+ p_array = np.asarray(p["internalField"])
128
+ print(f"Pressure range: {p_array.min():.3f} to {p_array.max():.3f}")
129
+ ```
130
+
131
+ ### Sampling Surfaces
132
+
133
+ ```python
134
+ from pybFoam.sampling import SampledPlaneConfig, sampledSurface, interpolationScalar
135
+ from pybFoam import Word
136
+
137
+ # Create a sampling plane using Pydantic config
138
+ plane_config = SampledPlaneConfig(
139
+ point=[0.5, 0.5, 0.0],
140
+ normal=[1.0, 0.0, 0.0]
141
+ )
142
+
143
+ # Create the surface
144
+ plane = sampledSurface.New(Word("myPlane"), mesh, plane_config.to_foam_dict())
145
+ plane.update()
146
+
147
+ # Interpolate field onto surface
148
+ interp = interpolationScalar.New(Word("cellPoint"), p)
149
+ sampled_values = interp.sampleOnFaces(plane)
150
+ ```
151
+
152
+ ### Dictionary I/O with Pydantic
153
+
154
+ ```python
155
+ from pybFoam.io import IOModelBase
156
+ from pydantic import Field
157
+
158
+ class TransportProperties(IOModelBase):
159
+ nu: float = Field(..., description="Kinematic viscosity")
160
+
161
+ class Config:
162
+ foam_file_name = "transportProperties"
163
+
164
+ # Read from OpenFOAM dictionary
165
+ props = TransportProperties.from_file("constant/transportProperties")
166
+ print(f"Viscosity: {props.nu}")
167
+
168
+ # Modify and write back
169
+ props.nu = 1e-5
170
+ props.to_file("constant/transportProperties")
171
+ ```
172
+
173
+ ---
174
+
175
+ ## Examples
176
+
177
+ See the `tests/` directory for more examples:
178
+ - **Basic field operations**: `tests/pybind/test_primitives.py`
179
+ - **Finite volume operators**: `tests/pybind/test_fvc.py`, `tests/pybind/test_fvm.py`
180
+ - **Surface sampling**: `tests/pybind/test_surface_sampling.py`
181
+ - **Line sampling**: `tests/pybind/test_set_sampling.py`
182
+ - **Solver example**: `tests/cavity/icoFoam.py`
183
+
184
+ ---
185
+
186
+ ## Testing
187
+
188
+ Run the test suite:
189
+
190
+ ```bash
191
+ pytest tests/
192
+ ```
193
+
194
+ Run specific test categories:
195
+ ```bash
196
+ pytest tests/pybind/ # C++ binding tests
197
+ pytest tests/test_sampling_models.py # Pydantic config tests
198
+ ```
199
+
200
+ ---
201
+
202
+ ## Documentation
203
+
204
+ Full documentation is available at: [https://henningscheufler.github.io/pybFoam/](https://henningscheufler.github.io/pybFoam/index.html)
205
+
206
+ ---
207
+
208
+ ### Development Setup
209
+
210
+ 1. Clone the repository
211
+ 2. Install development dependencies:
212
+ ```bash
213
+ pip install -e ".[dev]"
214
+ ```
215
+ 3. Run tests before committing:
216
+ ```bash
217
+ pytest tests/
218
+ ```
219
+
220
+ ---
221
+
222
+ ## License
223
+
224
+ See [LICENSE](LICENSE) file for details.
225
+
226
+ ---
227
+
228
+
@@ -0,0 +1,181 @@
1
+ # pybFoam
2
+
3
+ Python bindings for OpenFOAM - enabling direct manipulation of OpenFOAM cases, fields, and meshes from Python.
4
+
5
+ Currently in the pre-alpha release state.
6
+
7
+ ---
8
+
9
+ ## Features
10
+
11
+ - **Direct Python access to OpenFOAM data structures**: Time, fvMesh, fields
12
+ - **Finite volume operators**: fvc (calculus), fvm (matrix operations)
13
+ - **Turbulence and thermodynamic models**: Access to OpenFOAM turbulence and thermo libraries
14
+ - **Sampling and post-processing**: Surface sampling, line sampling, interpolation
15
+ - **Pydantic configuration models**: Type-safe dictionary construction for sampling surfaces
16
+ - **NumPy integration**: Zero-copy access to OpenFOAM field data via buffer protocol
17
+
18
+ ---
19
+
20
+ ## Requirements
21
+
22
+ - **OpenFOAM**: v2012 or higher (sourced and installed)
23
+ - **Python**: 3.8 or higher
24
+ - **CMake**: 3.18 or higher
25
+ - **C++ Compiler**: C++17 compatible (GCC 7+, Clang 5+)
26
+ - **Build tools**: pybind11, scikit-build-core
27
+ - **Python packages**: numpy, pydantic
28
+
29
+ ---
30
+
31
+ ## Installation
32
+
33
+ ### Prerequisites
34
+
35
+ 1. Source your OpenFOAM environment:
36
+ ```bash
37
+ source /path/to/OpenFOAM/etc/bashrc
38
+ ```
39
+
40
+ 2. (Recommended) Create a virtual environment:
41
+ ```bash
42
+ python -m venv .venv
43
+ source .venv/bin/activate
44
+ ```
45
+
46
+ ### Install from source
47
+
48
+ ```bash
49
+ pip install .
50
+ ```
51
+
52
+ For development:
53
+ ```bash
54
+ pip install -e . --no-build-isolation
55
+ ```
56
+
57
+ ---
58
+
59
+ ## Quick Start
60
+
61
+ ### Basic Usage
62
+
63
+ ```python
64
+ import pybFoam as pf
65
+
66
+ # Create OpenFOAM time and mesh
67
+ time = pf.createTime()
68
+ mesh = pf.fvMesh(time)
69
+
70
+ # Access fields
71
+ p = pf.volScalarField.read_field(mesh, "p")
72
+ U = pf.volVectorField.read_field(mesh, "U")
73
+
74
+ # Compute gradients using finite volume calculus
75
+ grad_p = pf.fvc.grad(p)
76
+ div_U = pf.fvc.div(U)
77
+
78
+ # Convert to NumPy arrays for analysis
79
+ import numpy as np
80
+ p_array = np.asarray(p["internalField"])
81
+ print(f"Pressure range: {p_array.min():.3f} to {p_array.max():.3f}")
82
+ ```
83
+
84
+ ### Sampling Surfaces
85
+
86
+ ```python
87
+ from pybFoam.sampling import SampledPlaneConfig, sampledSurface, interpolationScalar
88
+ from pybFoam import Word
89
+
90
+ # Create a sampling plane using Pydantic config
91
+ plane_config = SampledPlaneConfig(
92
+ point=[0.5, 0.5, 0.0],
93
+ normal=[1.0, 0.0, 0.0]
94
+ )
95
+
96
+ # Create the surface
97
+ plane = sampledSurface.New(Word("myPlane"), mesh, plane_config.to_foam_dict())
98
+ plane.update()
99
+
100
+ # Interpolate field onto surface
101
+ interp = interpolationScalar.New(Word("cellPoint"), p)
102
+ sampled_values = interp.sampleOnFaces(plane)
103
+ ```
104
+
105
+ ### Dictionary I/O with Pydantic
106
+
107
+ ```python
108
+ from pybFoam.io import IOModelBase
109
+ from pydantic import Field
110
+
111
+ class TransportProperties(IOModelBase):
112
+ nu: float = Field(..., description="Kinematic viscosity")
113
+
114
+ class Config:
115
+ foam_file_name = "transportProperties"
116
+
117
+ # Read from OpenFOAM dictionary
118
+ props = TransportProperties.from_file("constant/transportProperties")
119
+ print(f"Viscosity: {props.nu}")
120
+
121
+ # Modify and write back
122
+ props.nu = 1e-5
123
+ props.to_file("constant/transportProperties")
124
+ ```
125
+
126
+ ---
127
+
128
+ ## Examples
129
+
130
+ See the `tests/` directory for more examples:
131
+ - **Basic field operations**: `tests/pybind/test_primitives.py`
132
+ - **Finite volume operators**: `tests/pybind/test_fvc.py`, `tests/pybind/test_fvm.py`
133
+ - **Surface sampling**: `tests/pybind/test_surface_sampling.py`
134
+ - **Line sampling**: `tests/pybind/test_set_sampling.py`
135
+ - **Solver example**: `tests/cavity/icoFoam.py`
136
+
137
+ ---
138
+
139
+ ## Testing
140
+
141
+ Run the test suite:
142
+
143
+ ```bash
144
+ pytest tests/
145
+ ```
146
+
147
+ Run specific test categories:
148
+ ```bash
149
+ pytest tests/pybind/ # C++ binding tests
150
+ pytest tests/test_sampling_models.py # Pydantic config tests
151
+ ```
152
+
153
+ ---
154
+
155
+ ## Documentation
156
+
157
+ Full documentation is available at: [https://henningscheufler.github.io/pybFoam/](https://henningscheufler.github.io/pybFoam/index.html)
158
+
159
+ ---
160
+
161
+ ### Development Setup
162
+
163
+ 1. Clone the repository
164
+ 2. Install development dependencies:
165
+ ```bash
166
+ pip install -e ".[dev]"
167
+ ```
168
+ 3. Run tests before committing:
169
+ ```bash
170
+ pytest tests/
171
+ ```
172
+
173
+ ---
174
+
175
+ ## License
176
+
177
+ See [LICENSE](LICENSE) file for details.
178
+
179
+ ---
180
+
181
+
@@ -228,6 +228,26 @@ if(NOT TARGET OpenFOAM::lagrangian)
228
228
  target_link_directories(OpenFOAM::lagrangian INTERFACE "${FOAM_LIBBIN}")
229
229
  endif()
230
230
 
231
+ # ============================================================================
232
+ # Create OpenFOAM::sampling target
233
+ # ============================================================================
234
+ if(NOT TARGET OpenFOAM::sampling)
235
+ add_library(OpenFOAM::sampling INTERFACE IMPORTED)
236
+
237
+ target_include_directories(OpenFOAM::sampling INTERFACE
238
+ "${FOAM_SRC}/sampling/lnInclude"
239
+ "${FOAM_SRC}/sampling/sampledSurface/sampledSurface"
240
+ )
241
+
242
+ target_link_libraries(OpenFOAM::sampling INTERFACE
243
+ sampling
244
+ OpenFOAM::finiteVolume
245
+ OpenFOAM::meshTools
246
+ OpenFOAM::core
247
+ )
248
+ target_link_directories(OpenFOAM::sampling INTERFACE "${FOAM_LIBBIN}")
249
+ endif()
250
+
231
251
  # ============================================================================
232
252
  # Create OpenFOAM::api target (combines all libraries)
233
253
  # ============================================================================
@@ -243,6 +263,7 @@ if(NOT TARGET OpenFOAM::api)
243
263
  OpenFOAM::transport
244
264
  OpenFOAM::fileFormats
245
265
  OpenFOAM::lagrangian
266
+ OpenFOAM::sampling
246
267
  )
247
268
  endif()
248
269
 
@@ -267,6 +288,7 @@ set(OPENFOAM_INCLUDE_DIRS
267
288
  "${FOAM_SRC}/fileFormats/lnInclude"
268
289
  "${FOAM_SRC}/surfMesh/lnInclude"
269
290
  "${FOAM_SRC}/lagrangian/basic/lnInclude"
291
+ "${FOAM_SRC}/sampling/lnInclude"
270
292
  )
271
293
 
272
294
  set(OPENFOAM_LIBRARY_DIRS "${FOAM_LIBBIN}")
@@ -286,6 +308,7 @@ set(OPENFOAM_LIBRARIES
286
308
  fileFormats
287
309
  surfMesh
288
310
  lagrangian
311
+ sampling
289
312
  )
290
313
 
291
314
  # ============================================================================
@@ -0,0 +1,20 @@
1
+ # Minimal makefile for Sphinx documentation
2
+ #
3
+
4
+ # You can set these variables from the command line, and also
5
+ # from the environment for the first two.
6
+ SPHINXOPTS ?=
7
+ SPHINXBUILD ?= sphinx-build
8
+ SOURCEDIR = .
9
+ BUILDDIR = _build
10
+
11
+ # Put it first so that "make" without argument is like "make help".
12
+ help:
13
+ @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
14
+
15
+ .PHONY: help Makefile
16
+
17
+ # Catch-all target: route all unknown targets to Sphinx using the new
18
+ # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
19
+ %: Makefile
20
+ @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
@@ -0,0 +1,4 @@
1
+ # pybFoam Documentation
2
+
3
+ This folder contains the Sphinx documentation sources for pybFoam.
4
+ Build with `sphinx-build -b html . _build/html`.
@@ -0,0 +1,6 @@
1
+ API Reference
2
+ =============
3
+
4
+ .. .. automodule:: pybFoam
5
+ .. :members:
6
+ .. :undoc-members:
@@ -0,0 +1,6 @@
1
+ .. _changelog:
2
+
3
+ Changelog
4
+ =========
5
+
6
+ See the GitHub releases page for a full changelog.
@@ -0,0 +1,57 @@
1
+ # Configuration file for the Sphinx documentation builder.
2
+ #
3
+ # For the full list of built-in configuration values, see the documentation:
4
+ # https://www.sphinx-doc.org/en/master/usage/configuration.html
5
+
6
+ # -- Project information -----------------------------------------------------
7
+ # https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information
8
+
9
+ project = "pybFoam"
10
+ copyright = "2025, Henning Scheufler"
11
+ author = "Henning Scheufler"
12
+ release = "0.1.6"
13
+
14
+ # -- General configuration ---------------------------------------------------
15
+ # https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
16
+
17
+ extensions = [
18
+ "sphinx.ext.autodoc",
19
+ "sphinxcontrib.mermaid",
20
+ "sphinx.ext.intersphinx",
21
+ "sphinx.ext.autosectionlabel",
22
+ "sphinx.ext.todo",
23
+ "sphinx.ext.coverage",
24
+ "sphinx.ext.mathjax",
25
+ "sphinx.ext.ifconfig",
26
+ "sphinx.ext.viewcode",
27
+ "sphinx_sitemap",
28
+ "sphinx.ext.inheritance_diagram",
29
+ ]
30
+
31
+ templates_path = ["_templates"]
32
+ exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"]
33
+
34
+ # -- Options for HTML output -------------------------------------------------
35
+ # https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output
36
+
37
+ html_theme = "furo"
38
+ html_theme_options = {
39
+ "canonical_url": "",
40
+ "analytics_id": "", # Provided by Google in your dashboard
41
+ "display_version": True,
42
+ "prev_next_buttons_location": "bottom",
43
+ "style_external_links": False,
44
+ "logo_only": False,
45
+ # Toc options
46
+ "collapse_navigation": True,
47
+ "sticky_navigation": True,
48
+ "navigation_depth": 4,
49
+ "includehidden": True,
50
+ "titles_only": False,
51
+ "sidebar_hide_name": False,
52
+ "navigation_with_keys": True,
53
+ }
54
+
55
+ html_static_path = ["_static"]
56
+
57
+ html_baseurl = "https://henning.github.io/pybFoam/"
@@ -0,0 +1,9 @@
1
+ Contributing
2
+ ============
3
+
4
+ Contributions are welcome! Please open issues or pull requests on GitHub.
5
+
6
+ 1. Fork the repository
7
+ 2. Create a feature branch
8
+ 3. Commit your changes
9
+ 4. Open a pull request
@@ -0,0 +1,24 @@
1
+ .. pybFoam documentation master file, created by
2
+ sphinx-quickstart on Sun Sep 7 12:02:25 2025.
3
+ You can adapt this file completely to your liking, but it should at least
4
+ contain the root `toctree` directive.
5
+
6
+ pybFoam Documentation
7
+ =====================
8
+
9
+ .. toctree::
10
+ :maxdepth: 2
11
+ :caption: Contents
12
+
13
+ installation
14
+ usage
15
+ api
16
+ contributing
17
+ changelog
18
+
19
+ Indices and tables
20
+ ==================
21
+
22
+ * :ref:`genindex`
23
+ * :ref:`modindex`
24
+ * :ref:`search`
@@ -0,0 +1,13 @@
1
+ .. _installation:
2
+
3
+
4
+ Installation
5
+ ============
6
+
7
+ Install pybFoam with pip:
8
+
9
+ .. code-block:: bash
10
+
11
+ pip install pybFoam
12
+
13
+ See the README.md for OpenFOAM requirements and build instructions.