{"id":21561855,"url":"https://github.com/evertbunschoten/su2_dataminer","last_synced_at":"2025-04-10T12:06:37.989Z","repository":{"id":247938909,"uuid":"827288611","full_name":"EvertBunschoten/SU2_DataMiner","owner":"EvertBunschoten","description":"Workflow for setting up fluid data manifolds for data-driven simulations in SU2","archived":false,"fork":false,"pushed_at":"2025-04-01T14:59:38.000Z","size":15371,"stargazers_count":3,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-01T16:29:55.002Z","etag":null,"topics":["cfd","machine-learning","su2"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/EvertBunschoten.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-11T11:05:21.000Z","updated_at":"2025-04-01T14:59:42.000Z","dependencies_parsed_at":"2024-07-24T17:17:53.964Z","dependency_job_id":"a7e04eb9-19c3-4f15-8c7a-75fd229c554a","html_url":"https://github.com/EvertBunschoten/SU2_DataMiner","commit_stats":null,"previous_names":["evertbunschoten/pinntraining","evertbunschoten/su2_dataminer"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EvertBunschoten%2FSU2_DataMiner","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EvertBunschoten%2FSU2_DataMiner/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EvertBunschoten%2FSU2_DataMiner/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EvertBunschoten%2FSU2_DataMiner/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/EvertBunschoten","download_url":"https://codeload.github.com/EvertBunschoten/SU2_DataMiner/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248217065,"owners_count":21066633,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cfd","machine-learning","su2"],"created_at":"2024-11-24T09:28:29.180Z","updated_at":"2025-04-10T12:06:37.971Z","avatar_url":"https://github.com/EvertBunschoten.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp style=\"margin-bottom:1cm;\"\u003e \u003c/p\u003e\n\u003cp align=\"center\"\u003e\n        \u003cimg src=\"Documentation/images/SU2DataMiner_logo.png\" width=\"200\"/\u003e \n\u003c/p\u003e\n\u003cp style=\"margin-bottom:1cm;\"\u003e \u003c/p\n\u003e\n\n\n# SU2 DataMiner\nThis repository describes the workflow for manifold generation for data-driven fluid modeling in SU2. The workflow allows the user to generate fluid data and convert these into tables and train multi-layer perceptrons in order to retrieve thermo-chemical quantities during simulations in SU2. The applications are currently limited to non-ideal computational fluid dynamics and flamelet-generated manifold simulations for arbitrary fluids and reactants respectively. \n\n## Capabilities\nThe SU2 DataMiner workflow allows the user to generate fluid data and convert these into look-up tables (LUT) or multi-layer perceptrons (MLP) for usage in SU2 simulations. The types of simulations for which this workflow is suitable are flamelet-generated manifold (FGM) and non-ideal computational fluid dynamics (NICFD) simulations. This tool allows the user to start from scratch and end up with a table input file or a set of MLP input files which can immediately be used within SU2. \n\n## Requirements and Set-Up\nThe SU2 DataMiner tool is python-based and was generated with python 3.11. Currently only Linux distributions are supported.\nYou require the following modules for this workflow to run:\n- numpy\n- pickle\n- os\n- CoolProp\n- cantera\n- tqdm\n- csv\n- matplotlib\n- random \n- tensorflow\n- time \n- sklearn\n- pyfiglet\n\nAfter cloning this repository, add the following lines to your ```~/.bashrc``` in order to update your pythonpath accordingly:\n\n```\nexport PINNTRAINING_HOME=\u003cPATH_TO_SOURCE\u003e\nexport PYTHONPATH=$PYTHONPATH:$PINNTRAINING_HOME\nexport PATH=$PATH:$PINNTRAINING_HOME/bin\n```\n\nwhere ```\u003cPATH_TO_SOURCE\u003e``` is the path to where you cloned the repository.\n\nTutorials can be found under ```TestCases```, proper documentation will follow soon.\n\n## Getting Started\n\nGenerating a fluid data manifold for FGM or NICFD applications consists of the following steps:\n\n1. *Generate a configuration*: The manifold settings such as the type of fluid, storage directory and range are stored in a configuration class. Configurations can be defined through python (example scripts are found in the TestCases folder, named ```generate_config.py```) or interactively through terminal inputs. In order to generate a configuration interactively, run the command ```GenerateConfig.py``` in the terminal.\n\n2. *Generate fluid data*: Raw fluid data can be generated once the configuration is defined. Similarly to the configuration set-up, fluid data can be generated through a python interface enabling more flexibility, or through the terminal. Run the command ```GenerateFlameletData.py -h``` to see the available options. Optionally, flamelet data can be visualized through the ```PlotFlamelets.py``` command. \n\n3. *Process fluid data*: Raw fluid data needs to be processed in order to be converted into a manifold usable in SU2. Especially a flamelet-based manifold requires additional steps to convert raw flamelet data into a usable manifold. These steps include optimizing the progress variable, homogenizing the flamelet data, and grouping the various flamelet data into groups of high correlation. TODO: write executable for this step.\n\n4. *Generate manifold*: The processed fluid data is ready for conversion into a manifold for SU2 simulations. The available formats are the look-up table (LUT) and multi-layer perceptron (MLP).\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fevertbunschoten%2Fsu2_dataminer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fevertbunschoten%2Fsu2_dataminer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fevertbunschoten%2Fsu2_dataminer/lists"}