Difference between revisions of "Day 12"

From OpenFOAM Wiki
Jump to navigation Jump to search
 
(12 intermediate revisions by the same user not shown)
Line 1: Line 1:
Welcome back to Day 12. Today we will continue to explore the possibilities OpenFOAM offers to extend the source code according to our needs. With this users are able to tackle all physical problems, which are described by partial differential equations. We will concentrate on implementing solvers, libraries as well as utilities.  
+
Welcome back to Day 12. Today we will continue to explore the possibilities OpenFOAM offers to extend the source code according to our needs. First start with a video of Professor Jasak on programming and see, whether you can follow the other two tutorials.
 
 
* applications
 
* libraries
 
* utilities
 
* function objects
 
* material models
 
* C++ functionalities
 
* debugging
 
  
 
Go back to [https://wiki.openfoam.com/index.php?title=%223_weeks%22_series "3 weeks" series].
 
Go back to [https://wiki.openfoam.com/index.php?title=%223_weeks%22_series "3 weeks" series].
  
=[https://wiki.openfoam.com/Programming_by_Stefan_Radl Programming - introduction]=
+
=[https://wiki.openfoam.com/Programming_by_Kenneth_Hoste_and_Hrvoje_Jasak Programming in OpenFOAM]=
  
This series of videos gives you an excellent introduction to programming in OpenFOAM from a C++ point of view. Starting with small handy utilities you will further expand your understanding of programming in C++ and OpenFOAM. The topics covered are:
+
This video lets all the gained information sink in. With it you will be able to understand the simulations you ran up until now and you will implement this knowledge in upcoming cases. You will learn about
  
* C++ basics
+
* organizing your work
* compilation
+
* creating your own application
* code structure
+
* adding a boundary condition
* starting point
+
* programming guidelines
* testing
+
* consistent styling
 +
* debugging
  
=[https://wiki.openfoam.com/Programming_by_Hakan_Nilsson Programming part of the course by Håkan Nilsson]=
+
=[https://wiki.openfoam.com/Programming_by_Henrik_Rusche Scalar Transport: Swirl Test]=
  
Here you will find a links to the course provided by Håkan Nilsson at Chalmers university as well as some selected pdfs on programming.
+
With your gained experience you will create a new solver here for a different application and test it with a modified case setup. The focus is on:
  
* high level programming
+
* types of source files
* implementation of an application
+
* applications
* implementation of a turbulence model
+
* utilities
* implementation of a boundary condition
+
* build system
* implementation of a function object
+
* modifying a case setup
* basics of C++
 
* debugging in OpenFOAM
 
  
=[https://wiki.openfoam.com/Simulating_chocolate_by_Gavin_Tabor Modeling chocolate]=
+
=[https://wiki.openfoam.com/Coupled_heat_transfer_in_gas_and_solid_by_Ilia_Marchevsky Coupled heat transfer in gas and solid]=
  
This tutorial is an excellent summary of all the information you will need to implement your own custom solvers or libraries in OpenFOAM by taking you through the implementation amongst others on the Casson model, which describes the flow of molten chocolate. The focus is on:
+
This tutorial gives you a short introduction on the implementation of coupled heat transfer in gas and solid in OpenFOAM. Here the focus is on:
  
* header files
+
* solver structure
* base types
+
* compiling
* fvMesh
+
* existing solvers
* GeometricField
+
* modifying and running a case
* IOobject and objectRegistry
 
* Higher-level programming
 
* fvc::, fvm:: operators
 
* compilation
 
* Boussinesq approximation
 
* Casson model
 
  
 
=End of Day 12=
 
=End of Day 12=
  
We arrived at the end of Day 12. By now you should be able to run not only simulations of real life problems, but you should have an extensive experience as well as knowledge on how to implement your own additional model, if your problem cannot be described by the standard models in OpenFOAM. Tomorrow we will com back with some tutorials on (conjugate) heat transfer and reacting flows. Until then take a break.
+
We arrived at the end of Day 12. By now you should be able to run not only simulations of real life problems, but you should have some experience as well as knowledge on how to implement your own additional model.

Latest revision as of 11:28, 25 March 2020

Welcome back to Day 12. Today we will continue to explore the possibilities OpenFOAM offers to extend the source code according to our needs. First start with a video of Professor Jasak on programming and see, whether you can follow the other two tutorials.

Go back to "3 weeks" series.

Programming in OpenFOAM

This video lets all the gained information sink in. With it you will be able to understand the simulations you ran up until now and you will implement this knowledge in upcoming cases. You will learn about

  • organizing your work
  • creating your own application
  • adding a boundary condition
  • programming guidelines
  • consistent styling
  • debugging

Scalar Transport: Swirl Test

With your gained experience you will create a new solver here for a different application and test it with a modified case setup. The focus is on:

  • types of source files
  • applications
  • utilities
  • build system
  • modifying a case setup

Coupled heat transfer in gas and solid

This tutorial gives you a short introduction on the implementation of coupled heat transfer in gas and solid in OpenFOAM. Here the focus is on:

  • solver structure
  • compiling
  • existing solvers
  • modifying and running a case

End of Day 12

We arrived at the end of Day 12. By now you should be able to run not only simulations of real life problems, but you should have some experience as well as knowledge on how to implement your own additional model.