Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Neumann BC for heat #1000

Merged
merged 44 commits into from
Feb 1, 2024
Merged

Neumann BC for heat #1000

merged 44 commits into from
Feb 1, 2024

Conversation

voferreira
Copy link
Collaborator

@voferreira voferreira commented Jan 26, 2024

Description of the problem

  • Lethe did not have a constant heat flux (Neumann) BC

Description of the solution

  • Implemented a heat flux boundary condition

How Has This Been Tested?

  • 2D jet case
  • Add application test

Documentation

  • Added the parameters to the documentation

Future changes

  • Make it space dependent as well as emissivity, h, and Tinf
  • Needs some cleaning
  • Make an example

Copy link
Contributor

@blaisb blaisb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some mistakes in the weak form and I would name that heat flux instead of heat source

@voferreira voferreira added WIP When a PR is open but not ready for review and removed Ready for review labels Jan 26, 2024
@oguevremont
Copy link
Collaborator

Nice addition!

Copy link
Collaborator

@AmishgaAlphonius AmishgaAlphonius left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice addition! I'm surprised that it wasn't there before! Even more, that I only realized it yesterday when we talked about it. :)

@voferreira voferreira added WIP When a PR is open but not ready for review and removed WIP When a PR is open but not ready for review labels Jan 26, 2024
Co-authored-by: Olivier Guévremont <[email protected]>
@AmishgaAlphonius
Copy link
Collaborator

AmishgaAlphonius commented Jan 26, 2024

Also, I just realized, but an application-test can also be added for this new BC. :)

Co-authored-by: Amishga Alphonius <[email protected]>
@blaisb
Copy link
Contributor

blaisb commented Jan 26, 2024

I think adding an application test would be a good idea. I agree with @AmishgaAlphonius

@voferreira voferreira added WIP When a PR is open but not ready for review and removed Reviewed and waiting for changes labels Jan 29, 2024
@voferreira
Copy link
Collaborator Author

As prof @blaisb and I have discussed Today, I will add the imposed heat flux as a term to the Robin BC again because it is more versatile. This will help with the further implementation of the space-dependent Robin BC.

@voferreira voferreira requested a review from blaisb January 31, 2024 00:18
Copy link
Collaborator

@AmishgaAlphonius AmishgaAlphonius left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One small comment :)

@@ -57,13 +61,20 @@ The default parameters for ``temperature`` and ``convection-radiation`` are show
* ``type``: type of boundary condition being imposed. At the moment, choices are:
* ``noflux`` (default) so that there is no heat transfer boundary condition,
* ``temperature`` (Dirichlet BC), to impose a given temperature ``value`` at the boundary,
* ``convection-radiation`` (Robin BC) for cooling/heating, depending on the environment temperature at the boundary ``Tinf``, with a given heat transfer coefficient ``h`` and emissivity of the boundary :math:`\mathbf{\epsilon}` following Newton's law of cooling (and heating) and Stefan-Boltzmann law of radiation. Note that the expressions for ``h``, ``Tinf`` and ``emissivity`` can be time-dependent, but the current implementation doesn't allow for space dependence (the expressions are evaluated at the origin).
* ``convection-radiation`` (Robin BC) for cooling/heating, depending on the environment temperature at the boundary ``Tinf``, with a given heat transfer coefficient ``h`` and ``emissivity`` of the boundary :math:`\mathbf{\epsilon}` following Newton's law of cooling (and heating) and Stefan-Boltzmann law of radiation. It is also possible to impose a given heat flux (:math:`q_0`) by using the parameter ``heat_flux``. This BC can be represented by:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe we would want to rename convection-radiation convection-radiation-flux? If so. I would add a CHANGELOG. But if you want, we can do this in a next PR... This way we can merge this one now

@blaisb
Copy link
Contributor

blaisb commented Jan 31, 2024

@voferreira write to me on slack when ready for merge :)

