|
[Sponsors] |
August 25, 2008, 10:52 |
Hi all
I want to write a gr
|
#1 |
New Member
Dragan Vidovic
Join Date: Mar 2009
Posts: 17
Rep Power: 17 |
Hi all
I want to write a groundwater solver, i.e. a potential solver with heat and mass transfer. All groundwater solvers that I have seen have so called "privileged routes", i.e. one-dimensional features in a three-dimensional mesh (pipes in the ground, maybe permeable towards the outside), having their own (larger or infinite) longitudinal permeability. Is this concept compatible with OpenFOAM? Do I have to write a separate 1d solver and couple it with OpenFOAM, or is there any simpler way to do this? Modeling these pipes in 3d would add much computational effort because they are much thinner than the finite volumes that I want to use, so this is not an option. Thanks. Dragan |
|
August 29, 2008, 09:42 |
You would have to write an add
|
#2 |
Senior Member
Eugene de Villiers
Join Date: Mar 2009
Posts: 725
Rep Power: 21 |
You would have to write an additional 1D component and couple that to volume solver via sources and sinks. Not trivial, but not that difficult either.
|
|
September 3, 2008, 11:08 |
Hi Dragan and Eugene
although
|
#3 |
Guest
Posts: n/a
|
Hi Dragan and Eugene
although working on a different problem, the procedure how to couple model regions of differenct dimensionality is interesting for me as well. I'd assume that the pipe would be described by a quasi-1D model which is a 3D model with only one cell along the y- and z-direction, yes? Given the solution in the pipe and in the surrounding volume I can calculate the flux across the pipe boundary. But how do I couple the two systems? I have to concatenate the matrices of both regions into a single larger one and add sources (sinks) to each matrix row representing a boundary cell. Are any functions available for this purpose, or do I have to do low level modifications by adding each matrix element into the coupled matrix one by one? Thank you Karl |
|
September 3, 2008, 12:26 |
Hi Karl
If you have an arra
|
#4 |
New Member
Dragan Vidovic
Join Date: Mar 2009
Posts: 17
Rep Power: 17 |
Hi Karl
If you have an array of cells that's 3d, as you said. That's fine, but if your cells need to be very thin you might be in trouble. I'm not sure how OpenFOAM would handle large differences in neighboring cell sizes. Actually what they do in finite elements is that they make up 1d pipes of edges. The problem with finite volumes is that variables are stored in cells, so this concept of 1d pipes might make little sense here. Although, if you are going to make a coupled solver, then you may store the primary variables of the 1d solver in the fv edges. But this 1d solver is not going to be OpenFOAM I guess. Anyway, if an array of cells is good enough for you then take a look at fvMeshSubset and http://www.cfd-online.com/OpenFOAM_D...tml?1188316892 . I think you can forget about making one large matrix - as far as I know there is no coupled solver in OpenFOAM yet. You would have to solve these systems in a segregated way - you solve one, use the solution to compute the sources of the second system and solve it, then use the second solution for sources of the first system and solve it, and so on, a couple of times. Good luck. Dragan |
|
September 3, 2008, 20:32 |
Hi Dragan
I don't think that
|
#5 |
Guest
Posts: n/a
|
Hi Dragan
I don't think that your pipe cells have to be very thin. You can build two geometrically independent models. Model 1 is your pipe which is a linear chain of cells with arbitrary dimensions perpendicular to this chain, just like you run a 2D case by extrusion into the 3rd dimension. Model 2 is your surrounding volume, any 3D structure is fine. Now it is up to you to derive the fluxes between model 1 and model 2. This derivation has to cancel the pipe cross section which is considered infinitesimal. The key is not to embed your pipe geometrically into the surrounding volume. And I think I can not forget about making one large matrix, because segregated solvers perform very poorly in situations like this unless one of the two regions couples almost passively. I didn't expect such a solver to exist, but I still hope for some input, maybe a very simple example, how this matrix manipulation can be done in openfoam. Thank you Karl |
|
September 4, 2008, 03:25 |
The idea sounds reasonable. Th
|
#6 |
New Member
Dragan Vidovic
Join Date: Mar 2009
Posts: 17
Rep Power: 17 |
The idea sounds reasonable. Thanks Karl!
Dragan |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
secondary air routes | Dan Panek | Main CFD Forum | 3 | February 11, 2010 09:56 |