|
[Sponsors] |
September 30, 2019, 12:02 |
Boundary condition for Internal Baffle
|
#1 |
Member
Join Date: Apr 2016
Posts: 30
Rep Power: 10 |
Hi all,
I have certain doubts regarding the use of internal baffle. So I am using icoUncoupledkinematicParcelFoam. I need to inject particles from somewhere inside the domain. Hence I created an internal baffle using the stl file. However I do not want to assign different boundary conditions for the baffle.I just need the baffle to use patchInjection inside the domain. The rest of the field values (u,p,k,omega,etc) should be as dictated by the internal field.I have specified various boundary conditions but all of them assign the value (0 0 0) to the baffle.hence there is a discontinuity observed in the domain. What boundary condition for the baffle should I use? Following is my createBafflesDict Code:
internalFacesOnly true; // Optionally do not read/convert/write any fields. //noFields true; // Baffles to create. baffles { baffleFacesThermoBaffle1D { //- Use surface to select faces and orientation. type searchableSurface; surface triSurfaceMesh; name patch0.stl; //- Optional flip //flip false; // Generate patchGroup baffle1 with two patches: // - baffle1_master // - baffle1_slave patchPairs { type wall; //- Optional override of added patchfields. If not specified // any added patchfields are of type calculated. patchFields { patchFields { U { type calculated; //value $internalField; } p { type calculated; //value $internalField; } phi { type calculated; //value $internalField; } omega { type calculated; //value $internalField; } nut { type calculated; //value $internalField; } k { type calculated; //value $internalField; } } } } } } Code:
[n2c1-13:23765] 13 more processes have sent help message help-opal-shmem-mmap.txt / mmap on nfs [n2c1-13:23765] Set MCA parameter "orte_base_help_aggregate" to 0 to see all help / error messages [8] [8] [8] --> FOAM FATAL ERROR: [8] cannot be called for a calculatedFvPatchField on patch baffleFacesThermoBaffle1D_master of field U in file "/gpfs_common/share02/ck/svachha/October2019/gcc482-v1706/OpenFOAM-v1706/tutorials/incompressible/simpleFoam/nasal_5lpm/processor8/0/U" You are probably trying to solve for a field with a default boundary condition. [8] [8] From function Foam::tmp<Foam::Field<Type> > Foam::calculatedFvPatchField<Type>::gradientInternalCoeffs() const [with Type = Foam::Vector<double>] [8] in file fields/fvPatchFields/basic/calculated/calculatedFvPatchField.C at line 187. [8] FOAM parallel run aborting [8] [5] [5] [5] --> FOAM FATAL ERROR: [5] cannot be called for a calculatedFvPatchField on patch baffleFacesThermoBaffle1D_master of field U in file "/gpfs_common/share02/ck/svachha/October2019/gcc482-v1706/OpenFOAM-v1706/tutorials/incompressible/simpleFoam/nasal_5lpm/processor5/0/U" You are probably trying to solve for a field with a default boundary condition. [5] [5] From function Foam::tmp<Foam::Field<Type> > Foam::calculatedFvPatchField<Type>::gradientInternalCoeffs() const [with Type = Foam::Vector<double>] [5] in file fields/fvPatchFields/basic/calculated/calculatedFvPatchField.C at line 187. [5] FOAM parallel run aborting [5] [9] [9] [9] --> FOAM FATAL ERROR: [9] cannot be called for a calculatedFvPatchField on patch baffleFacesThermoBaffle1D_master of field U in file "/gpfs_common/share02/ck/svachha/October2019/gcc482-v1706/OpenFOAM-v1706/tutorials/incompressible/simpleFoam/nasal_5lpm/processor9/0/U" You are probably trying to solve for a field with a default boundary condition. [9] [9] From function Foam::tmp<Foam::Field<Type> > Foam::calculatedFvPatchField<Type>::gradientInternalCoeffs() const [with Type = Foam::Vector<double>] [9] in file fields/fvPatchFields/basic/calculated/calculatedFvPatchField.C at line 187. [1] [1] From function Foam::tmp<Foam::Field<Type> > Foam::calculatedFvPatchField<Type>::gradientInternalCoeffs() const [with Type = Foam::Vector<double>] [1] in file fields/fvPatchFields/basic/calculated/calculatedFvPatchField.C at line 187. [1] FOAM parallel run aborting [1] [1] #0 Foam::error::printStack(Foam::Ostream&) at ??:? [0] #1 Foam::error::abort() at ??:? [1] #1 Foam::error::abort() at ??:? at ??:? at ??:? at ??:? at ??:? [5] #1 at ??:? at ??:? at ??:? Foam::error::abort()[8] #1 Foam::error::abort()[6] #1 Foam::error::abort()[2] #1 Foam::error::abort()[4] #1 Foam::error::abort()[3] #1 Foam::error::abort()[9] #1 Foam::error::abort()[7] #1 Foam::error::abort() at ??:? at ??:? at ??:? at ??:? [2] #2 Foam::calculatedFvPatchField<Foam::Vector<double> >::gradientInternalCoeffs() const[8] #2 Foam::calculatedFvPatchField<Foam::Vector<double> >::gradientInternalCoeffs() const[4] #2 Foam::calculatedFvPatchField<Foam::Vector<double> >::gradientInternalCoeffs() const[6] #2 Foam::calculatedFvPatchField<Foam::Vector<double> >::gradientInternalCoeffs() const at ??:? at ??:? at ??:? at ??:? [9] #2 Foam::calculatedFvPatchField<Foam::Vector<double> >::gradientInternalCoeffs() const[5] #2 Foam::calculatedFvPatchField<Foam::Vector<double> >::gradientInternalCoeffs() const[7] #2 Foam::calculatedFvPatchField<Foam::Vector<double> >::gradientInternalCoeffs() const[3] #2 Foam::calculatedFvPatchField<Foam::Vector<double> >::gradientInternalCoeffs() const at ??:? [0] #2 Foam::calculatedFvPatchField<Foam::Vector<double> >::gradientInternalCoeffs() const at ??:? [1] #2 Foam::calculatedFvPatchField<Foam::Vector<double> >::gradientInternalCoeffs() const at ??:? at ??:? [0] #3 Foam::fv::gaussLaplacianScheme<Foam::Vector<double>, double>::fvmLaplacianUncorrected(Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&)[1] #3 Foam::fv::gaussLaplacianScheme<Foam::Vector<double>, double>::fvmLaplacianUncorrected(Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&) at ??:? at ??:? at ??:? at ??:? [8] #3 Foam::fv::gaussLaplacianScheme<Foam::Vector<double>, double>::fvmLaplacianUncorrected(Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&)[4] #3 at ??:? at ??:? Foam::fv::gaussLaplacianScheme<Foam::Vector<double>, double>::fvmLaplacianUncorrected(Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&)[2] #3 Foam::fv::gaussLaplacianScheme<Foam::Vector<double>, double>::fvmLaplacianUncorrected(Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&) at ??:? [5] #3 Foam::fv::gaussLaplacianScheme<Foam::Vector<double>, double>::fvmLaplacianUncorrected(Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&)[3] #3 Foam::fv::gaussLaplacianScheme<Foam::Vector<double>, double>::fvmLaplacianUncorrected(Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&)[7] #3 Foam::fv::gaussLaplacianScheme<Foam::Vector<double>, double>::fvmLaplacianUncorrected(Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&)[9] #3 Foam::fv::gaussLaplacianScheme<Foam::Vector<double>, double>::fvmLaplacianUncorrected(Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&) at ??:? [6] #3 Foam::fv::gaussLaplacianScheme<Foam::Vector<double>, double>::fvmLaplacianUncorrected(Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&) at ??:? at ??:? at ??:? at ??:? at ??:? at ??:? [Foam::IncompressibleTurbulenceModel<Foam::transportModel>::divDevReff(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh>&) const at ??:? [1] #5 Foam::fv::laplacianScheme<Foam::Vector<double>, double>::fvmLaplacian(Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&) at ??:? [4] #9 at ??:? [2] #9 at ??:? [6] #9 at ??:? [8] #9 at ??:? [7] #9 at ??:? [9] #9 at ??:? [3] #9 at ??:? [5] #9 at ??:? [0] #6 Foam::tmp<Foam::fvMatrix<Foam::Vector<double> > > Foam::fvm::laplacian<Foam::Vector<double>, double>(Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&)???????? at ??:? [8] #10 __libc_start_main at ??:? [6] #10 __libc_start_main at ??:? [4] #10 __libc_start_main at ??:? [2] #10 __libc_start_main at ??:? [5] #10 __libc_start_main at ??:? [9] #10 __libc_start_main at ??:? [7] #10 __libc_start_main at ??:? [3] #10 __libc_start_main at ??:? [0] #7 Foam::linearViscousStress<Foam::RASModel<Foam::IncompressibleTurbulenceModel<Foam::transportModel> > >::divDevRhoReff(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh>&) const at ??:? [1] #6 Foam::tmp<Foam::fvMatrix<Foam::Vector<double> > > Foam::fvm::laplacian<Foam::Vector<double>, double>(Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&) in "/lib64/libc.so.6" [8] #11 in "/lib64/libc.so.6" [2] #11 in "/lib64/libc.so.6" in "/lib64/libc.so.6" [6] #11 [4] #11 in "/lib64/libc.so.6" [5] #11 in "/lib64/libc.so.6" [9] #11 in "/lib64/libc.so.6" [7] #11 in "/lib64/libc.so.6" [3] #11 ???????? at ??:? [0] #8 Foam::IncompressibleTurbulenceModel<Foam::transportModel>::divDevReff(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh>&) const at ??:? at ??:? at ??:? at ??:? at ??:? at ??:? at ??:? at ??:? at ??:? [1] #7 Foam::linearViscousStress<Foam::RASModel<Foam::IncompressibleTurbulenceModel<Foam::transportModel> > >::divDevRhoReff(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh>&) const at ??:? [0] #9 at ??:? [1] #8 Foam::IncompressibleTurbulenceModel<Foam::transportModel>::divDevReff(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh>&) const[n2c1-13:23765] 7 more processes have sent help message help-mpi-api.txt / mpi-abort Your help in this matter is greatly appreciated. Thanks and regards, Shantanu Vachhani |
|
November 22, 2020, 18:52 |
|
#2 |
Senior Member
Farzad Faraji
Join Date: Nov 2019
Posts: 206
Rep Power: 8 |
Dear Shantanu Vachhani
Did you find an answer for your question? Thanks, Farzad |
|
October 4, 2023, 12:24 |
|
#3 |
Senior Member
Alain Islas
Join Date: Nov 2019
Location: Mexico
Posts: 142
Rep Power: 7 |
Did anyone find a solution for this?
In my case I want an internal baffle to imitate a wall inside my geometry (only for stopping particles, not flow) |
|
December 29, 2023, 03:32 |
|
#4 | |
New Member
Örjan Fjällborg
Join Date: Aug 2019
Posts: 4
Rep Power: 7 |
Quote:
Hi all, I had also this problem and I created an infinitely thin baffle with a master side and a slave side patch (using topSet for creating the face zone set baffle_left). The patches are then connected with a cyclic boundary condition to let the flow field pass through unaffected. But the patches can now be used to interact with the particle cloud. For example to set the particles to rebound at the patches. The example code below can be inserted into the OFv2112 tutorial lagrangian/DPMFoam/Goldschmidt to add a plane a bit above the inlet that particles can not go through in the direction of gravity. topoSetDict: Code:
actions ( { name BLL_cellSet; type cellSet; action new; source boxToCell; sourceInfo { box (-0.0075 -0.075 0) (0.0075 0.075 0.045); } } { name BLL_faceSet; type faceSet; action new; source cellToFace; sourceInfo { set BLL_cellSet; option all; } } { name BML_cellSet; type cellSet; action new; source boxToCell; sourceInfo { box (-0.0075 -0.075 0.045) (0.0075 0.075 0.450); } } { name BML_faceSet; type faceSet; action new; source cellToFace; sourceInfo { set BML_cellSet; option all; } } { name baffle_left; type faceSet; action clear; } { name baffle_left; type faceSet; action add; source faceToFace; sourceInfo { set BLL_faceSet; option all; } } { name baffle_left; type faceSet; action subset; source faceToFace; sourceInfo { set BML_faceSet; option all; } } { name baffle_left; type faceZoneSet; action new; source setToFaceZone; sourceInfo { faceSet baffle_left; option all; } } ); Code:
baffles { // transparent baffle to the flow field baffle_left { //- Use predefined faceZone to select faces and orientation. type faceZone; zoneName baffle_left; patches { master { //- Master side patch name fixedInternalWalls_1m; type cyclic; neighbourPatch fixedInternalWalls_1s; } slave { //- Slave side patch name fixedInternalWalls_1s; type cyclic; neighbourPatch fixedInternalWalls_1m; } } } } Code:
patchInteractionModel localInteraction; localInteractionCoeffs { patches ( "(top|bottom|walls|frontAndBack|fixedInternalWalls_1s)" { type rebound; e 0.97; mu 0.09; } ); } Best Regards Örjan |
||
Tags |
baffles, createbaffles, icouncoupledkinematic, internal baffle, simplefoam |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Centrifugal fan-reverse flow in outlet lesds to a mass in flow field | xiexing | CFX | 3 | March 29, 2017 11:00 |
Problem in setting Boundary Condition | Madhatter92 | CFX | 12 | January 12, 2016 05:39 |
Internal Baffle Dynamic Boundary Condition | schuyler | OpenFOAM Pre-Processing | 3 | December 13, 2013 13:30 |
Question about heat transfer coefficient setting for CFX | Anna Tian | CFX | 1 | June 16, 2013 07:28 |
Error finding variable "THERMX" | sunilpatil | CFX | 8 | April 26, 2013 08:00 |