C++ Development

The underlying design philosophy of C and C++ can be summed up as “trust the programmer” – which is both wonderful and dangerous. Therefore there are three concepts that the programmer must trust:

C++ excels in situations where high performance and precise control over memory and other resources is needed.

The steps in the development are as follows: Define the problem

Create a new CFD code How you are going to solve the problem

Break the problem into parts, e.g.

  • create data structures

  • read in mesh data

  • process mesh data Write the program

.cpp file. Need to:

  • Know programming language

  • Have a good editor e.g. VIM Compile source code

  • Check that rules are being followed

  • Generates object file .o from .cpp Testing and Debugging

Test for:

  • Functionality - input-output (parts of program)

  • Application - user interface, integration (whole program)

  • Regression - backwards compatibility

  • Performance - CPU time, scalability