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.
- {turbigen-2.4.0 → turbigen-2.7.3}/.gitignore +2 -0
- turbigen-2.7.3/.gitlab-ci.yml +100 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/PKG-INFO +1 -16
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/changelog.rst +33 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/data_structures.rst +9 -3
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/generate_meanline.py +2 -2
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/generate_solver.py +1 -1
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/meanline.rst +5 -5
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/tutorial.rst +5 -5
- turbigen-2.7.3/dspace.yaml +106 -0
- turbigen-2.7.3/dspace2.yaml +114 -0
- turbigen-2.7.3/dspace3.yaml +144 -0
- turbigen-2.7.3/dspace_emb.yaml +8 -0
- turbigen-2.7.3/dspace_ts3.yaml +9 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/examples/axial_turbine.yaml +17 -12
- {turbigen-2.4.0 → turbigen-2.7.3}/examples/turbine_cascade.yaml +12 -3
- turbigen-2.7.3/external.yaml +62 -0
- turbigen-2.7.3/h2.yaml +59 -0
- {turbigen-2.4.0/src/embsolve → turbigen-2.7.3}/meson.build +19 -18
- {turbigen-2.4.0 → turbigen-2.7.3}/pyproject.toml +23 -22
- turbigen-2.7.3/scripts/ag_server_wrapper.sh +22 -0
- turbigen-2.7.3/scripts/generate_meson.sh +62 -0
- turbigen-2.7.3/scripts/plot_dspace.py +109 -0
- turbigen-2.7.3/scripts/read_ts3_probe.py +18 -0
- turbigen-2.7.3/scripts/run_vki.py +530 -0
- turbigen-2.7.3/scripts/test_dspace.py +50 -0
- turbigen-2.7.3/scripts/vki_blade.csv +206 -0
- turbigen-2.4.0/src/embsolve/embsolve.f90 → turbigen-2.7.3/src/ember/ember.f90 +24 -81
- {turbigen-2.4.0/src/embsolve → turbigen-2.7.3/src/ember}/fluxes.f90 +99 -46
- {turbigen-2.4.0/src/embsolve → turbigen-2.7.3/src/ember}/multigrid.f90 +5 -4
- {turbigen-2.4.0/src/embsolve → turbigen-2.7.3/src/ember}/viscous.f90 +17 -27
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/__init__.py +1 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/abstract.py +13 -4
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/annulus.py +6 -4
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/autogrid/autogrid.py +35 -90
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/autogrid/script_ag.py2 +6 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/autogrid/script_sh +3 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/average.py +6 -6
- turbigen-2.7.3/src/turbigen/base.py +228 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/blade.py +50 -11
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/camber.py +51 -4
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/config2.py +125 -42
- turbigen-2.7.3/src/turbigen/dspace.py +754 -0
- turbigen-2.7.3/src/turbigen/flowfield.py +606 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/geometry.py +4 -3
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/grid.py +753 -150
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/hmesh.py +345 -98
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/iterators.py +194 -61
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/job_server.py +1 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/main.py +52 -11
- turbigen-2.7.3/src/turbigen/meanline_data.py +438 -0
- turbigen-2.4.0/src/turbigen/meanline.py → turbigen-2.7.3/src/turbigen/meanline_design.py +13 -5
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/ohmesh.py +43 -58
- turbigen-2.7.3/src/turbigen/perturb.py +290 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post.py +257 -23
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/solvers/convert_ts3_to_ts4_native.py +7 -5
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/solvers/ember.py +528 -148
- turbigen-2.7.3/src/turbigen/solvers/external.py +89 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/solvers/ts3.py +883 -145
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/solvers/ts4.py +41 -29
- turbigen-2.7.3/src/turbigen/ssh.py +174 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/state.py +8 -8
- turbigen-2.7.3/src/turbigen/thickness.py +233 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/util.py +183 -41
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/util_post.py +70 -2
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/yaml.py +19 -13
- turbigen-2.7.3/test_receiver.py +45 -0
- turbigen-2.7.3/tests/bench_functions.py +187 -0
- turbigen-2.7.3/tests/conftest.py +21 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/not_test_rotor.py +4 -4
- turbigen-2.7.3/tests/not_test_state.py +185 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_average.py +9 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_bcond.py +29 -9
- turbigen-2.7.3/tests/test_camber.py +469 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_cells.py +20 -3
- turbigen-2.7.3/tests/test_cusp.py +222 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_distribute.py +13 -13
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_fluid.py +229 -39
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_nozzle.py +20 -31
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_operators.py +15 -15
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_periodic_step.py +2 -2
- turbigen-2.7.3/tests/test_read_probe_dat.py +485 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_smooth.py +13 -13
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_tables.py +2 -0
- turbigen-2.7.3/tests/test_thickness.py +300 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_visc.py +12 -6
- turbigen-2.4.0/.gitlab-ci.yml +0 -90
- turbigen-2.4.0/dspace.yaml +0 -86
- turbigen-2.4.0/meson.build +0 -71
- turbigen-2.4.0/scripts/plot_dspace.py +0 -44
- turbigen-2.4.0/scripts/test_dspace.py +0 -63
- turbigen-2.4.0/src/embsolve/embsolvec-f2pywrappers.f +0 -0
- turbigen-2.4.0/src/embsolve/embsolvec-f2pywrappers2.f90 +0 -40
- turbigen-2.4.0/src/embsolve/embsolvecmodule.c +0 -12562
- turbigen-2.4.0/src/turbigen/base.py +0 -1970
- turbigen-2.4.0/src/turbigen/dspace.py +0 -469
- turbigen-2.4.0/src/turbigen/flowfield.py +0 -130
- turbigen-2.4.0/src/turbigen/thickness.py +0 -526
- {turbigen-2.4.0 → turbigen-2.7.3}/.flake8 +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/.gitlab-ci-local/.gitignore +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/.pre-commit-config.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/COPYING +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/MANIFEST.in +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/Makefile +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/README.md +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/bin/get_ssh_agent.sh +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/bin/noquit.sh +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/bin/setup.sh +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/Makefile +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/_static/siunitx.js +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/conf.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/examples/index.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/generate_data_structures.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/generate_examples.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/index.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/license.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/nomenclature.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/quickstart.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/references.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/refs.bib +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/solver.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/turbigen-logo.svg +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/tutorial.rst.not +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc/usage.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/Makefile +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.buildinfo +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/changelog.doctree +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/config.doctree +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/environment.pickle +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/fluid.doctree +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/index.doctree +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/install.doctree +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/license.doctree +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/meanline.doctree +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/mesh.doctree +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/nomenclature.doctree +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/post.doctree +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/references.doctree +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/solver.doctree +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/tutorial.doctree +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/.doctrees/usage.doctree +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_modules/index.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_modules/turbigen/base.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_modules/turbigen/fluid.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_modules/turbigen/hmesh.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_modules/turbigen/meanline/axial_turbine.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_modules/turbigen/meanline/radial_compressor.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_modules/turbigen/meanline/turbine_cascade.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_modules/turbigen/ohmesh.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_modules/turbigen/solvers/ts3.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_modules/turbigen/solvers/ts4.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/changelog.rst.txt +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/config.rst.txt +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/fluid.rst.txt +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/index.rst.txt +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/install.rst.txt +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/license.rst.txt +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/meanline.rst.txt +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/mesh.rst.txt +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/nomenclature.rst.txt +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/post.rst.txt +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/references.rst.txt +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/solver.rst.txt +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/tutorial.rst.txt +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_sources/usage.rst.txt +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/alabaster.css +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/basic.css +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/custom.css +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/doctools.js +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/documentation_options.js +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/file.png +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/language_data.js +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/minus.png +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/plot_directive.css +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/plus.png +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/pygments.css +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/searchtools.js +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/siunitx.js +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/_static/sphinx_highlight.js +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/changelog.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/config.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/fluid.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/genindex.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/index.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/install.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/license.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/meanline.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/mesh.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/nomenclature.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/objects.inv +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/post.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/py-modindex.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/references.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/search.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/searchindex.js +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/solver.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/tutorial.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_build/usage.html +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/_static/siunitx.js +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/changelog.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/conf.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/config.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/dummy_post.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/fluid.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/index.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/install.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/license.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/make.bat +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/meanline.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/mesh.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/method.md +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/nomenclature.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/post.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/refs.bib +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/runs/cascade/config.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/runs/cascade/inverse.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/runs/cascade/log_turbigen.txt +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/runs/cascade/mean_line_actual.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/runs/cascade/mean_line_nominal.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/runs/cascade_test/config.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/runs/cascade_test/inverse.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/runs/cascade_test/log_turbigen.txt +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/runs/cascade_test/mean_line_actual.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/runs/cascade_test/mean_line_nominal.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/solver.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/tutorial.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/doc-old/usage.rst +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/matplotlibrc +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/analysis.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/axial_compressor_rotor.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/axial_turbine.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/axial_turbine_ts4.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/cascade_fit.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/cascade_iter.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/cascade_off_design.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/cascade_p3d.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/cascade_post.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/cascade_test.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/flat_plate.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/include1.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/include2.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/mixed_compressor.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/profile.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/pure_radial_compressor.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/quad_camber.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/radial_compressor.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/seminar_df.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/seminar_ds_025.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/seminar_ds_04.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/seminar_ds_055.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/seminar_xpeak.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/turbine_cascade.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/old-examples/turbine_include.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/plots/profile.txt +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/pytest.ini +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/scripts/benchmark.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/scripts/benchmark.sh +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/scripts/eval_fitted_design_space.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/scripts/fit_eta_tt.json +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/scripts/link_packages.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/scripts/make_table.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/scripts/plot_benchmark.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/scripts/plot_camber.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/scripts/plot_mixing.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/scripts/plot_thickness.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/scripts/profile.sh +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/scripts/read_cuts.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3/scripts}/test_matmul.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3/scripts}/test_stack.py +0 -0
- {turbigen-2.4.0/src/embsolve → turbigen-2.7.3/src/ember}/distribute.f90 +0 -0
- {turbigen-2.4.0/src/embsolve → turbigen-2.7.3/src/ember}/indexing.f90 +0 -0
- {turbigen-2.4.0/src/embsolve → turbigen-2.7.3/src/ember}/matmul.f90 +0 -0
- {turbigen-2.4.0/src/embsolve → turbigen-2.7.3/src/ember}/operators.f90 +0 -0
- {turbigen-2.4.0/src/embsolve → turbigen-2.7.3/src/ember}/smooth.f90 +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/__main__.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/autogrid/__init__.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/autogrid/ag_server.sh +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/autogrid/reader.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/autogrid/script_igg.py2 +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/autogrid/server.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/clusterfunc/__init__.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/clusterfunc/check.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/clusterfunc/double.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/clusterfunc/exceptions.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/clusterfunc/plot.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/clusterfunc/single.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/clusterfunc/symmetric.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/clusterfunc/util.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/compflow_native.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/exceptions.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/fluid.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/inlet.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/job.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/marching_cubes.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/mesh.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/nblade.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/op_point.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/polynomial.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/calc_surf_dissipation.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/check_phase.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/find_extrema.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/plot_blade.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/plot_camber.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/plot_incidence.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/plot_nose.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/plot_section.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/plot_thickness.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/spanwise.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/write_cuts.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/write_ibl.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/post/write_stl.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/solvers/base.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/solvers/plot3d.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/src/turbigen/tables.py +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/cascade_splitter.tar.gz +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/cascade_splitter.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/cfd_cut.json +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/hydrogen_table_known_good.npz +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/sections.dat +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/water_table_known_good.npz +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/xcd_yp5_ts3.csv +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/xcd_yp5_turb.csv +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/xcf_ts3.csv +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/xcf_turb_ts3.csv +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/xcf_yp5_ts3.csv +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/data/xcf_yp5_turb.csv +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/gpu/submit.sh +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/gpu/ts3.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/gpu/ts4.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/pdist_ts3.npz +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/plate.yaml +0 -0
- {turbigen-2.4.0 → turbigen-2.7.3}/tests/test_wall.py +0 -0
|
@@ -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.
|
|
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
|
|
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
|
-
|
|
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.
|
|
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.
|
|
54
|
+
print(generate_subclass(turbigen.meanline_design.MeanLineDesigner, "meanline"))
|
|
@@ -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:
|
|
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
|
|
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 `
|
|
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
|
|
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
|
|
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
|
-
|
|
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
|
|
388
|
-
useful quantities are already available in the `
|
|
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
|
|
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
|