CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM

Looking for OpenFOAM solver suggestions for solar pond modelling

Register Blogs Members List Search Today's Posts Mark Forums Read

Like Tree1Likes

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   October 19, 2017, 06:31
Default Looking for OpenFOAM solver suggestions for solar pond modelling
  #1
Member
 
PATRICIA NAKANWAGI
Join Date: May 2017
Posts: 47
Rep Power: 8
npatricia is on a distinguished road
Greetings,

I am kindly seeking your help on my challenge please.
I am trying to work on a project on solar pond modelling for improved salt production.I am aiming at predicting the optimal pond dimensions, and am presuming at monitoring the evaporation trends at various pond dimensions (depth in particular) to yield the optimal. ( that is see results when a given percentage of brine has been evaporated). i further envisage checking trend with and without a liner material in my pond.

I am a new OpenFoam user, and have been able to read related information concerning the software. My challenge however is choosing the right solver that can best suit my problem. Kindly advise me please

Thank you.
PATRICIA
npatricia is offline   Reply With Quote

Old   October 19, 2017, 06:55
Default
  #2
Senior Member
 
Alexey Matveichev
Join Date: Aug 2011
Location: Nancy, France
Posts: 1,930
Rep Power: 38
alexeym has a spectacular aura aboutalexeym has a spectacular aura about
Send a message via Skype™ to alexeym
Hi,

So, guess, you are trying to model something like this: https://qph.ec.quoracdn.net/main-qim...67db0fea378c6a but without right part.

You can start with buoyantBoussinesq(S|P)impleFoam. If you are interested in steady state use S, if you model transient state, use P.

Heat source, evaporation, and mass transfer can be added using fvOption/functionObject mechanism or by implementing these things directly into solver.
alexeym is offline   Reply With Quote

Old   October 19, 2017, 07:15
Default OpenFOAM
  #3
Member
 
PATRICIA NAKANWAGI
Join Date: May 2017
Posts: 47
Rep Power: 8
npatricia is on a distinguished road
Thank you so much Alexeym.

That is what I want to model.
And where do I feed my governing equations?
Am sorry if I am asking too much.

Thank you
npatricia is offline   Reply With Quote

Old   October 19, 2017, 07:34
Default
  #4
Member
 
PATRICIA NAKANWAGI
Join Date: May 2017
Posts: 47
Rep Power: 8
npatricia is on a distinguished road
Also, what is the difference between steady state and transient state in line with pond modeling
npatricia is offline   Reply With Quote

Old   October 19, 2017, 08:49
Default
  #5
Senior Member
 
M. C.
Join Date: May 2013
Location: Italy
Posts: 286
Blog Entries: 6
Rep Power: 16
student666 is on a distinguished road
Is it an absorption cycle?
student666 is offline   Reply With Quote

Old   October 19, 2017, 09:17
Default
  #6
Senior Member
 
Alexey Matveichev
Join Date: Aug 2011
Location: Nancy, France
Posts: 1,930
Rep Power: 38
alexeym has a spectacular aura aboutalexeym has a spectacular aura about
Send a message via Skype™ to alexeym
@npatricia

