File Exchange

image thumbnail

uFVM

version 1.55 (2.36 MB) by Mhamad Mahdi Alloush
Learning the Finite Volume Method in CFD with MATLAB Programming

63 Downloads

Updated 14 Feb 2020

GitHub view license on GitHub

uFVM is an academic CFD tool made for learning purposes. The main outcome of that is learning how to code the finite volume method. plenty of tutorials are available within the file that the user can easily follow and track. CFD cases can be prepared exactly as OpenFOAM files and simulated. The code aims at highlighting the basics of CFD, but not simulating complex cases. It provides a package of libraries and algorithms that the user can comfortably follow up. The code includes a toy post processing package for the visualization of the results. Refer to the quick guide provided in the files for more information on how to use the code.

Handling, distributing or modifying is fully permissible; the user has the full permission to add any piece of code or modify an existing one. The code is developed in the computational mechanics lab at the American University of Beirut, Beirut, Lebanon. The development has started in 2003 and was built and updated gradually through years. The team has decided to share this code (Actually a limited edition but nevertheless very interesting one) with the community. Lots of versions were made each of them had a different structure but necessarily the same theoretical background. The major contributor to the code is Professor Marwan Darwish, a CFD professor at AUB, and Mhamad Mahdi Alloush, a PhD candidate at AUB as well. The other contributors to the code are Master and PhD students who accomplished their theses and dissertations from the computational mechanics lab at the American University of Beirut.

Please contact us at cfd@aub.edu.lb for more information, and/or providing any feedback.

CFD Group @ AUB

Cite As

Mhamad Mahdi Alloush (2020). uFVM (https://www.github.com/mhamadAlloush/uFVM), GitHub. Retrieved .

Comments and Ratings (14)

Tried following the example but got the following errors

Undefined function 'rms' for input arguments of type 'double'.

Error in cfdComputeScaledRMSResiduals (line 30)
rmsScaledResidual = rms(abs(bc)./(ac*p_scale));

Error in cfdPostAssembleContinuityEquation (line 13)
cfdComputeScaledRMSResiduals('p');

Error in cfdAssembleContinuityEquation (line 18)
cfdPostAssembleContinuityEquation;

Error in cfdAssembleAndCorrectContinuityEquation (line 19)
cfdAssembleContinuityEquation;

Error in cfdAssembleAndCorrectNSSystem (line 15)
cfdAssembleAndCorrectContinuityEquation;

Error in cfdRunFalseTransientCase (line 48)
cfdAssembleAndCorrectNSSystem;

Error in cfdRunCase (line 15)
cfdRunFalseTransientCase;

Error in cfdRun (line 21)
cfdRunCase;

Thank you very much! It is very helpful!It would be perfect if there are functions for grid transformation such as fluent3DMeshToFoam~

Can you please tell me on the list of toolbox required to run this code. Currently I have MATLAB, MATLAB coder, symbolic MATH toolbox.
When i tried running this code, It said the signal processing toolbox in missing in my lic.

Thank you

Regards
Ganesh

Please refer to the youtube video to set the paths properly .. here's the link it is a tutorial on how to work with ufvm :-)

https://www.youtube.com/watch?v=zbOngaJj8HE

run tutorials\incompressible\elbow ----

Undefined function or variable 'setupTerm'。

error cfdAddTerm (line 13)
theTerm = setupTerm(theTermName);%%connor del

error cfdDefineMomentumEquation (line 30)
cfdAddTerm('U', 'FalseTransient');

Shaopeng Li

Ragheb Raad

efficient and covers everything. Very extensive and exhaustive

Ali Saleh

Thank you for sharing this valuable CFD resources. It facilitates much more solving and understanding CFD.

Amazing package! Thank you so much for sharing such a valuable source code! I'm sure it will make the lives of so many people much easier :-)!

We are always updating the app, so feel free to provide feedback!

Updates

1.55

Few Updates + Connected to github

1.54

Updated user guide to include how to setup a customized flow simulation + made some fixes as per user requests

1.53

More fixes as per users' feedback

1.52

Bug Fixed - Related to Buoyancy

1.51

Bug Fixed

MATLAB Release Compatibility
Created with R2016a
Compatible with any release
Platform Compatibility
Windows macOS Linux

src/assemble

src/assemble/Energy

src/assemble/NSAssembly

src/assemble/NSAssembly/Continuity

src/assemble/NSAssembly/Momentum

src/assemble/Scalar

src/basic

src/coefficients

src/control

src/fields

src/fields/Gradient

src/fields/Scalar

src/fields/Vector

src/fluid

src/interpolate

src/math

src/mesh

src/mesh/IO

src/model

src/model/Continuity

src/model/Energy

src/model/Equation

src/model/Momentum

src/model/Scalar

src/multigrid

src/multigrid/FAS-Cycle

src/multigrid/Interpolate

src/region

src/solve

src/time

src/types

tutorials/basic/flange

tutorials/basic/stepProfile

tutorials/compressible/bump

tutorials/heatTransfer/hotRoom

tutorials/incompressible/airfoil

tutorials/incompressible/bump

tutorials/incompressible/elbow

tutorials/incompressible/movingLid

utilities/IO

utilities/IO/File

utilities/IO/Foam

utilities/IO/Write

utilities/graphics

utilities/graphics/postProcessing

utilities/print

utilities/tools