CFD Online Discussion Forums

CFD Online Discussion Forums (
-   SU2 (
-   -   Constant Heat Flux Boundary Condition on Long Thin Pipe (

CGramlich March 27, 2013 09:05

Constant Heat Flux Boundary Condition on Long Thin Pipe
I am having difficulty applying a heat flux boundary condition on a turbulent thin pipe flow. My guess would be to start with the CUSTOM_MARKER, but still no avail for this tactic. Any other suggestions, or maybe a tutorial on how to make a constant heat flux boundary condition using the CUSTOM_MARKER?

copeland April 15, 2013 16:45

Hi CGramlich,

I think your suggestion of a custom boundary condition tutorial is an excellent one. The development team is aware of the lack of instruction on implementing new features in the code and are working on some tutorials geared more toward developers. Stay tuned for more updates on that front.

Indeed, your idea of starting at the CUSTOM_MARKER is the best approach to implement a constant heat flux boundary condition. Both the Laminar NS and RANS equations are child classes of the Euler class, so you can perform your implementation of the custom boundary condition in

CEulerSolution::BC_Custom(CGeometry *geometry, CSolution **solution_container, CNumerics *solver, CConfig *config, unsigned short val_marker)

located in the solution_direct_mean.cpp file of SU2_CFD.

Go ahead and delete whatever contents may already be in the BC_Custom routine and copy the contents of the following routine into BC_Custom:

CNSSolution::BC_NS_Wall(CGeometry *geometry, CSolution **solution_container, CNumerics *solver, CConfig *config, unsigned short val_marker)

This is an implementation of an adiabatic wall condition, a subset of the constant heat flux condition that you require. Simply add the contribution to the Viscous residual (and include the proper terms in the Jacobian if you're performing an implicit calculation) and you should be successful. You can examine the Isothermal wall boundary condition:

CNSSolution::BC_Isothermal_Wall(CGeometry *geometry, CSolution **solution_container, CNumerics *solver, CConfig *config, unsigned short val_marker)

for an example of this methodology if it's helpful.

Hope that's helpful, and please let me know if you continue to have difficulty. As I mentioned, please stay tuned for updates on developer tutorials. Thanks.


copeland April 18, 2013 16:27

So a quick update on this -- the development team is re-structuring and re-organizing the no-slip wall boundary conditions to enable both isothermal and specified constant heat-fluxes. We are currently validating the implementations, and unfortunately they are not available in the development source released today (v2.0.3), but they should be in place for the next development release next month (v2.0.4). If you would like more details, please feel free to follow up with me, or any of the developers.

CGramlich April 22, 2013 08:25

Yes, I would very much like to continue this conversation when the new version of the code is available for download next month. Thank you for the previous response as well.

All times are GMT -4. The time now is 19:39.