Concerning governing equations, buoyantBoussinesq(S|P)impleFoam assumes they are Navier-Stokes with buoyancy described in Boussinesq approximation. So you just generate mesh for your geometry, set boundary conditions, run simulation (the solver at least looks simular to what is described here: http://www.sciencedirect.com/science...76610214016178). Additional terms in equations could go into system/fvOptions.

Steady/transient: it depends on what you are interested in. Obviously, there is no abstract "pond modelling", you are trying to extract data from simulation. So if you need to track evolution, use PIMPLE; otherwise you can use either of them.
alexeym is offline   Reply With Quote

Old   October 19, 2017, 09:59
Default
  #7
Member
 
PATRICIA NAKANWAGI
Join Date: May 2017
Posts: 47
Rep Power: 8
npatricia is on a distinguished road
More like it, solar being the main energy source to facilitate the evaporation process.
npatricia is offline   Reply With Quote

Old   October 19, 2017, 10:01
Default
  #8
Member
 
PATRICIA NAKANWAGI
Join Date: May 2017
Posts: 47
Rep Power: 8
npatricia is on a distinguished road
@Alexeym, thank you so much for the information.
I appreciate.
npatricia is offline   Reply With Quote

Old   October 27, 2017, 11:08
Default
  #9
Member
 
PATRICIA NAKANWAGI
Join Date: May 2017
Posts: 47
Rep Power: 8
npatricia is on a distinguished road
Greetings to you all,

I am stuck on defining the appropriate boundary conditions for my problem. I am humbly seeking your help please.

Thank you
npatricia is offline   Reply With Quote

Old   October 27, 2017, 17:28
Default
  #10
Senior Member
 
Alexey Matveichev
Join Date: Aug 2011
Location: Nancy, France
Posts: 1,930
Rep Power: 38
alexeym has a spectacular aura aboutalexeym has a spectacular aura about
Send a message via Skype™ to alexeym
Hi,

Could you elaborate? Step with creating a mesh went well?
alexeym is offline   Reply With Quote

Old   November 1, 2017, 02:51
Default
  #11
Member
 
PATRICIA NAKANWAGI
Join Date: May 2017
Posts: 47
Rep Power: 8
npatricia is on a distinguished road
I am trying to model an open pond (no inlet and outlet), i am looking at working on two test cases, one with a rectangular domain, the other trapezoidal to check their temperature evolution at different depths in both. I have managed to create the mesh for the rectangular.

Initially, the surface pond temperature is equal to ambient temperature, and i want the vertical and bottom walls to adiabatic and impermeable. the free surface of my pond is only subjected to heat losses by convection, evaporation and radiation (which respective equations i have).
I am stuck on where to feed these additional equations, and the right boundary conditions to choose for my model.

I am kindly seeking some guidance on this.
Thank you so much.

PATRICIA
npatricia is offline   Reply With Quote

Old   November 2, 2017, 04:54
Default
  #12
Senior Member
 
Alexey Matveichev
Join Date: Aug 2011
Location: Nancy, France
Posts: 1,930
Rep Power: 38
alexeym has a spectacular aura aboutalexeym has a spectacular aura about
Send a message via Skype™ to alexeym
Hi,

Let's check if I understood you right.

1. You have a reservoir, which is represented by a mesh. It is filled with a water. You are interested in temperature distribution inside the reservoir. Or is it temperature evolution?

2. Your reservoir exchanges with a world through top surface.

3. In the reservoir temperature evolves due to:
- convection (is it convection caused by thermal buoyancy, or you are also interested in solutal?). This feature is already in the solver.
- radiation at the top surface.
- evaporation at the top surface.

So I would propose the following boundary conditions:

Velocity: noSlip everywhere except top surface, where it is vice-versa, i.e. slip.
Pressure: zeroGradient everywhere.
Temperature: zeroGradient everywhere.

Concerning your heat losses. I would propose to use surfacial source terms through fvOption mechnism. I.e. you select cell at the top surface into topSurface cell set and then use codedFvOption to specify equations of your models.

Alternatively you can modify buoyantBoussinesq(P|S)impleFoam solver to include your source terms instead of using fvOptions.
alexeym is offline   Reply With Quote

Old   November 2, 2017, 09:38
Default
  #13
Member
 
PATRICIA NAKANWAGI
Join Date: May 2017
Posts: 47
Rep Power: 8
npatricia is on a distinguished road
Quote:
Originally Posted by alexeym View Post
Hi,

Let's check if I understood you right.

1. You have a reservoir, which is represented by a mesh. It is filled with a water. You are interested in temperature distribution inside the reservoir. Or is it temperature evolution?

2. Your reservoir exchanges with a world through top surface.

3. In the reservoir temperature evolves due to:
- convection (is it convection caused by thermal buoyancy, or you are also interested in solutal?). This feature is already in the solver.
- radiation at the top surface.
- evaporation at the top surface.

So I would propose the following boundary conditions:

Velocity: noSlip everywhere except top surface, where it is vice-versa, i.e. slip.
Pressure: zeroGradient everywhere.
Temperature: zeroGradient everywhere.

Concerning your heat losses. I would propose to use surfacial source terms through fvOption mechnism. I.e. you select cell at the top surface into topSurface cell set and then use codedFvOption to specify equations of your models.

Alternatively you can modify buoyantBoussinesq(P|S)impleFoam solver to include your source terms instead of using fvOptions.
thank you so much Alexeym for the reply,
This is more like it. Specifically, am trying to model and optimize a solar pond for improved salt production in my area, that is why i thought of checking how temperature evolves in the pond, to link this to evaporation rate enhancement fostering salt crystallization. (the buoyancy term can be neglected being a salt solution)

I also kindly request to through more light on the fvoption mechanism of dealing with my heat losses. tried to read about it, but am failing to get exactly what to do.

I also tried to mesh my geometry and i was successful, but when i try again with the exact pond dimensions, am getting a fatal error. I am really lost yet i need to have this model as soon as possible.
Please, i am kindly requesting for you help.
Thank you.

the error is as below;

---FOAM FATAL IO ERROR:
cannot find file

file: /home/tflows/OpenFOAM/OpenFAOM-2.4.0/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/system/controlDict at line 0.

From function regI0object: :readStream( )
in file db/regIOobject/regIOobjectRead.C at line 73.

FOAM exiting
npatricia is offline   Reply With Quote

Old   November 3, 2017, 06:49
Default
  #14
Member
 
PATRICIA NAKANWAGI
Join Date: May 2017
Posts: 47
Rep Power: 8
npatricia is on a distinguished road
I was able to see the cause of the fatal error message, and successfully meshed my domain.
npatricia is offline   Reply With Quote

Old   November 6, 2017, 09:24
Default
  #15
Senior Member
 
Alexey Matveichev
Join Date: Aug 2011
Location: Nancy, France
Posts: 1,930
Rep Power: 38
alexeym has a spectacular aura aboutalexeym has a spectacular aura about
Send a message via Skype™ to alexeym
Hi,

I have created example case with codedSource fvOption. You can find it here:

https://github.com/mrklein/foam-case...ter/solar-pond

I have tried to explain how everything is done in README.pdf.

One of the possible problems could be version incompatibilities: I use 5.x, you use 2.4.0, so you have to adapt certain BCs and maybe fvOptions configuration dictionary.

If you have question, post them here.
mikethe1wheelnut likes this.
alexeym is offline   Reply With Quote

Old   November 7, 2017, 07:27
Default
  #16
Member
 
PATRICIA NAKANWAGI
Join Date: May 2017
Posts: 47
Rep Power: 8
npatricia is on a distinguished road
Thank you so much Alexeymn. This is surely helpful.
God bless you

PATRICIA
npatricia is offline   Reply With Quote

Old   November 8, 2017, 06:12
Default
  #17
Member
 
PATRICIA NAKANWAGI
Join Date: May 2017
Posts: 47
Rep Power: 8
npatricia is on a distinguished road
Greetings,

I am having a challenge of which I kindly seek your help.
I have managed to work on my case, but when I try to view it geometry using paraFoam, I get the error message below.

--> FOAM FATAL IO ERROR:

Cannot find 'value' entry on patch bottom of field U in file "/home/tflows/OpenFOAM/OpenFOAM-2.4.0/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/SolarPond_1/0/U"
which is required to set the values of the generic patch field.
(Actual type noSlip)

Please add the 'value' entry to the write function of the user-defined boundary-condition


file: /home/tflows/OpenFOAM/OpenFOAM-2.4.0/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/SolarPond_1/0/U.boundaryField.bottom from line 30 to line 30.

From function genericFvPatchField<Type>::genericFvPatchField(con st fvPatch&, const Field<Type>&, const dictionary&)
in file genericFvPatchField/genericFvPatchField.C at line 71.

FOAM exiting

I have no idea what this means.
Kindly need some assistance here.
Thank you.

PATRICIA
npatricia is offline   Reply With Quote

Old   November 8, 2017, 09:46
Default
  #18
Senior Member
 
Alexey Matveichev
Join Date: Aug 2011
Location: Nancy, France
Posts: 1,930
Rep Power: 38
alexeym has a spectacular aura aboutalexeym has a spectacular aura about
Send a message via Skype™ to alexeym
This is a start of incompatibilities between 2.4.0 and 5.x (maybe you can upgrade you OpenFOAM?).

In 2.4.0 there is no noSlip boundary condition. You have to use "fixedValue" with "value uniform (0 0 0)". See U file in tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/0 for example.

Also you need to fix changeDictionaryDict file, in 2.4.0 boundary dictionary has to be included in dictionaryReplacement dictionary.
alexeym is offline   Reply With Quote

Old   November 9, 2017, 05:58
Default
  #19
Member
 
PATRICIA NAKANWAGI
Join Date: May 2017
Posts: 47
Rep Power: 8
npatricia is on a distinguished road
Thank you so much Alexeym.
Let me try to upgrade to OpenFoam 5.0.

Thank you
PATRICIA
npatricia is offline   Reply With Quote

Old   June 12, 2018, 10:17
Default
  #20
Member
 
PATRICIA NAKANWAGI
Join Date: May 2017
Posts: 47
Rep Power: 8
npatricia is on a distinguished road
Greetings @Alexemy,


Attached is a file for my trial case on solar pond optimization. i have tried to include the concentration equation, accounting for mass transfer. my core goal is to enhance evaporation (looking at influencing parameters depth, and insulation). Kindly seeking your opinion about it.
I wish to validate the solar pond model with a week's experimental work on temperature evolution in a pond, using a black polythene material for lining the pond. Is there a way I can incorporate this lining effect in an OpenFoam model?
Attached Files
File Type: gz Untitled Folder.tar.gz (2.0 KB, 14 views)
npatricia is offline   Reply With Quote

Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Working directory via command line Luiz CFX 4 March 6, 2011 21:02
why the solver reject it? Anyone with experience? bearcat CFX 6 April 28, 2008 15:08
compressible two phase flow in CFX4.4 youngan CFX 0 July 2, 2003 00:32
CFX 5.5 Roued CFX 1 October 2, 2001 17:49
Setting a B.C using UserFortran in 4.3 tokai CFX 10 July 17, 2001 17:25


All times are GMT -4. The time now is 12:14.