https://github.com/comp-physics/rbfcm_cfd
Radial basis function collocation method (RBFCM) in computational fluid dynamics.
Science Score: 23.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
✓DOI references
Found 2 DOI reference(s) in README -
✓Academic publication links
Links to: springer.com -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (11.0%) to scientific vocabulary
Last synced: 10 months ago
·
JSON representation
Repository
Radial basis function collocation method (RBFCM) in computational fluid dynamics.
Statistics
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
- Releases: 0
Fork of BingHanLin/RBFCM_CFD
Created over 4 years ago
· Last pushed over 4 years ago
https://github.com/comp-physics/RBFCM_CFD/blob/master/
# Radial basis function collocation method (RBFCM) for computational fluid dynamics
## Introduction
**RBFCM_CFD** is a simple CFD project that solves some classical fluid prolbems. It is designed to be modified easily by students size_terested in learning meshless method. More features will be added in the future.
***
## Brief theoretical description
The local radial-basis-function collocation method
(LRBFCM) that based on the multiquadric type radial basis function is used to discretize the spatial
derivitives of the governing equations. As a result, a meshless numerical method is developed for
solving problems. The meshless numerical method is much simpler compared with the traditional numerical methods, such as the finite difference method and the finite element method.
***
## Program Structure
* **controlData** \
Reads the configuration data and offers method to access the data.
* **mesh** \
Reads the mesh file and store the information of nodes.
* **rbfBasis** \
Defines the shape parameter and searching radius when it is initialize. Compute the linear operation of the radial basis function and return it.
* **conditionPool** \
Collects the **initial conditions** and **boundary conditions** from configuration.
note: the first index indicate the target node.
* **boundaryConditions** \
Defines the boundary conditions, which fill the coefficient matrix and source vector.
* **initialConditions** \
Defines the initial conditions, which fill solution vector at begining.
* **simulationDomain** \
Execute the simulation which includes matrix assemble and solving.
***
## Examples
1. **LAPLACE equation** \
Laplace equation is solved in a rectangular domain with dirichlet boundary conditions on all sides.

2. **Navier Stokes equation** \
The projection method is used to solve the Navier Stokes equation. A lid-driven square cavity flow case is presented.

***
## Dependencies
The following open source libraries or third party functions are used by this project:
- [Eigen](https://eigen.tuxfamily.org/index.php?title=Main_Page) library for linear algebra.
- [nanoflann](https://github.com/jlblancoc/nanoflann) is a C++ header-only library for building KD-Trees.
***
## References
[1] [Tsai, C.-C., Lin, Z.-H., & Hsu, T.-W. (2015). Using a local radial basis function collocation method to approximate radiation boundary conditions. Ocean Engineering, 105, 231241.](https://doi.org/10.1016/j.oceaneng.2015.06.030)
[2] [Chen, W., Zhuo. & Chen, C. (2014). Recent advances on radial basis function collocation methods. Berlin: Springer](https://www.springer.com/gp/book/9783642395710).
[3] [Catch2](http://blog.guorongfei.com/2016/08/22/cpp-unit-test-catch/)
[4] [Eigen Cheat sheet](https://gist.github.com/gocarlos/c91237b02c120c6319612e42fa196d77)
[5] [Eigen Macros](https://eigen.tuxfamily.org/dox/TopicPreprocessorDirectives.html)
Owner
- Name: Computational Physics @ GT CSE
- Login: comp-physics
- Kind: organization
- Email: shb@gatech.edu
- Website: https://comp-physics.group
- Repositories: 8
- Profile: https://github.com/comp-physics
A computational physics research group with PI Spencer Bryngelson
GitHub Events
Total
- Watch event: 1
Last Year
- Watch event: 1