CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   Main CFD Forum (http://www.cfd-online.com/Forums/main/)
-   -   CFD software development (http://www.cfd-online.com/Forums/main/11959-cfd-software-development.html)

 Jonathan August 7, 2006 14:16

CFD software development

Hi Gentlemen..

I'm a mechanical engineer. I'm a novice in field of CFD. Though I have used tools like Fluent for analysis. I dont know to develop programs for CFD. I would like to know how to start developing codes.

I would like to know 1. Where to start? 2. What concepts should I be thorough? 3. What kind of resources are available on web for CFD solver development? 4. What languages can I work on? 5. How to proceed? 6. What books can I read? ( I read John D Anderson and Anderson Tanehill, Fletcher for numerics)

Thanks a ton for your guidance.

 ztdep August 7, 2006 20:55

Re: CFD software development

start from the discretisation of PDE, and grid system, and the solving of the linear algebraic system. I used fortran for the code! all high level language can do it! Ferziger J.H., Peric M. ,Computational methods for fluid dynamics . Pantarka <numerical heat transfer and fluid flow> is mainly for incompressible flow!

 hurricane August 8, 2006 03:12

Re: CFD software development

Well, basically, there's three major part in a CFD Solver : the preprocessor, or data input, the processor, or calculus, and the postprocessor, or the results.

As you can deduct by yourself, the most important part is the processor and roughly the steps to write one are :

- Problem's mathematical formulation : Hypothesis, equations, boundary and initial conditions.

- Spatial and temporal discretisation, i.e. meshing and temporal steps.

- Numerical scheme : you can choose a famous one in the beginning and here you will need books like Anderson.

- An algorithm like : 1 - temporal step calculus 2- numerical scheme 3- convergence check , if no go to 1.

- Maybe other numerical methods depending the hypothesis : for example in incompressible flows you'll also need to resolve the pressure equation.

And that's all I think. For the preprocessor you can use the terminal input. For the postprocessor there's a lot of softwares like gnuplot (free) or techplot (share).

Concerning the programming language try to use one you master, generally the cfd community work using C, C++ or Fortran, but of course there's people working with other languages.

Hope that I give you some useful informations. Good luck.

 All times are GMT -4. The time now is 17:09.