CFD Online Logo CFD Online URL
Home > Forums > OpenFOAM Programming & Development

Electrostatic Multiregion Foam

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

LinkBack Thread Tools Display Modes
Old   November 4, 2013, 11:08
Default Electrostatic Multiregion Foam
New Member
Join Date: Apr 2013
Posts: 24
Rep Power: 4
GPesch is on a distinguished road

I am trying to develop a solver to calculate electrostatic fields in a simulation volume containing multiple dielelectric materials with different properties, e.g. conductivity and permittivity.

In this case (let's assume absence of charges) I need to solve the Poisson Equation:

div (epsilon grad(phi)) = 0 (with phi being the electric potential)..

As far as I have understood my problem so far (), I need to define boundary conditions in which I put a constant potential on the (lets assume two) electrodes in my geometry.
So far so good (nothing which couldn't be solved with electrostaticFoam).
If I want to introduce several regions with different dielectric properties my field lines are not distributed equally in the volume, as they are "bend" at the interface between the two materials according to the following rules:

  • Normal component of (epsilon grad(phi)) is constant and
  • tangential component of grad(phi) is also constant.
Okay - so much for the theory.. In this case I need to define some sort of coupling between the two regions. I have looked into chtMultiRegionFoam, which is giving quite the functionality I need for solid/liquid interfaces and head conduction. So far I understand how they set up the problem: They divide every solid and/or liquid region with different properties and then set up some sort of "sub"-mesh for each region in which the equation is solved individually... From looking at the source files I feel confident that I could do the same:

What I do not understand so far is how they implement the coupling between the two regions. From looking at the tutorial case, the coupling is technically implemented as a boundary condition at the region interface (which makes sense).
However, from looking at the source file of the boundary condition (two be honest: I have never looked at the source file of a BC before so I am note quite sure what to look for... actually I have the impression the major work is done by a function called "updateCoeffs()"—am I right?) I cannot figure out how they actually achieve the desired coupling. I looked at turbulentTemperatureCoupledBaffleMixedFvPatchScala rField (quite a mouthful), as this is the one used in the tutorial cases of the solver.
However: This seems to be a rather complicated BC as it is neither a pure FixedValue nor a FixedGradient BC, but something in between (I don't actually care, because I need FixedGradient anyway )...

An intensive search revealed that "in the old days" this was easier, because people achieved this before by applying FixedGradient Boundary Conditions which do not exist anymore. (Or which I could not find)..

Coming to the question I want to ask: Can someone give me a hint for a coupling condition between two regions which is more or less achieving what I want—so that I could have a look inside and understand how they do it? Or—if this is impossible, because such BCs do not exist anymore—I would be very grateful if you could give me some advice of how turbulentTemperatureCoupledBaffleMixedFvPatchScala rField actually works..

Thank you so much for reading thru all of this and for answering in advance!

Best wishes
GPesch is offline   Reply With Quote


Thread Tools
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 On
Pingbacks are On
Refbacks are On

Similar Threads
Thread Thread Starter Forum Replies Last Post
error message with modeling a cube with a hold at the center hsingtzu OpenFOAM Native Meshers: blockMesh 2 March 14, 2012 10:56
mesh airfoil NACA0012 anand_30 OpenFOAM Meshing & Mesh Conversion 12 December 12, 2011 05:16
BlockMesh FOAM warning gaottino OpenFOAM Native Meshers: blockMesh 7 July 19, 2010 14:11
Axisymmetrical mesh Rasmus Gjesing (Gjesing) OpenFOAM Native Meshers: blockMesh 10 April 2, 2007 14:00
Import gmsh msh to Foam adorean Open Source Meshers: Gmsh, Netgen, CGNS, ... 24 April 27, 2005 08:19

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