|
[Sponsors] |
![]() |
![]() |
#81 |
New Member
Laura Sumner
Join Date: Mar 2017
Posts: 13
Rep Power: 9 ![]() |
Hey Tom,
Thanks for the reply! Yeh i have done everything you said already.... the only difference between your code and mine is the inclusion of smom_ which I don't have... Also did you mean the .C file rather than .H? as that's where the original move member function was declared. I added some comments into solidParticle.C and these do not appear at any point during the run, so it's as if that code is never being run. Is that supposed to be the case? Laura |
|
![]() |
![]() |
![]() |
![]() |
#82 |
Member
Thomas Flint
Join Date: Jan 2016
Posts: 60
Rep Power: 10 ![]() |
The code I posted should definitely be in the solidparticlecloud.C file. If you have declared the functions in the .H file but not got them in the .C file then that's probably why there are no particles being injected. If you post your solidparticlecloud.h and .c files that would help me see your problem probably.
All the best |
|
![]() |
![]() |
![]() |
![]() |
#83 |
New Member
Laura Sumner
Join Date: Mar 2017
Posts: 13
Rep Power: 9 ![]() |
I think we agree, I was just clarifying because I think you made a typo in your previous comment
![]() |
|
![]() |
![]() |
![]() |
![]() |
#84 |
Member
Thomas Flint
Join Date: Jan 2016
Posts: 60
Rep Power: 10 ![]() |
They look fine to me. I wonder if youre including the unedited versions by mistake. Do you have all the cloud .H and .C files in your main solver directory? Sorry I'm all out of ideas.
|
|
![]() |
![]() |
![]() |
![]() |
#85 |
Senior Member
sandy
Join Date: Feb 2016
Location: .
Posts: 117
Rep Power: 10 ![]() |
Hey guys
i am also trying to couple lagrangian eulerian approach. my problem is air-water system flowing in cylinder [annular two phase flow] now DROPLETS OF WATER which come into air must CONVERT TO LAGRANGIAN PARTICLE. next when these particle come into contact with water again they MUST CONVERT INTO EULERIAN form. so i guess i need two way coupling i am trying to do this aurelia valor code. but can't understand how to convert water droplet which detaches from water film to droplet [liq droplet to particle] |
|
![]() |
![]() |
![]() |
![]() |
#86 | |
Member
Mahdi
Join Date: Jul 2012
Posts: 53
Rep Power: 13 ![]() |
Quote:
Your VoF simulation. This should determine where and when the interface is poorly resolved. Then you would identify those cells as a droplet/liquid structure And simply replace them by Lagrangian particle. The concept is rather simple but it needs an accurate implementation. |
||
![]() |
![]() |
![]() |
![]() |
#87 | |
Senior Member
sandy
Join Date: Feb 2016
Location: .
Posts: 117
Rep Power: 10 ![]() |
Quote:
but what do you mean spatial criterion based on vof resolution? i am thinking of implementing following algorithm 1. check all mesh cells and their vicinity for air, alpha=0, if yes, check volume? 2 set the volume criterion, Vcutoff 3 , if V<Vcutoff, delete volume from eulerian phase and replace with particle of same volume and calculate dia according to 4/3pi r^3 is this algorithm good enough?? i already have reverse algorithm from aurelia vallier's tutorial |
||
![]() |
![]() |
![]() |
![]() |
#88 | |
Member
Mahdi
Join Date: Jul 2012
Posts: 53
Rep Power: 13 ![]() |
Quote:
This sound reasonable. By spatial resolution, I meant the something similar. Because the V_cutoff may depend on your grid resolution. But there is something else you should take care of: Imagine you check 3 cells in row with the same criterion, and you replace 3 droplets with the same volume in those cells, but in the actual situation, they may be one larger droplet/liquid structure connected to each other. In this case, you would replace one larger droplet with 3 smaller which in unphysical. I guess you would need a search algorithm to find all the droplet with their correct volume first, then replace them. |
||
![]() |
![]() |
![]() |
![]() |
#89 |
Senior Member
sandy
Join Date: Feb 2016
Location: .
Posts: 117
Rep Power: 10 ![]() |
Wow. i didn't thought of case where droplet includes no of cell volumes. i have to change algorithm
so i am thinking how do i accomplish this droplet size? how to find the extent of droplet and total no cells it comprises and then do the rest?? u got any ideas? |
|
![]() |
![]() |
![]() |
![]() |
#90 | |
Member
Mahdi
Join Date: Jul 2012
Posts: 53
Rep Power: 13 ![]() |
Quote:
problem or not! then go for in-detail coding and implementation (which seems very costy). |
||
![]() |
![]() |
![]() |
![]() |
#91 |
Senior Member
sandy
Join Date: Feb 2016
Location: .
Posts: 117
Rep Power: 10 ![]() |
thanks i got the thesis and there is algorithm defined for 2 way coupling.
and about bubbles?? right. yeah actually she is defining bubbles by solid particles bcz this is her initial work and later she has used Rayleigh plesset equation to account for varying bubble radius, so i'm quite sure she has implemented what i need for my work. thanks mahdi!!! |
|
![]() |
![]() |
![]() |
![]() |
#92 |
Member
Vishwesh Ravi Shrimali
Join Date: Aug 2017
Posts: 43
Rep Power: 8 ![]() |
Hi!
Sorry for jumping in the discussion. I am also working on something similar based on Aurelia's work. I have modified the inject and move functions though. Instead of reading the positions, diameter, and velocity of Bubbles from particleProperties, I send them from interFoam as follows: Code:
Info<< "Evolving cloud" << endl; Info<<"g: " << g << " posP: " << posP << " dP: " << dP << " UP: " << UP << endl; particles.move(g,posP,dP,UP); Info<< "Cloud size = " << particles.size() << endl; Code:
// Inject Function: void Foam::solidParticleCloud::inject(solidParticle::trackingData &td, vector posP, scalar dP, vector UP) { Info<<"Inject function called"<<endl; label cellI=1; label tetFaceI=1; label tetPtI=1; Info<<"findCellFacePt starting"<<endl; mesh_.findCellFacePt(posP, cellI, tetFaceI, tetPtI); Info<<"findCellFacePt ended"<<endl; Info<<"Adding a new particle"<<endl; solidParticle* ptr1 = new solidParticle(mesh_, posP, cellI, tetFaceI, tetPtI, dP, UP); Info<<"New particle added"<<endl; Info<<"Initial equilibrium radius"<<endl; ptr1->initialEquilibriumRadius(td); Info<<"Finally add particle"<<endl; Cloud<solidParticle>::addParticle(ptr1); } Code:
void Foam::solidParticleCloud::move(const dimensionedVector& g, vector posP, scalar dP, vector UP) { Info<<"Move function called"<<endl; const volScalarField& rho = mesh_.lookupObject<const volScalarField>("rho"); const volVectorField& U = mesh_.lookupObject<const volVectorField>("U"); const volScalarField& nu = mesh_.lookupObject<const volScalarField>("nu"); const volScalarField& alphaW = mesh_.lookupObject<const volScalarField>("alpha.water"); const volScalarField& p = mesh_.lookupObject<const volScalarField>("p"); interpolationCellPoint<scalar> rhoInterp(rho); interpolationCellPoint<vector> UInterp(U); interpolationCellPoint<scalar> nuInterp(nu); interpolationCell<scalar> alphaWInterp(alphaW); interpolationCellPoint<scalar> pInterp(p); smom_ = vector::zero; correctalphaW_=0; correctU_=vector::zero; solidParticle::trackingData td(*this, rhoInterp, UInterp, nuInterp, alphaWInterp, pInterp, g.value()); Cloud<solidParticle>::move(td, mesh_.time().deltaTValue()); // Inject this->inject(td, posP, dP, UP); } Code:
Evolving cloud g: g [0 1 -2 0 0 0 0] (0 -9.81 0) posP: (0.00407471 0.00956261 -0.00510405) dP: 2 UP: (0 0 0) Move function called Inject function called findCellFacePt starting [1] #0 Foam::error::printStack(Foam::Ostream&)findCellFacePt ended Adding a new particle New particle added Initial equilibrium radius Finally add particle Cloud size = 1 ExecutionTime = 314.7 s ClockTime = 315 s in "/share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libOpenFOAM.so" [1] #1 Foam::sigSegv::sigHandler(int) in "/share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libOpenFOAM.so" [1] #2 ? at sigaction.c:0 [1] #3 Foam::polyMeshTetDecomposition::cellTetIndices(Foam::polyMesh const&, long) in "/share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libOpenFOAM.so" [1] #4 Foam::cellPointWeight::findTetrahedron(Foam::polyMesh const&, Foam::Vector<double> const&, long) in "/share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libfiniteVolume.so" [1] #5 Foam::cellPointWeight::cellPointWeight(Foam::polyMesh const&, Foam::Vector<double> const&, long, long) in "/share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libfiniteVolume.so" [1] #6 ? in "/home/vshrima/OpenFOAM/vshrima-3.0.x/platforms/linux64GccDPInt64Opt/bin/VOF2LPT_basic_revised" [1] #7 ? in "/home/vshrima/OpenFOAM/vshrima-3.0.x/platforms/linux64GccDPInt64Opt/bin/VOF2LPT_basic_revised" [1] #8 ? in "/home/vshrima/OpenFOAM/vshrima-3.0.x/platforms/linux64GccDPInt64Opt/bin/VOF2LPT_basic_revised" [1] #9 ? in "/home/vshrima/OpenFOAM/vshrima-3.0.x/platforms/linux64GccDPInt64Opt/bin/VOF2LPT_basic_revised" [1] #10 __libc_start_main in "/lib64/libc.so.6" [1] #11 ? in "/home/vshrima/OpenFOAM/vshrima-3.0.x/platforms/linux64GccDPInt64Opt/bin/VOF2LPT_basic_revised" [cgscd000ggb3t92:38581] *** Process received signal *** [cgscd000ggb3t92:38581] Signal: Segmentation fault (11) [cgscd000ggb3t92:38581] Signal code: (-6) [cgscd000ggb3t92:38581] Failing at address: 0x11e7d000096b5 [cgscd000ggb3t92:38581] [ 0] /lib64/libc.so.6[0x3eb7c32510] [cgscd000ggb3t92:38581] [ 1] /lib64/libc.so.6(gsignal+0x35)[0x3eb7c32495] [cgscd000ggb3t92:38581] [ 2] /lib64/libc.so.6[0x3eb7c32510] [cgscd000ggb3t92:38581] [ 3] /share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libOpenFOAM.so(_ZN4Foam24polyMeshTetDecomposition14cellTetIndicesERKNS_8polyMeshEl+0x60)[0x7f5fb43689a0] [cgscd000ggb3t92:38581] [ 4] /share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libfiniteVolume.so(_ZN4Foam15cellPointWeight15findTetrahedronERKNS_8polyMeshERKNS_6VectorIdEEl+0x52)[0x7f5fb63a6052] [cgscd000ggb3t92:38581] [ 5] /share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libfiniteVolume.so(_ZN4Foam15cellPointWeightC2ERKNS_8polyMeshERKNS_6VectorIdEEll+0x89)[0x7f5fb63a77a9] [cgscd000ggb3t92:38581] [ 6] VOF2LPT_basic_revised[0x4d7c0d] [cgscd000ggb3t92:38581] [ 7] VOF2LPT_basic_revised[0x4e4204] [cgscd000ggb3t92:38581] [ 8] VOF2LPT_basic_revised[0x4e622e] [cgscd000ggb3t92:38581] [ 9] VOF2LPT_basic_revised[0x447e21] [cgscd000ggb3t92:38581] [10] /lib64/libc.so.6(__libc_start_main+0xfd)[0x3eb7c1ed1d] [cgscd000ggb3t92:38581] [11] VOF2LPT_basic_revised[0x43a759] [cgscd000ggb3t92:38581] *** End of error message *** -------------------------------------------------------------------------- mpirun noticed that process rank 1 with PID 38581 on node cgscd000ggb3t92 exited on signal 11 (Segmentation fault). -------------------------------------------------------------------------- Can anyone please help me out with this? |
|
![]() |
![]() |
![]() |
![]() |
#93 | |
Member
Vishwesh Ravi Shrimali
Join Date: Aug 2017
Posts: 43
Rep Power: 8 ![]() |
Quote:
Code:
/ Inject Function: void Foam::solidParticleCloud::inject(solidParticle::trackingData &td, vector posP, scalar dP, vector UP) { Info<<"Inject function called"<<endl; label cellI=1; label tetFaceI=1; label tetPtI=1; Info<<"findCellFacePt starting"<<endl; cellI = mesh_.findCell(posP); Info<<"cellI: "<<cellI<<endl; //mesh_.findCellFacePt(td.cloud().posP1_, cellI, tetFaceI, tetPtI); mesh_.findCellFacePt(posP, cellI, tetFaceI, tetPtI); Info<<"findCellFacePt ended"<<endl; //solidParticle* ptr1 = new solidParticle(mesh_, td.cloud().posP1_, cellI, // tetFaceI, tetPtI,td.cloud().dP1_, td.cloud().UP1_); Info<<"Adding a new particle"<<endl; solidParticle* ptr1 = new solidParticle(mesh_, posP, cellI, tetFaceI, tetPtI, dP, UP); Info<<"New particle added"<<endl; Info<<"Initial equilibrium radius"<<endl; ptr1->initialEquilibriumRadius(td); Info<<"Finally add particle"<<endl; Cloud<solidParticle>::addParticle(ptr1); /* mesh_.findCellFacePt(td.cloud().posP2_, cellI, tetFaceI, tetPtI); solidParticle* ptr2 = new solidParticle(mesh_, td.cloud().posP2_, cellI, tetFaceI, tetPtI, td.cloud().dP2_, td.cloud().UP2_); ptr2->initialEquilibriumRadius(td); Cloud<solidParticle>::addParticle(ptr2); */ } Code:
Evolving cloud g: g [0 1 -2 0 0 0 0] (0 -9.81 0) posP: (0.00407471 0.00956261 -0.00510405) dP: 2 UP: (0 0 0) Move function called Inject function called findCellFacePt starting cellI: 1028095 findCellFacePt ended Adding a new particle New particle added Initial equilibrium radius Finally add particle Cloud size = 1 ExecutionTime = 309.6 s ClockTime = 310 s [1] #0 Foam::error::printStack(Foam::Ostream&) in "/share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libOpenFOAM.so" [1] #1 Foam::sigSegv::sigHandler(int) in "/share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libOpenFOAM.so" [1] #2 ? at sigaction.c:0 [1] #3 Foam::polyMeshTetDecomposition::cellTetIndices(Foam::polyMesh const&, long) in "/share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libOpenFOAM.so" [1] #4 Foam::cellPointWeight::findTetrahedron(Foam::polyMesh const&, Foam::Vector<double> const&, long) in "/share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libfiniteVolume.so" [1] #5 Foam::cellPointWeight::cellPointWeight(Foam::polyMesh const&, Foam::Vector<double> const&, long, long) in "/share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libfiniteVolume.so" [1] #6 ? in "/home/vshrima/OpenFOAM/vshrima-3.0.x/platforms/linux64GccDPInt64Opt/bin/VOF2LPT_basic_revised" [1] #7 ? in "/home/vshrima/OpenFOAM/vshrima-3.0.x/platforms/linux64GccDPInt64Opt/bin/VOF2LPT_basic_revised" [1] #8 ? in "/home/vshrima/OpenFOAM/vshrima-3.0.x/platforms/linux64GccDPInt64Opt/bin/VOF2LPT_basic_revised" [1] #9 ? in "/home/vshrima/OpenFOAM/vshrima-3.0.x/platforms/linux64GccDPInt64Opt/bin/VOF2LPT_basic_revised" [1] #10 __libc_start_main in "/lib64/libc.so.6" [1] #11 ? in "/home/vshrima/OpenFOAM/vshrima-3.0.x/platforms/linux64GccDPInt64Opt/bin/VOF2LPT_basic_revised" [cgscd000ggb3t92:40309] *** Process received signal *** [cgscd000ggb3t92:40309] Signal: Segmentation fault (11) [cgscd000ggb3t92:40309] Signal code: (-6) [cgscd000ggb3t92:40309] Failing at address: 0x11e7d00009d75 [cgscd000ggb3t92:40309] [ 0] /lib64/libc.so.6[0x3eb7c32510] [cgscd000ggb3t92:40309] [ 1] /lib64/libc.so.6(gsignal+0x35)[0x3eb7c32495] [cgscd000ggb3t92:40309] [ 2] /lib64/libc.so.6[0x3eb7c32510] [cgscd000ggb3t92:40309] [ 3] /share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libOpenFOAM.so(_ZN4Foam24polyMeshTetDecomposition14cellTetIndicesERKNS_8polyMeshEl+0x60)[0x7fc57b9379a0] [cgscd000ggb3t92:40309] [ 4] /share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libfiniteVolume.so(_ZN4Foam15cellPointWeight15findTetrahedronERKNS_8polyMeshERKNS_6VectorIdEEl+0x52)[0x7fc57d975052] [cgscd000ggb3t92:40309] [ 5] /share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libfiniteVolume.so(_ZN4Foam15cellPointWeightC2ERKNS_8polyMeshERKNS_6VectorIdEEll+0x89)[0x7fc57d9767a9] [cgscd000ggb3t92:40309] [ 6] VOF2LPT_basic_revised[0x4d7c9d] [cgscd000ggb3t92:40309] [ 7] VOF2LPT_basic_revised[0x4e42de] [cgscd000ggb3t92:40309] [ 8] VOF2LPT_basic_revised[0x4e63ad] [cgscd000ggb3t92:40309] [ 9] VOF2LPT_basic_revised[0x447eb1] [cgscd000ggb3t92:40309] [10] /lib64/libc.so.6(__libc_start_main+0xfd)[0x3eb7c1ed1d] [cgscd000ggb3t92:40309] [11] VOF2LPT_basic_revised[0x43a7e9] [cgscd000ggb3t92:40309] *** End of error message *** -------------------------------------------------------------------------- mpirun noticed that process rank 1 with PID 40309 on node cgscd000ggb3t92 exited on signal 11 (Segmentation fault). -------------------------------------------------------------------------- |
||
![]() |
![]() |
![]() |
![]() |
#94 |
Senior Member
Albrecht vBoetticher
Join Date: Aug 2010
Location: Zürich, Swizerland
Posts: 237
Rep Power: 16 ![]() |
Hi,
could you quickly run checkMesh and provide the output? |
|
![]() |
![]() |
![]() |
![]() |
#95 |
Member
Vishwesh Ravi Shrimali
Join Date: Aug 2017
Posts: 43
Rep Power: 8 ![]() |
Hi!
Thanks for the quick reply. Here is the output of checkMesh: Code:
/*---------------------------------------------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 3.0.x | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ Build : 3.0.x Exec : checkMesh Date : Nov 03 2017 Time : 13:24:56 Host : "cgscd000ggb3t92" PID : 3067 Case : xxx/vishwesh/VOFLPT_solidParticleCloud/droplet2_testCase nProcs : 1 sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE). fileModificationChecking : Monitoring run-time modified files using timeStampMaster allowSystemOperations : Allowing user-supplied system call operations // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // Create time Create polyMesh for time = 0 Time = 0 Mesh stats points: 8120601 faces: 24120000 internal faces: 23880000 cells: 8000000 faces per cell: 6 boundary patches: 3 point zones: 0 face zones: 0 cell zones: 0 Overall number of cells of each type: hexahedra: 8000000 prisms: 0 wedges: 0 pyramids: 0 tet wedges: 0 tetrahedra: 0 polyhedra: 0 Checking topology... Boundary definition OK. Cell to face addressing OK. Point usage OK. Upper triangular ordering OK. Face vertices OK. Number of regions: 1 (OK). Checking patch topology for multiply connected surfaces... Patch Faces Points Surface topology inlet 40000 40401 ok (non-closed singly connected) outlet 40000 40401 ok (non-closed singly connected) walls 160000 160800 ok (non-closed singly connected) Checking geometry... Overall domain bounding box (0 0 -0.02) (0.02 0.02 0) Mesh has 3 geometric (non-empty/wedge) directions (1 1 1) Mesh has 3 solution (non-empty) directions (1 1 1) Boundary openness (-8.97191e-16 8.9719e-16 8.9719e-16) OK. Max cell openness = 1.65436e-16 OK. Max aspect ratio = 1 OK. Minimum face area = 1e-08. Maximum face area = 1e-08. Face area magnitudes OK. Min volume = 1e-12. Max volume = 1e-12. Total volume = 8e-06. Cell volumes OK. Mesh non-orthogonality Max: 0 average: 0 Non-orthogonality check OK. Face pyramids OK. Max skewness = 2.77556e-13 OK. Coupled point location match (average 0) OK. Mesh OK. |
|
![]() |
![]() |
![]() |
![]() |
#96 |
Member
Vishwesh Ravi Shrimali
Join Date: Aug 2017
Posts: 43
Rep Power: 8 ![]() |
I am not sure what's happening but I tried adding multiple Info statements in the code trying to find out where exactly the error is occurring.
Code: interFoam: Code:
Info<< "Evolving cloud" << endl; // Info<< Info<<"g: " << g << " posP: " << posP << " dP: " << dP << " UP: " << UP << endl; particles.move(g,posP,dP,UP); Info<< "Cloud size = " << particles.size() << endl; Info<< "TEST\nTEST\nTEST\nTEST\nTEST\nTEST" << endl; particles.checkCo(); // 4-way coupling alpha1 += particles.AddToAlpha(); // LPT to VOF U += particles.AddToU(); // LPT to VOF runTime.write(); Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s" << " ClockTime = " << runTime.elapsedClockTime() << " s" << nl << endl; Code:
// Inject Function: void Foam::solidParticleCloud::inject(solidParticle::trackingData &td, vector posP, scalar dP, vector UP) { Info<<"Inject function called"<<endl; label cellI=1; label tetFaceI=1; label tetPtI=1; Info<<"findCellFacePt starting"<<endl; cellI = mesh_.findCell(posP); Info<<"cellI: "<<cellI<<endl; //mesh_.findCellFacePt(td.cloud().posP1_, cellI, tetFaceI, tetPtI); mesh_.findCellFacePt(posP, cellI, tetFaceI, tetPtI); Info<<"findCellFacePt ended"<<endl; //solidParticle* ptr1 = new solidParticle(mesh_, td.cloud().posP1_, cellI, // tetFaceI, tetPtI,td.cloud().dP1_, td.cloud().UP1_); Info<<"Adding a new particle"<<endl; solidParticle* ptr1 = new solidParticle(mesh_, posP, cellI, tetFaceI, tetPtI, dP, UP); Info<<"New particle added"<<endl; Info<<"Initial equilibrium radius"<<endl; ptr1->initialEquilibriumRadius(td); Info<<"Finally add particle"<<endl; Cloud<solidParticle>::addParticle(ptr1); } void Foam::solidParticleCloud::move(const dimensionedVector& g, vector posP, scalar dP, vector UP) { Info<<"Move function called"<<endl; const volScalarField& rho = mesh_.lookupObject<const volScalarField>("rho"); const volVectorField& U = mesh_.lookupObject<const volVectorField>("U"); const volScalarField& nu = mesh_.lookupObject<const volScalarField>("nu"); const volScalarField& alphaW = mesh_.lookupObject<const volScalarField>("alpha.water"); const volScalarField& p = mesh_.lookupObject<const volScalarField>("p"); interpolationCellPoint<scalar> rhoInterp(rho); interpolationCellPoint<vector> UInterp(U); interpolationCellPoint<scalar> nuInterp(nu); interpolationCell<scalar> alphaWInterp(alphaW); interpolationCellPoint<scalar> pInterp(p); smom_ = vector::zero; correctalphaW_=0; correctU_=vector::zero; solidParticle::trackingData td(*this, rhoInterp, UInterp, nuInterp, alphaWInterp, pInterp, g.value()); Cloud<solidParticle>::move(td, mesh_.time().deltaTValue()); // Inject /*if(mesh_.time().value()> td.cloud().tInjStart_ && mesh_.time().value()< td.cloud().tInjEnd_) {*/ this->inject(td, posP, dP, UP); Info<<"Back from inject"<<endl; } Code:
Evolving cloud g: g [0 1 -2 0 0 0 0] (0 -9.81 0) posP: (0.00407471 0.00956261 -0.00510405) dP: 2 UP: (0 0 0) Move function called Inject function called findCellFacePt starting cellI: 1028095 findCellFacePt ended Adding a new particle New particle added Initial equilibrium radius Finally add particle Back from inject Cloud size = 1 TEST TEST TEST TEST TEST TEST [1] #0 Foam::error::printStack(Foam::Ostream&)ExecutionTime = 306.32 s ClockTime = 307 s in "/share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libOpenFOAM.so" [1] #1 Foam::sigSegv::sigHandler(int) in "/share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libOpenFOAM.so" [1] #2 ? at sigaction.c:0 [1] #3 Foam::polyMeshTetDecomposition::cellTetIndices(Foam::polyMesh const&, long) in "/share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libOpenFOAM.so" [1] #4 Foam::cellPointWeight::findTetrahedron(Foam::polyMesh const&, Foam::Vector<double> const&, long) in "/share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libfiniteVolume.so" [1] #5 Foam::cellPointWeight::cellPointWeight(Foam::polyMesh const&, Foam::Vector<double> const&, long, long) in "/share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libfiniteVolume.so" [1] #6 ? in "/home/vshrima/OpenFOAM/vshrima-3.0.x/platforms/linux64GccDPInt64Opt/bin/VOF2LPT_basic_revised" [1] #7 ? in "/home/vshrima/OpenFOAM/vshrima-3.0.x/platforms/linux64GccDPInt64Opt/bin/VOF2LPT_basic_revised" [1] #8 ? in "/home/vshrima/OpenFOAM/vshrima-3.0.x/platforms/linux64GccDPInt64Opt/bin/VOF2LPT_basic_revised" [1] #9 ? in "/home/vshrima/OpenFOAM/vshrima-3.0.x/platforms/linux64GccDPInt64Opt/bin/VOF2LPT_basic_revised" [1] #10 __libc_start_main in "/lib64/libc.so.6" [1] #11 ? in "/home/vshrima/OpenFOAM/vshrima-3.0.x/platforms/linux64GccDPInt64Opt/bin/VOF2LPT_basic_revised" [cgscd000ggb3t92:04868] *** Process received signal *** [cgscd000ggb3t92:04868] Signal: Segmentation fault (11) [cgscd000ggb3t92:04868] Signal code: (-6) [cgscd000ggb3t92:04868] Failing at address: 0x11e7d00001304 [cgscd000ggb3t92:04868] [ 0] /lib64/libc.so.6[0x3eb7c32510] [cgscd000ggb3t92:04868] [ 1] /lib64/libc.so.6(gsignal+0x35)[0x3eb7c32495] [cgscd000ggb3t92:04868] [ 2] /lib64/libc.so.6[0x3eb7c32510] [cgscd000ggb3t92:04868] [ 3] /share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libOpenFOAM.so(_ZN4Foam24polyMeshTetDecomposition14cellTetIndicesERKNS_8polyMeshEl+0x60)[0x7f98cb2ae9a0] [cgscd000ggb3t92:04868] [ 4] /share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libfiniteVolume.so(_ZN4Foam15cellPointWeight15findTetrahedronERKNS_8polyMeshERKNS_6VectorIdEEl+0x52)[0x7f98cd2ec052] [cgscd000ggb3t92:04868] [ 5] /share/OpenFOAM/OpenFOAM-3.0.x/platforms/linux64GccDPInt64Opt/lib/libfiniteVolume.so(_ZN4Foam15cellPointWeightC2ERKNS_8polyMeshERKNS_6VectorIdEEll+0x89)[0x7f98cd2ed7a9] [cgscd000ggb3t92:04868] [ 6] VOF2LPT_basic_revised[0x4d89dd] [cgscd000ggb3t92:04868] [ 7] VOF2LPT_basic_revised[0x4e501e] [cgscd000ggb3t92:04868] [ 8] VOF2LPT_basic_revised[0x4e6cbe] [cgscd000ggb3t92:04868] [ 9] VOF2LPT_basic_revised[0x447f61] [cgscd000ggb3t92:04868] [10] /lib64/libc.so.6(__libc_start_main+0xfd)[0x3eb7c1ed1d] [cgscd000ggb3t92:04868] [11] VOF2LPT_basic_revised[0x43a899] [cgscd000ggb3t92:04868] *** End of error message *** -------------------------------------------------------------------------- mpirun noticed that process rank 1 with PID 4868 on node cgscd000ggb3t92 exited on signal 11 (Segmentation fault). -------------------------------------------------------------------------- |
|
![]() |
![]() |
![]() |
![]() |
#97 |
Senior Member
Albrecht vBoetticher
Join Date: Aug 2010
Location: Zürich, Swizerland
Posts: 237
Rep Power: 16 ![]() |
maybe your code expects a tetMesh, but you have hexahedral cells...
|
|
![]() |
![]() |
![]() |
![]() |
#98 |
Member
Vishwesh Ravi Shrimali
Join Date: Aug 2017
Posts: 43
Rep Power: 8 ![]() |
||
![]() |
![]() |
![]() |
![]() |
#99 |
Member
Vishwesh Ravi Shrimali
Join Date: Aug 2017
Posts: 43
Rep Power: 8 ![]() |
||
![]() |
![]() |
![]() |
![]() |
#100 |
Member
Vishwesh Ravi Shrimali
Join Date: Aug 2017
Posts: 43
Rep Power: 8 ![]() |
||
![]() |
![]() |
![]() |
Tags |
interfoam, lagrangian, move, solidparticle |
|
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
lagrangian solid particle tracking - OFv2.1 | PelusDadidus | OpenFOAM Programming & Development | 7 | August 21, 2015 09:05 |
Questions regarding Particle Tracking and Rotating Frame of reference | Maxime Gauthier | CFX | 1 | May 9, 2011 15:07 |
DPM UDF particle position using the macro P_POS(p)[i] | dm2747 | FLUENT | 0 | April 17, 2009 01:29 |
Particle tracking - Domain interface / FrozenRotor | mohanrao | CFX | 4 | January 23, 2008 03:39 |
restarting lagrange (particle tracking) simulation | dbdias | CFX | 0 | September 22, 2007 19:26 |