turbigen 2.4.0__tar.gz → 2.7.3__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 (332) hide show
  1. {turbigen-2.4.0 → turbigen-2.7.3}/.gitignore +2 -0
  2. turbigen-2.7.3/.gitlab-ci.yml +100 -0
  3. {turbigen-2.4.0 → turbigen-2.7.3}/PKG-INFO +1 -16
  4. {turbigen-2.4.0 → turbigen-2.7.3}/doc/changelog.rst +33 -0
  5. {turbigen-2.4.0 → turbigen-2.7.3}/doc/data_structures.rst +9 -3
  6. {turbigen-2.4.0 → turbigen-2.7.3}/doc/generate_meanline.py +2 -2
  7. {turbigen-2.4.0 → turbigen-2.7.3}/doc/generate_solver.py +1 -1
  8. {turbigen-2.4.0 → turbigen-2.7.3}/doc/meanline.rst +5 -5
  9. {turbigen-2.4.0 → turbigen-2.7.3}/doc/tutorial.rst +5 -5
  10. turbigen-2.7.3/dspace.yaml +106 -0
  11. turbigen-2.7.3/dspace2.yaml +114 -0
  12. turbigen-2.7.3/dspace3.yaml +144 -0
  13. turbigen-2.7.3/dspace_emb.yaml +8 -0
  14. turbigen-2.7.3/dspace_ts3.yaml +9 -0
  15. {turbigen-2.4.0 → turbigen-2.7.3}/examples/axial_turbine.yaml +17 -12
  16. {turbigen-2.4.0 → turbigen-2.7.3}/examples/turbine_cascade.yaml +12 -3
  17. turbigen-2.7.3/external.yaml +62 -0
  18. turbigen-2.7.3/h2.yaml +59 -0
  19. {turbigen-2.4.0/src/embsolve → turbigen-2.7.3}/meson.build +19 -18
  20. {turbigen-2.4.0 → turbigen-2.7.3}/pyproject.toml +23 -22
  21. turbigen-2.7.3/scripts/ag_server_wrapper.sh +22 -0
  22. turbigen-2.7.3/scripts/generate_meson.sh +62 -0
  23. turbigen-2.7.3/scripts/plot_dspace.py +109 -0
  24. turbigen-2.7.3/scripts/read_ts3_probe.py +18 -0
  25. turbigen-2.7.3/scripts/run_vki.py +530 -0
  26. turbigen-2.7.3/scripts/test_dspace.py +50 -0
  27. turbigen-2.7.3/scripts/vki_blade.csv +206 -0
  28. turbigen-2.4.0/src/embsolve/embsolve.f90 → turbigen-2.7.3/src/ember/ember.f90 +24 -81
  29. {turbigen-2.4.0/src/embsolve → turbigen-2.7.3/src/ember}/fluxes.f90 +99 -46
  30. {turbigen-2.4.0/src/embsolve → turbigen-2.7.3/src/ember}/multigrid.f90 +5 -4
  31. {turbigen-2.4.0/src/embsolve → turbigen-2.7.3/src/ember}/viscous.f90 +17 -27
  32. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/__init__.py +1 -0
  33. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/abstract.py +13 -4
  34. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/annulus.py +6 -4
  35. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/autogrid/autogrid.py +35 -90
  36. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/autogrid/script_ag.py2 +6 -0
  37. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/autogrid/script_sh +3 -0
  38. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/average.py +6 -6
  39. turbigen-2.7.3/src/turbigen/base.py +228 -0
  40. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/blade.py +50 -11
  41. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/camber.py +51 -4
  42. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/config2.py +125 -42
  43. turbigen-2.7.3/src/turbigen/dspace.py +754 -0
  44. turbigen-2.7.3/src/turbigen/flowfield.py +606 -0
  45. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/geometry.py +4 -3
  46. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/grid.py +753 -150
  47. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/hmesh.py +345 -98
  48. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/iterators.py +194 -61
  49. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/job_server.py +1 -0
  50. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/main.py +52 -11
  51. turbigen-2.7.3/src/turbigen/meanline_data.py +438 -0
  52. turbigen-2.4.0/src/turbigen/meanline.py → turbigen-2.7.3/src/turbigen/meanline_design.py +13 -5
  53. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/ohmesh.py +43 -58
  54. turbigen-2.7.3/src/turbigen/perturb.py +290 -0
  55. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post.py +257 -23
  56. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/solvers/convert_ts3_to_ts4_native.py +7 -5
  57. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/solvers/ember.py +528 -148
  58. turbigen-2.7.3/src/turbigen/solvers/external.py +89 -0
  59. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/solvers/ts3.py +883 -145
  60. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/solvers/ts4.py +41 -29
  61. turbigen-2.7.3/src/turbigen/ssh.py +174 -0
  62. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/state.py +8 -8
  63. turbigen-2.7.3/src/turbigen/thickness.py +233 -0
  64. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/util.py +183 -41
  65. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/util_post.py +70 -2
  66. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/yaml.py +19 -13
  67. turbigen-2.7.3/test_receiver.py +45 -0
  68. turbigen-2.7.3/tests/bench_functions.py +187 -0
  69. turbigen-2.7.3/tests/conftest.py +21 -0
  70. {turbigen-2.4.0 → turbigen-2.7.3}/tests/not_test_rotor.py +4 -4
  71. turbigen-2.7.3/tests/not_test_state.py +185 -0
  72. {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_average.py +9 -0
  73. {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_bcond.py +29 -9
  74. turbigen-2.7.3/tests/test_camber.py +469 -0
  75. {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_cells.py +20 -3
  76. turbigen-2.7.3/tests/test_cusp.py +222 -0
  77. {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_distribute.py +13 -13
  78. {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_fluid.py +229 -39
  79. {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_nozzle.py +20 -31
  80. {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_operators.py +15 -15
  81. {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_periodic_step.py +2 -2
  82. turbigen-2.7.3/tests/test_read_probe_dat.py +485 -0
  83. {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_smooth.py +13 -13
  84. {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_tables.py +2 -0
  85. turbigen-2.7.3/tests/test_thickness.py +300 -0
  86. {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_visc.py +12 -6
  87. turbigen-2.4.0/.gitlab-ci.yml +0 -90
  88. turbigen-2.4.0/dspace.yaml +0 -86
  89. turbigen-2.4.0/meson.build +0 -71
  90. turbigen-2.4.0/scripts/plot_dspace.py +0 -44
  91. turbigen-2.4.0/scripts/test_dspace.py +0 -63
  92. turbigen-2.4.0/src/embsolve/embsolvec-f2pywrappers.f +0 -0
  93. turbigen-2.4.0/src/embsolve/embsolvec-f2pywrappers2.f90 +0 -40
  94. turbigen-2.4.0/src/embsolve/embsolvecmodule.c +0 -12562
  95. turbigen-2.4.0/src/turbigen/base.py +0 -1970
  96. turbigen-2.4.0/src/turbigen/dspace.py +0 -469
  97. turbigen-2.4.0/src/turbigen/flowfield.py +0 -130
  98. turbigen-2.4.0/src/turbigen/thickness.py +0 -526
  99. {turbigen-2.4.0 → turbigen-2.7.3}/.flake8 +0 -0
  100. {turbigen-2.4.0 → turbigen-2.7.3}/.gitlab-ci-local/.gitignore +0 -0
  101. {turbigen-2.4.0 → turbigen-2.7.3}/.pre-commit-config.yaml +0 -0
  102. {turbigen-2.4.0 → turbigen-2.7.3}/COPYING +0 -0
  103. {turbigen-2.4.0 → turbigen-2.7.3}/MANIFEST.in +0 -0
  104. {turbigen-2.4.0 → turbigen-2.7.3}/Makefile +0 -0
  105. {turbigen-2.4.0 → turbigen-2.7.3}/README.md +0 -0
  106. {turbigen-2.4.0 → turbigen-2.7.3}/bin/get_ssh_agent.sh +0 -0
  107. {turbigen-2.4.0 → turbigen-2.7.3}/bin/noquit.sh +0 -0
  108. {turbigen-2.4.0 → turbigen-2.7.3}/bin/setup.sh +0 -0
  109. {turbigen-2.4.0 → turbigen-2.7.3}/doc/Makefile +0 -0
  110. {turbigen-2.4.0 → turbigen-2.7.3}/doc/_static/siunitx.js +0 -0
  111. {turbigen-2.4.0 → turbigen-2.7.3}/doc/conf.py +0 -0
  112. {turbigen-2.4.0 → turbigen-2.7.3}/doc/examples/index.rst +0 -0
  113. {turbigen-2.4.0 → turbigen-2.7.3}/doc/generate_data_structures.py +0 -0
  114. {turbigen-2.4.0 → turbigen-2.7.3}/doc/generate_examples.py +0 -0
  115. {turbigen-2.4.0 → turbigen-2.7.3}/doc/index.rst +0 -0
  116. {turbigen-2.4.0 → turbigen-2.7.3}/doc/license.rst +0 -0
  117. {turbigen-2.4.0 → turbigen-2.7.3}/doc/nomenclature.rst +0 -0
  118. {turbigen-2.4.0 → turbigen-2.7.3}/doc/quickstart.rst +0 -0
  119. {turbigen-2.4.0 → turbigen-2.7.3}/doc/references.rst +0 -0
  120. {turbigen-2.4.0 → turbigen-2.7.3}/doc/refs.bib +0 -0
  121. {turbigen-2.4.0 → turbigen-2.7.3}/doc/solver.rst +0 -0
  122. {turbigen-2.4.0 → turbigen-2.7.3}/doc/turbigen-logo.svg +0 -0
  123. {turbigen-2.4.0 → turbigen-2.7.3}/doc/tutorial.rst.not +0 -0
  124. {turbigen-2.4.0 → turbigen-2.7.3}/doc/usage.rst +0 -0
  125. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/Makefile +0 -0
  126. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.buildinfo +0 -0
  127. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/changelog.doctree +0 -0
  128. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/config.doctree +0 -0
  129. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/environment.pickle +0 -0
  130. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/fluid.doctree +0 -0
  131. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/index.doctree +0 -0
  132. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/install.doctree +0 -0
  133. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/license.doctree +0 -0
  134. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/meanline.doctree +0 -0
  135. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/mesh.doctree +0 -0
  136. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/nomenclature.doctree +0 -0
  137. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/post.doctree +0 -0
  138. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/references.doctree +0 -0
  139. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/solver.doctree +0 -0
  140. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/tutorial.doctree +0 -0
  141. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/usage.doctree +0 -0
  142. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_modules/index.html +0 -0
  143. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_modules/turbigen/base.html +0 -0
  144. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_modules/turbigen/fluid.html +0 -0
  145. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_modules/turbigen/hmesh.html +0 -0
  146. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_modules/turbigen/meanline/axial_turbine.html +0 -0
  147. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_modules/turbigen/meanline/radial_compressor.html +0 -0
  148. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_modules/turbigen/meanline/turbine_cascade.html +0 -0
  149. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_modules/turbigen/ohmesh.html +0 -0
  150. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_modules/turbigen/solvers/ts3.html +0 -0
  151. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_modules/turbigen/solvers/ts4.html +0 -0
  152. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/changelog.rst.txt +0 -0
  153. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/config.rst.txt +0 -0
  154. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/fluid.rst.txt +0 -0
  155. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/index.rst.txt +0 -0
  156. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/install.rst.txt +0 -0
  157. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/license.rst.txt +0 -0
  158. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/meanline.rst.txt +0 -0
  159. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/mesh.rst.txt +0 -0
  160. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/nomenclature.rst.txt +0 -0
  161. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/post.rst.txt +0 -0
  162. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/references.rst.txt +0 -0
  163. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/solver.rst.txt +0 -0
  164. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/tutorial.rst.txt +0 -0
  165. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/usage.rst.txt +0 -0
  166. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/alabaster.css +0 -0
  167. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/basic.css +0 -0
  168. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/custom.css +0 -0
  169. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/doctools.js +0 -0
  170. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/documentation_options.js +0 -0
  171. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/file.png +0 -0
  172. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/language_data.js +0 -0
  173. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/minus.png +0 -0
  174. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/plot_directive.css +0 -0
  175. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/plus.png +0 -0
  176. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/pygments.css +0 -0
  177. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/searchtools.js +0 -0
  178. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/siunitx.js +0 -0
  179. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/sphinx_highlight.js +0 -0
  180. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/changelog.html +0 -0
  181. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/config.html +0 -0
  182. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/fluid.html +0 -0
  183. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/genindex.html +0 -0
  184. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/index.html +0 -0
  185. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/install.html +0 -0
  186. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/license.html +0 -0
  187. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/meanline.html +0 -0
  188. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/mesh.html +0 -0
  189. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/nomenclature.html +0 -0
  190. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/objects.inv +0 -0
  191. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/post.html +0 -0
  192. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/py-modindex.html +0 -0
  193. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/references.html +0 -0
  194. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/search.html +0 -0
  195. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/searchindex.js +0 -0
  196. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/solver.html +0 -0
  197. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/tutorial.html +0 -0
  198. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/usage.html +0 -0
  199. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_static/siunitx.js +0 -0
  200. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/changelog.rst +0 -0
  201. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/conf.py +0 -0
  202. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/config.rst +0 -0
  203. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/dummy_post.py +0 -0
  204. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/fluid.rst +0 -0
  205. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/index.rst +0 -0
  206. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/install.rst +0 -0
  207. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/license.rst +0 -0
  208. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/make.bat +0 -0
  209. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/meanline.rst +0 -0
  210. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/mesh.rst +0 -0
  211. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/method.md +0 -0
  212. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/nomenclature.rst +0 -0
  213. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/post.rst +0 -0
  214. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/refs.bib +0 -0
  215. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/runs/cascade/config.yaml +0 -0
  216. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/runs/cascade/inverse.yaml +0 -0
  217. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/runs/cascade/log_turbigen.txt +0 -0
  218. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/runs/cascade/mean_line_actual.yaml +0 -0
  219. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/runs/cascade/mean_line_nominal.yaml +0 -0
  220. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/runs/cascade_test/config.yaml +0 -0
  221. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/runs/cascade_test/inverse.yaml +0 -0
  222. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/runs/cascade_test/log_turbigen.txt +0 -0
  223. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/runs/cascade_test/mean_line_actual.yaml +0 -0
  224. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/runs/cascade_test/mean_line_nominal.yaml +0 -0
  225. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/solver.rst +0 -0
  226. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/tutorial.rst +0 -0
  227. {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/usage.rst +0 -0
  228. {turbigen-2.4.0 → turbigen-2.7.3}/matplotlibrc +0 -0
  229. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/analysis.yaml +0 -0
  230. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/axial_compressor_rotor.yaml +0 -0
  231. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/axial_turbine.yaml +0 -0
  232. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/axial_turbine_ts4.yaml +0 -0
  233. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/cascade_fit.yaml +0 -0
  234. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/cascade_iter.yaml +0 -0
  235. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/cascade_off_design.yaml +0 -0
  236. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/cascade_p3d.yaml +0 -0
  237. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/cascade_post.yaml +0 -0
  238. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/cascade_test.yaml +0 -0
  239. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/flat_plate.yaml +0 -0
  240. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/include1.yaml +0 -0
  241. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/include2.yaml +0 -0
  242. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/mixed_compressor.yaml +0 -0
  243. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/profile.yaml +0 -0
  244. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/pure_radial_compressor.yaml +0 -0
  245. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/quad_camber.yaml +0 -0
  246. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/radial_compressor.yaml +0 -0
  247. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/seminar_df.yaml +0 -0
  248. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/seminar_ds_025.yaml +0 -0
  249. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/seminar_ds_04.yaml +0 -0
  250. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/seminar_ds_055.yaml +0 -0
  251. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/seminar_xpeak.yaml +0 -0
  252. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/turbine_cascade.yaml +0 -0
  253. {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/turbine_include.yaml +0 -0
  254. {turbigen-2.4.0 → turbigen-2.7.3}/plots/profile.txt +0 -0
  255. {turbigen-2.4.0 → turbigen-2.7.3}/pytest.ini +0 -0
  256. {turbigen-2.4.0 → turbigen-2.7.3}/scripts/benchmark.py +0 -0
  257. {turbigen-2.4.0 → turbigen-2.7.3}/scripts/benchmark.sh +0 -0
  258. {turbigen-2.4.0 → turbigen-2.7.3}/scripts/eval_fitted_design_space.py +0 -0
  259. {turbigen-2.4.0 → turbigen-2.7.3}/scripts/fit_eta_tt.json +0 -0
  260. {turbigen-2.4.0 → turbigen-2.7.3}/scripts/link_packages.py +0 -0
  261. {turbigen-2.4.0 → turbigen-2.7.3}/scripts/make_table.py +0 -0
  262. {turbigen-2.4.0 → turbigen-2.7.3}/scripts/plot_benchmark.py +0 -0
  263. {turbigen-2.4.0 → turbigen-2.7.3}/scripts/plot_camber.py +0 -0
  264. {turbigen-2.4.0 → turbigen-2.7.3}/scripts/plot_mixing.py +0 -0
  265. {turbigen-2.4.0 → turbigen-2.7.3}/scripts/plot_thickness.py +0 -0
  266. {turbigen-2.4.0 → turbigen-2.7.3}/scripts/profile.sh +0 -0
  267. {turbigen-2.4.0 → turbigen-2.7.3}/scripts/read_cuts.py +0 -0
  268. {turbigen-2.4.0 → turbigen-2.7.3/scripts}/test_matmul.py +0 -0
  269. {turbigen-2.4.0 → turbigen-2.7.3/scripts}/test_stack.py +0 -0
  270. {turbigen-2.4.0/src/embsolve → turbigen-2.7.3/src/ember}/distribute.f90 +0 -0
  271. {turbigen-2.4.0/src/embsolve → turbigen-2.7.3/src/ember}/indexing.f90 +0 -0
  272. {turbigen-2.4.0/src/embsolve → turbigen-2.7.3/src/ember}/matmul.f90 +0 -0
  273. {turbigen-2.4.0/src/embsolve → turbigen-2.7.3/src/ember}/operators.f90 +0 -0
  274. {turbigen-2.4.0/src/embsolve → turbigen-2.7.3/src/ember}/smooth.f90 +0 -0
  275. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/__main__.py +0 -0
  276. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/autogrid/__init__.py +0 -0
  277. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/autogrid/ag_server.sh +0 -0
  278. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/autogrid/reader.py +0 -0
  279. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/autogrid/script_igg.py2 +0 -0
  280. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/autogrid/server.py +0 -0
  281. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/clusterfunc/__init__.py +0 -0
  282. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/clusterfunc/check.py +0 -0
  283. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/clusterfunc/double.py +0 -0
  284. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/clusterfunc/exceptions.py +0 -0
  285. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/clusterfunc/plot.py +0 -0
  286. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/clusterfunc/single.py +0 -0
  287. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/clusterfunc/symmetric.py +0 -0
  288. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/clusterfunc/util.py +0 -0
  289. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/compflow_native.py +0 -0
  290. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/exceptions.py +0 -0
  291. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/fluid.py +0 -0
  292. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/inlet.py +0 -0
  293. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/job.py +0 -0
  294. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/marching_cubes.py +0 -0
  295. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/mesh.py +0 -0
  296. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/nblade.py +0 -0
  297. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/op_point.py +0 -0
  298. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/polynomial.py +0 -0
  299. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/calc_surf_dissipation.py +0 -0
  300. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/check_phase.py +0 -0
  301. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/find_extrema.py +0 -0
  302. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/plot_blade.py +0 -0
  303. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/plot_camber.py +0 -0
  304. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/plot_incidence.py +0 -0
  305. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/plot_nose.py +0 -0
  306. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/plot_section.py +0 -0
  307. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/plot_thickness.py +0 -0
  308. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/spanwise.py +0 -0
  309. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/write_cuts.py +0 -0
  310. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/write_ibl.py +0 -0
  311. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/write_stl.py +0 -0
  312. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/solvers/base.py +0 -0
  313. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/solvers/plot3d.py +0 -0
  314. {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/tables.py +0 -0
  315. {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/cascade_splitter.tar.gz +0 -0
  316. {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/cascade_splitter.yaml +0 -0
  317. {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/cfd_cut.json +0 -0
  318. {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/hydrogen_table_known_good.npz +0 -0
  319. {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/sections.dat +0 -0
  320. {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/water_table_known_good.npz +0 -0
  321. {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/xcd_yp5_ts3.csv +0 -0
  322. {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/xcd_yp5_turb.csv +0 -0
  323. {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/xcf_ts3.csv +0 -0
  324. {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/xcf_turb_ts3.csv +0 -0
  325. {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/xcf_yp5_ts3.csv +0 -0
  326. {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/xcf_yp5_turb.csv +0 -0
  327. {turbigen-2.4.0 → turbigen-2.7.3}/tests/gpu/submit.sh +0 -0
  328. {turbigen-2.4.0 → turbigen-2.7.3}/tests/gpu/ts3.yaml +0 -0
  329. {turbigen-2.4.0 → turbigen-2.7.3}/tests/gpu/ts4.yaml +0 -0
  330. {turbigen-2.4.0 → turbigen-2.7.3}/tests/pdist_ts3.npz +0 -0
  331. {turbigen-2.4.0 → turbigen-2.7.3}/tests/plate.yaml +0 -0
  332. {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_wall.py +0 -0
@@ -43,3 +43,5 @@ tests/*.log
43
43
  /build/
44
44
  *.prof
45
45
  tests/bench.dat
46
+ src/ember/*wrapper*
47
+ src/ember/embercmodule.c
@@ -0,0 +1,100 @@
1
+ image: python:3.11
2
+
3
+ stages:
4
+ - build
5
+ - test
6
+ - deploy
7
+ - publish
8
+
9
+
10
+ before_script:
11
+ - curl -LsSf https://astral.sh/uv/install.sh | sh
12
+ - source $HOME/.local/bin/env
13
+ - uv venv
14
+ - source .venv/bin/activate
15
+
16
+ variables:
17
+ UV_CACHE_DIR: "$CI_PROJECT_DIR/.uv-cache"
18
+ DOCKER_HOST: unix:///var/run/docker.sock
19
+ DOCKER_API_VERSION: 1.41
20
+ DOCKER_TLS_CERTDIR: ""
21
+
22
+ build_test_wheel:
23
+ stage: build
24
+ script:
25
+ - apt update && apt install -y gfortran
26
+ - ./scripts/generate_meson.sh
27
+ - curl -sSL https://get.docker.com/ | sh
28
+ - uv pip install cibuildwheel
29
+ - cibuildwheel --only cp311-manylinux_x86_64 --output-dir dist .
30
+ - python -m build --sdist
31
+ - ls -l dist
32
+ artifacts:
33
+ expire_in: 2 hours
34
+ paths:
35
+ - dist
36
+
37
+ tests:
38
+ stage: test
39
+ script:
40
+ - uv pip install dist/*.whl pytest
41
+ - pytest --slow
42
+
43
+ profile:
44
+ stage: deploy
45
+ script:
46
+ - apt update && apt install -y gfortran libopenmpi-dev
47
+ - uv pip install mpi4py line_profiler==4.2.0 dist/*.whl
48
+ # Serial profiling.
49
+ - OMP_NUM_THREADS=1 LINE_PROFILE=1 turbigen examples/axial_turbine.yaml -I
50
+ - cat profile_output.txt
51
+ # Now parallel benchmarking
52
+ - ./scripts/benchmark.sh
53
+
54
+ doc:
55
+ stage: deploy
56
+ artifacts:
57
+ paths:
58
+ - doc/_build
59
+ script:
60
+ - apt update && apt install -y pdf2svg fonts-freefont-ttf
61
+ - uv pip install dist/*.whl sphinx~=8.0.0 sphinx-autobuild sphinx-argparse sphinxcontrib-programoutput sphinxcontrib-bibtex snowballstemmer==2.2.0 autodocsumm
62
+ - python doc/generate_examples.py
63
+ - python doc/generate_meanline.py
64
+ - python doc/generate_data_structures.py
65
+ - sphinx-build -W doc doc/_build
66
+
67
+ build_all_wheels:
68
+ stage: deploy
69
+ script:
70
+ - apt update && apt install -y gfortran
71
+ - ./scripts/generate_meson.sh
72
+ - curl -sSL https://get.docker.com/ | sh
73
+ - uv pip install cibuildwheel
74
+ - cibuildwheel --platform linux --output-dir dist .
75
+ - python -m build --sdist
76
+ - ls -l dist
77
+ artifacts:
78
+ expire_in: 1 day
79
+ paths:
80
+ - dist
81
+
82
+ pypi:
83
+ stage: publish
84
+ script:
85
+ - uv pip install twine
86
+ - ls -l dist
87
+ - twine upload dist/*
88
+ only:
89
+ - master
90
+
91
+
92
+ pages:
93
+ stage: publish
94
+ script:
95
+ - mv doc/_build public
96
+ artifacts:
97
+ paths:
98
+ - public
99
+ only:
100
+ - master
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: turbigen
3
- Version: 2.4.0
3
+ Version: 2.7.3
4
4
  Summary: Framework for turbomachinery design and computational fluid dynamics simulation
5
5
  Keywords: turbomachinery,computational fluid dynamics,compressor,turbine
6
6
  Author-Email: James Brind <jb753@cam.ac.uk>
@@ -19,21 +19,6 @@ Requires-Dist: scipy~=1.15.0
19
19
  Requires-Dist: h5py~=3.13.0
20
20
  Requires-Dist: numpy-stl~=3.2.0
21
21
  Requires-Dist: metis~=0.2a5
22
- Provides-Extra: dev
23
- Requires-Dist: sphinx; extra == "dev"
24
- Requires-Dist: sphinx-autobuild; extra == "dev"
25
- Requires-Dist: sphinx-argparse; extra == "dev"
26
- Requires-Dist: sphinxcontrib-programoutput; extra == "dev"
27
- Requires-Dist: sphinxcontrib-bibtex; extra == "dev"
28
- Requires-Dist: snowballstemmer==2.2.0; extra == "dev"
29
- Requires-Dist: autodocsumm; extra == "dev"
30
- Requires-Dist: pytest; extra == "dev"
31
- Requires-Dist: pre-commit; extra == "dev"
32
- Requires-Dist: build; extra == "dev"
33
- Requires-Dist: cibuildwheel; extra == "dev"
34
- Requires-Dist: twine; extra == "dev"
35
- Requires-Dist: bump-my-version; extra == "dev"
36
- Requires-Dist: setuptools; extra == "dev"
37
22
  Provides-Extra: parallel
38
23
  Requires-Dist: mpi4py~=3.1.6; extra == "parallel"
39
24
  Description-Content-Type: text/markdown
@@ -1,6 +1,39 @@
1
1
  Changelog
2
2
  =========
3
3
 
4
+ v2.6.0
5
+ ^^^^^^
6
+
7
+ * Allow hub gaps in OH meshing by setting negative tip values
8
+ * Scale blade thickness on chord/span/absolute value
9
+ * Fix broken TS3 to TS4 conversion script on Wilkes
10
+ * More TS4 configuration options and better restart settings
11
+ * OH meshing data now saves correctly into the config file
12
+ * Bug fix where incidence was calculated on uncambered blades
13
+ * Additional TaylorQuadratic camber line setting metal angle directly instead of metal angle tangent
14
+ * Fix sections were always stacked at LE irrespective of mstack value
15
+
16
+
17
+ v2.5.0
18
+ ^^^^^^
19
+
20
+ * Allow scaling tip gap on chord, span, or absolute value
21
+ * Implement trailing-edge cusps in ember
22
+ * Print out area-averaged yplus in ember
23
+ * Add post processing for inlet profile plot and streamtube loss breakdown
24
+ * Bugfix for overly generous block equality
25
+ * Speed improvement for matching patches
26
+ * Add function to initialise a grid from TS3 hdf5
27
+ * Low-level utility function for grid warping
28
+ * Scripts to automate rebuilding the compiled Fortran code
29
+ * Save config to iteration directories before running the solver
30
+ * Split long Fortran routines into smaller subroutines
31
+ * Write out metdata for TS3 probes into a yaml file
32
+ * Allow per block overrides of block variables in TS3
33
+ * Implement general unsteady inlet boundary condition
34
+ * Functions for post-processing TS3 unsteady probes and wave separation
35
+ * Much internal restructuring and tidying up
36
+
4
37
  v2.4.0
5
38
  ^^^^^^
6
39
 
@@ -1,5 +1,5 @@
1
1
 
2
- Data Structures
2
+ Data structures
3
3
  ===============
4
4
 
5
5
  This page documents the internal data structures used in :program:`turbigen`.
@@ -7,8 +7,10 @@ It is intended as a reference for users extending the program using custom
7
7
  plugins or developers modifying the source code.
8
8
 
9
9
 
10
- Working fluids
11
- --------------
10
+ .. _state:
11
+
12
+ State
13
+ -----
12
14
 
13
15
  Both perfect and real working fluids are represented by a :class:`State`
14
16
  class, which has a common interface for setting and reading thermodynamic
@@ -106,6 +108,8 @@ Thermodynamic and transport properties of the fluid are accessed as attributes o
106
108
  - Specific internal energy
107
109
  - J/kg
108
110
 
111
+ .. _flowfield:
112
+
109
113
  Flow fields
110
114
  -----------
111
115
 
@@ -250,6 +254,8 @@ In addition to all the pure thermodynamic properties defined in
250
254
  - Axial coordinate
251
255
  - m
252
256
 
257
+ .. _meanline:
258
+
253
259
  Mean line
254
260
  ---------
255
261
 
@@ -1,6 +1,6 @@
1
1
  """Make documentation for an abstract base class and subclasses."""
2
2
 
3
- import turbigen.meanline
3
+ import turbigen.meanline_design
4
4
  from turbigen import util
5
5
  import inspect
6
6
 
@@ -51,4 +51,4 @@ def format_yaml_snippet(data_dict, title):
51
51
 
52
52
 
53
53
  if __name__ == "__main__":
54
- print(generate_subclass(turbigen.meanline.MeanLineDesigner, "meanline"))
54
+ print(generate_subclass(turbigen.meanline_design.MeanLineDesigner, "meanline"))
@@ -1,7 +1,7 @@
1
1
  """Make documentation for an abstract base class and subclasses."""
2
2
 
3
3
  import turbigen.solvers.base
4
- from turbigen.solvers import ember, ts3, ts4
4
+ from turbigen.solvers import ember, ts3, ts4 # noqa: F401
5
5
  import inspect
6
6
  import dataclasses
7
7
 
@@ -112,7 +112,7 @@ Then, create a new Python file in the `plug` directory, e.g.
112
112
 
113
113
  Parameters
114
114
  ----------
115
- So1: Fluid
115
+ So1: State
116
116
  The working fluid and its thermodynamic state at inlet.
117
117
  phi: float
118
118
  Flow coefficient at inlet.
@@ -132,7 +132,7 @@ Then, create a new Python file in the `plug` directory, e.g.
132
132
  Shaft angular velocities at all stations [rad/s].
133
133
  Vxrt: (3, 2*nrow) array
134
134
  Velocity components at all stations [m/s].
135
- S: (2*nrow,) list of Fluid
135
+ S: (2*nrow,) list of State
136
136
  Static states for all stations.
137
137
 
138
138
  '''
@@ -193,7 +193,7 @@ Then, create a new Python file in the `plug` directory, e.g.
193
193
 
194
194
  You will need to implement two static methods: `forward()` and `backward()`.
195
195
 
196
- The `forward()` function takes as arguments an inlet state object and
196
+ The `forward()` function takes as arguments an inlet :ref:`state` object and
197
197
  some duty, geometric, or aerodynamic design variables. This function
198
198
  returns all information required to lay out the mean-line: radii, annulus
199
199
  areas, angular velocities, velocity components, and thermodynamic states at
@@ -226,7 +226,7 @@ the `MyCustomMeanLine` class and calls its `forward()` method like:
226
226
  Some notes on implementing the `forward()` method:
227
227
 
228
228
  * Retain generality of the working fluid by using the set property methods
229
- of the `Fluid` class, as in the example above. This is preferable to
229
+ of the :ref:`state` class, as in the example above. This is preferable to
230
230
  hard-coding calculations assuming a specific equation of state such as
231
231
  ideal gas.
232
232
  * Specify aerodynamic design variables instead of geometric ones, e.g.
@@ -251,7 +251,7 @@ Some notes on implementing the `forward()` method:
251
251
  total-to-static pressure ratio requires iteration because the exit
252
252
  dynamic head is not known a priori.
253
253
 
254
- The `backward()` function takes a mean-line flow field as its only
254
+ The `backward()` function takes a :ref:`meanline` flow field object as its only
255
255
  argument, and calculates a dictionary of the arguments to `forward()`.
256
256
  Given a suitably averaged CFD solution, `backward()` is a post-processing
257
257
  step that allows comparison of the three-dimensional simulated flow field
@@ -220,7 +220,7 @@ We can now start to add the :ref:`tut-ml-algo` to the `forward` function inside
220
220
  The first task is to calculate the ideal exit enthalpy :math:`h_{02s}=h(p_{01}+\Delta p_0, s_1)`
221
221
  in Eqn. :eq:`eqn-eta`. Mean-line design functions should be written to make
222
222
  no assumptions about the working fluid equation of state --- this is accomplished
223
- using the fluid modelling abstractions in :py:mod:`turbigen.fluid`. We take a
223
+ using the fluid modelling abstractions of the :ref:`state` class. We take a
224
224
  copy of the inlet state, and set its pressure and entropy to the required
225
225
  values.
226
226
 
@@ -343,7 +343,7 @@ radius, and the shaft angular velocity. The completed function is:
343
343
  Omega = U / rrms
344
344
 
345
345
  # Return mean-line data
346
- return rrms, A, Omega, Vxrt, S
346
+ return rrms, A, Omega, Vxrt, S
347
347
 
348
348
 
349
349
  This concludes the `forward` function --- all the required quantities have been
@@ -384,8 +384,8 @@ Implementing backward
384
384
  The `backward` function serves as a verification check that the mean-line
385
385
  matches the design intent, and also to extract design variables from a
386
386
  mixed-out CFD solution. We add the design variables as keys in the output
387
- dictionary, using the attributes of the flowfield class to calculate them. Many
388
- useful quantities are already available in the `mean_line` object, such as efficiency.
387
+ dictionary, using the attributes of the :ref:`meanline` class to calculate them. Many
388
+ useful quantities are already available in the :ref:`meanline` object, such as efficiency.
389
389
 
390
390
  .. code-block:: python
391
391
  :caption: ./plugins/fan.py
@@ -652,7 +652,7 @@ Extensions
652
652
 
653
653
  This tutorial has demonstrated some of the functionality of
654
654
  :program:`turbigen`. Within the current choice of parameterisation, any change to
655
- the design is just an edit to the `config.yaml`, as described in ???
655
+ the design is just an edit to the `config.yaml`.
656
656
 
657
657
  * Increase the number of blades by changing `DFL`
658
658
  * Increase the grid density under `mesh`
@@ -0,0 +1,106 @@
1
+ workdir: runs/*
2
+
3
+ inlet:
4
+ Po: 16.0e5
5
+ To: 1600.
6
+ cp: 1100.
7
+ gamma: 1.33
8
+
9
+ # Set viscosity by vane Reynolds number
10
+ Re_surf: 5e5
11
+
12
+ mean_line:
13
+ type: axial_turbine
14
+ # Duty
15
+ mdot: 500.
16
+ rrms: 1.0
17
+ # Aerodynamics
18
+ psi: 1.6
19
+ phi2: 0.6
20
+ Ma2: 0.7
21
+ fac_Ma3_rel: 1.0
22
+ zeta: [1.0, 1.0]
23
+ # Guess of loss
24
+ Ys: [0.05, 0.1]
25
+
26
+ annulus:
27
+ type: smooth
28
+ AR_gap: [2.0, 3.33, 2.0]
29
+ AR_chord: [2.0, 2.0]
30
+ smooth: false
31
+
32
+ mesh:
33
+ type: h
34
+ yplus: 50.0
35
+ ni_TE: 3
36
+ dm_TE: 0.0
37
+ dspf_mid: 0.05
38
+ AR_cusp: 1.2
39
+ ni_cusp: 4
40
+ ER_span: 1.3
41
+ ER_stream: 1.3
42
+ ER_pitch: 1.3
43
+ dm_LE: 0.002
44
+
45
+
46
+ blades:
47
+ - spf: 0.5
48
+ thick: [0.04, 0.12, 0.35, 0.0, 0.04, 0.15]
49
+ camber: [0., 0., 0.0]
50
+ - spf: 0.5
51
+ thick: [0.04, 0.12, 0.35, 0.0, 0.04, 0.15]
52
+ camber: [0., 0., 0.0]
53
+ tip: 0.01
54
+
55
+ nblade:
56
+ - Co: 0.6
57
+ - Co: 0.6
58
+
59
+ job:
60
+ type: local
61
+
62
+ iterate:
63
+ mean_line:
64
+ tolerance:
65
+ Ys: 0.01
66
+ relaxation_factor: 1.0
67
+ deviation:
68
+ tolerance: 0.5
69
+ incidence:
70
+ tolerance: 16.
71
+ relaxation_factor: 0.05
72
+ repeat:
73
+ dPo_max: 0.05
74
+ dTo_max: 0.05
75
+ dAlpha_max: 10.
76
+ dBeta_max: 0.
77
+
78
+ post_process:
79
+ - type: inlet_profiles
80
+ - type: contour
81
+ coord: spf
82
+ value: 0.5
83
+ variable: Ma_rel
84
+ - type: contour
85
+ coord: m
86
+ value: [2.05, 4.05]
87
+ variable: Ys
88
+
89
+ design_space:
90
+ independent:
91
+ mean_line:
92
+ phi2: [0.4, 1.2]
93
+ psi: [0.8, 2.4]
94
+ zeta[0]: [0.9, 1.0]
95
+ zeta[1]: [1.0, 1.1]
96
+ Ma2: [0.5, 0.9]
97
+ fac_Ma3_rel: [0.8, 1.2]
98
+ nblade:
99
+ 0:
100
+ Co: [0.6, 0.8]
101
+ 1:
102
+ Co: [0.6, 0.8]
103
+ order_max: 3
104
+ nsample_target: 512
105
+
106
+ fac_nstep_initial: 2.0
@@ -0,0 +1,114 @@
1
+ workdir: runs/*
2
+
3
+ inlet:
4
+ Po: 16.0e5
5
+ To: 1600.
6
+ cp: 1100.
7
+ gamma: 1.33
8
+
9
+ # Set viscosity by vane Reynolds number
10
+ Re_surf: 5e5
11
+
12
+ mean_line:
13
+ type: axial_turbine
14
+ # Duty
15
+ mdot: 500.
16
+ rrms: 1.0
17
+ # Aerodynamics
18
+ psi: 1.6
19
+ phi2: 0.6
20
+ Ma2: 0.6
21
+ fac_Ma3_rel: 1.0
22
+ zeta: [1.0, 1.0]
23
+ # Guess of loss
24
+ Ys: [0.05, 0.1]
25
+
26
+ annulus:
27
+ type: smooth
28
+ AR_gap: [2.0, 3.33, 2.0]
29
+ AR_chord: [2.0, 2.0]
30
+ smooth: false
31
+
32
+ mesh:
33
+ type: h
34
+ yplus: 40.0
35
+ ni_TE: 6
36
+ dm_TE: 0.0
37
+ dspf_mid: 0.03
38
+ AR_cusp: 1.2
39
+ ni_cusp: 8
40
+ ER_span: 1.2
41
+ ER_stream: 1.2
42
+ ER_pitch: 1.2
43
+ dm_LE: 0.001
44
+
45
+
46
+ blades:
47
+ - spf: 0.5
48
+ thick: [0.04, 0.12, 0.35, 0.0, 0.02, 0.15]
49
+ camber: [0., 0., 0.0]
50
+ - spf: 0.5
51
+ thick: [0.04, 0.12, 0.35, 0.0, 0.02, 0.15]
52
+ camber: [0., 0., 0.0]
53
+ tip: 0.00
54
+
55
+ nblade:
56
+ - Co: 0.6
57
+ - Co: 0.6
58
+
59
+ job:
60
+ type: local
61
+
62
+ iterate:
63
+ mean_line:
64
+ tolerance:
65
+ Ys: 0.01
66
+ relaxation_factor: 1.0
67
+ deviation:
68
+ tolerance: 0.5
69
+ incidence:
70
+ tolerance: 16.
71
+ relaxation_factor: 0.05
72
+ repeat:
73
+ dPo_max: 0.05
74
+ dTo_max: 0.05
75
+ dAlpha_max: 10.
76
+ dBeta_max: 0.
77
+
78
+ post_process:
79
+ - type: inlet_profiles
80
+ - type: contour
81
+ coord: spf
82
+ value: 0.5
83
+ variable: Ma_rel
84
+ - type: contour
85
+ coord: m
86
+ value: [2.05, 4.05]
87
+ variable: Ys
88
+
89
+ design_space:
90
+ independent:
91
+ mean_line:
92
+ phi2: [0.4, 1.2]
93
+ psi: [0.8, 2.4]
94
+ zeta[0]: [0.9, 1.0]
95
+ zeta[1]: [1.0, 1.1]
96
+ Ma2: [0.5, 0.9]
97
+ fac_Ma3_rel: [0.8, 1.2]
98
+ nblade:
99
+ 0:
100
+ Co: [0.6, 0.8]
101
+ 1:
102
+ Co: [0.6, 0.8]
103
+ order_max: 3
104
+ nsample_target: 512
105
+
106
+ fac_nstep_initial: 2.0
107
+
108
+
109
+
110
+ solver:
111
+ type: ember
112
+ n_step: 4000
113
+ n_step_avg: 1000
114
+ n_step_ramp: 500
@@ -0,0 +1,144 @@
1
+ workdir: runs/*
2
+
3
+ inlet:
4
+ Po: 16.0e5
5
+ To: 1600.
6
+ cp: 1100.
7
+ gamma: 1.33
8
+
9
+ # Set viscosity by vane Reynolds number
10
+ Re_surf: 5e5
11
+
12
+ mean_line:
13
+ type: axial_turbine
14
+ # Duty
15
+ mdot: 500.
16
+ rrms: 1.0
17
+ # Aerodynamics
18
+ psi: 1.6
19
+ phi2: 0.6
20
+ Ma2: 0.7
21
+ fac_Ma3_rel: 1.0
22
+ zeta: [1.0, 1.0]
23
+ # Guess of loss
24
+ Ys: [0.05, 0.1]
25
+
26
+ annulus:
27
+ type: smooth
28
+ AR_gap: [2.0, 3.33, 2.0]
29
+ AR_chord: [2.0, 2.0]
30
+ smooth: false
31
+
32
+ mesh:
33
+ type: h
34
+ yplus: 40.0
35
+ ni_TE: 3
36
+ dm_TE: 0.0
37
+ dspf_mid: 0.05
38
+ AR_cusp: 1.2
39
+ ni_cusp: 4
40
+ ER_span: 1.3
41
+ ER_stream: 1.3
42
+ ER_pitch: 1.3
43
+ dm_LE: 0.002
44
+
45
+
46
+ blades:
47
+ - spf: [0.2, 0.5, 0.8]
48
+ thick: [
49
+ [0.04, 0.12, 0.35, 0.0, 0.02, 0.15],
50
+ [0.04, 0.12, 0.35, 0.0, 0.02, 0.15],
51
+ [0.04, 0.12, 0.35, 0.0, 0.02, 0.15],
52
+ ]
53
+ camber: [
54
+ [0., 0., 0.0],
55
+ [0., 0., 0.0],
56
+ [0., 0., 0.0],
57
+ ]
58
+ - spf: [0.2, 0.5, 0.8]
59
+ thick: [
60
+ [0.04, 0.12, 0.35, 0.0, 0.02, 0.15],
61
+ [0.04, 0.12, 0.35, 0.0, 0.02, 0.15],
62
+ [0.04, 0.12, 0.35, 0.0, 0.02, 0.15],
63
+ ]
64
+ camber: [
65
+ [0., 0., 0.0],
66
+ [0., 0., 0.0],
67
+ [0., 0., 0.0],
68
+ ]
69
+ tip: 0.01
70
+
71
+ nblade:
72
+ - Co: 0.6
73
+ - Co: 0.6
74
+
75
+
76
+ solver:
77
+ type: ember
78
+ n_step: 2500
79
+ n_step_avg: 1500
80
+ n_step_ramp: 1000
81
+ xllim_pitch: 0.01
82
+ K_mix: 0.1
83
+ sf_mix: 0.5
84
+ sf_Alpha: 1e-3
85
+
86
+ job:
87
+ type: local
88
+
89
+ iterate:
90
+ mean_line:
91
+ tolerance:
92
+ Ys: 0.0004
93
+ relaxation_factor: 1.0
94
+ deviation:
95
+ tolerance: 0.5
96
+ incidence:
97
+ tolerance: 16.
98
+ relaxation_factor: 0.05
99
+ clip: 0.5
100
+ repeat:
101
+ dPo_max: 0.05
102
+ dTo_max: 0.05
103
+ dAlpha_max: 10.
104
+ dBeta_max: 0.
105
+ rtol: 0.005
106
+ relaxation_factor: 0.5
107
+
108
+ post_process:
109
+ - type: inlet_profiles
110
+ - type: sections
111
+ - type: contour
112
+ coord: spf
113
+ value: 0.5
114
+ variable: Ma_rel
115
+ - type: contour
116
+ coord: m
117
+ value: [0.01, 2.48, 2.52, 4.25]
118
+ variable: Alpha
119
+ - type: contour
120
+ coord: m
121
+ value: [0.01, 2.48, 2.52, 4.25]
122
+ variable: Cho
123
+ - type: contour
124
+ coord: m
125
+ value: [0.01, 2.48, 2.52, 4.25]
126
+ variable: Ys
127
+
128
+ design_space:
129
+ independent:
130
+ mean_line:
131
+ phi2: [0.4, 1.2]
132
+ psi: [0.8, 2.4]
133
+ # zeta[0]: [0.9, 1.0]
134
+ # zeta[1]: [1.0, 1.1]
135
+ # Ma2: [0.5, 0.9]
136
+ # fac_Ma3_rel: [0.8, 1.2]
137
+ tip:
138
+ 1: [0.005, 0.05]
139
+ order_max: 3
140
+ nsample_target: 16
141
+
142
+ fac_nstep_initial: 2.0
143
+
144
+ save_iteration_grids: false
@@ -0,0 +1,8 @@
1
+ include:
2
+ - dspace.yaml
3
+
4
+ solver:
5
+ type: ember
6
+ n_step: 2000
7
+ n_step_avg: 1000
8
+ n_step_ramp: 1000
@@ -0,0 +1,9 @@
1
+ include:
2
+ - dspace.yaml
3
+
4
+ solver:
5
+ type: ts3
6
+ # soft_start: true
7
+ nstep: 10000
8
+ nstep_avg: 2500
9
+ ilos: 1