Can a solver change the type of a boundary/patch ?
Dear all,
For convenience I would like to create a solver (which is actually a simple tool) that need to change the type of a boundary. For example, I have the temperature field with an adiabatic wall (type zeroGradient) and I would like to change it to a fixedValue with the value of the face correspond o the zero gradient solution Before: Code:
FoamFile Code:
FoamFile Code:
volScalarField Tr // Create another field to avoid the self overwriting Anybody knows how to do ? |
Hi Fréderic,
I am not quite sure what you mean, but would it not be easier to have a custom boundary condition, which is derived from the mixed class? Then you can easily switch from zeroGradient to fixedValue during the simulation by a simple change in value of the keyword valueFraction. Kind regards Niels |
The boundary doesn't have to change during the simulation. I run a first simulation with a patch of type "zeroGradient" and later I want to run another simulation but this time the patch has to be of type "fixedValue".
When I say that a "solver" has to change the type it is actually wrong. What I need is more a "tool" than a solver. I don't run any calculation during this time, I only manipulate the files. Now I do: 1) Computation 1: mySolverFoam 2) I need to manually change the type of the patch by editing the files 3) Computation 2: mySolver2Foam What I want: 1) Computation 1: mySolverFoam 2) Automatically edit the files (by using a tool/solver) 3) Computation 2: mySolver2Foam I can try to create a Python tool that would do the job but I also do some extra treatment that only a "solver" can do by calling the turbulence model and returning some specific variables. |
Okay, I see what your intentions are. As an example look in
Code:
src/thermophysicalModels/reactionThermo/combustionThermo/hCombustionThermo/hCombustionThermo.C Code:
h_ Kind regards Niels |
Thx, I get it now !
Indeed, the fourth argument is what I was looking for ;) I will work on it tonight. |
Old topic but I want to ask if it is possible to change the patch types after we called the constructor. Searching Doxygen does not provide any function which I would be able to use for changing the boundary types after we created the GeometricField. To clarify:
Code:
myField_ I could work with pointers here which would give me the possibility to create the specificHumidity field at the right position (when we know the BC of the relativeHumidity field) but I am sure that we can change that fields even without using pointers. E.g., Code:
const wordList& patchTypes = relativeHumidity.boundaryField().types(); |
I will just answer my own question:
Code:
// Assign the same boundary conditions |
All times are GMT -4. The time now is 03:39. |