Co-authored-by: Amishga Alphonius <[email protected]>
@voferreira voferreira added Reviewed and ready to merge and removed WIP When a PR is open but not ready for review labels Jan 31, 2024
@blaisb
Copy link
Contributor

blaisb commented Jan 31, 2024

can you please fix CI @voferreira

@blaisb blaisb merged commit a3a1d26 into master Feb 1, 2024
8 checks passed
@blaisb blaisb deleted the heat_neumann_bc branch February 1, 2024 01:26
blaisb added a commit that referenced this pull request May 14, 2024
Description of the problem
The convection-radiation-flux boundary condition had function expression parameters that were not space dependent.
Description of the solution
Made it space-dependent using the function evaluation at the quadrature point position.
How Has This Been Tested?
Simple 2D heat flux case. The test was added to the application tests.
Documentation
Remove disclaimer from parameters guide regarding the no longer existent limitation.
Comments
This PR is a follow up of PR Neumann BC for heat #1000 .
There is no way to have set number of fluids = 0. This was added to the maintenance project and I will fix it in another PR.

Co-authored-by: voferreira <[email protected]>
Co-authored-by: Bruno Blais <[email protected]>
M-Badri pushed a commit to M-Badri/lethe that referenced this pull request Sep 29, 2024
Description of the problem
Lethe did not have a constant heat flux (Neumann) BC
Description of the solution
Implemented a heat flux boundary condition
How Has This Been Tested?
2D jet case
 Add application test
Documentation
Added the parameters to the documentation
Future changes
Make it space dependent as well as emissivity, h, and Tinf
Needs some cleaning
Make an example

Co-authored-by: voferreira <[email protected]>
Co-authored-by: Olivier Guévremont <[email protected]>
Co-authored-by: Amishga Alphonius <[email protected]>
Co-authored-by: Bruno Blais <[email protected]>
Former-commit-id: a3a1d26
M-Badri pushed a commit to M-Badri/lethe that referenced this pull request Sep 29, 2024
)

Description of the problem
The convection-radiation-flux boundary condition had function expression parameters that were not space dependent.
Description of the solution
Made it space-dependent using the function evaluation at the quadrature point position.
How Has This Been Tested?
Simple 2D heat flux case. The test was added to the application tests.
Documentation
Remove disclaimer from parameters guide regarding the no longer existent limitation.
Comments
This PR is a follow up of PR Neumann BC for heat chaos-polymtl#1000 .
There is no way to have set number of fluids = 0. This was added to the maintenance project and I will fix it in another PR.

Co-authored-by: voferreira <[email protected]>
Co-authored-by: Bruno Blais <[email protected]>
Former-commit-id: 51ace0e
blaisb added a commit that referenced this pull request Sep 30, 2024
Description of the problem
Lethe did not have a constant heat flux (Neumann) BC
Description of the solution
Implemented a heat flux boundary condition
How Has This Been Tested?
2D jet case
 Add application test
Documentation
Added the parameters to the documentation
Future changes
Make it space dependent as well as emissivity, h, and Tinf
Needs some cleaning
Make an example

Co-authored-by: voferreira <[email protected]>
Co-authored-by: Olivier Guévremont <[email protected]>
Co-authored-by: Amishga Alphonius <[email protected]>
Co-authored-by: Bruno Blais <[email protected]>
Former-commit-id: a3a1d26
blaisb added a commit that referenced this pull request Sep 30, 2024
Description of the problem
The convection-radiation-flux boundary condition had function expression parameters that were not space dependent.
Description of the solution
Made it space-dependent using the function evaluation at the quadrature point position.
How Has This Been Tested?
Simple 2D heat flux case. The test was added to the application tests.
Documentation
Remove disclaimer from parameters guide regarding the no longer existent limitation.
Comments
This PR is a follow up of PR Neumann BC for heat #1000 .
There is no way to have set number of fluids = 0. This was added to the maintenance project and I will fix it in another PR.

Co-authored-by: voferreira <[email protected]>
Co-authored-by: Bruno Blais <[email protected]>
Former-commit-id: 51ace0e
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants