|
[Sponsors] |
Problem: displacementLaplacian in parallel version |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
February 18, 2014, 12:13 |
Problem: displacementLaplacian in parallel version
|
#1 |
Member
Johan Lorentzon
Join Date: Mar 2009
Location: Lunds University, Sweden
Posts: 78
Rep Power: 23 |
Greetings All,
I have recently implemented a parallel ALE FSI, a hybrid between DEAL.II and OpenFOAM version 2.2.0. During my validation of the solver i noticed that PISO is broken in this parallel version compared to a validated but non-parallel version. I stripped my code to only moving the mesh by a prescribed motion (known velocity profile) and already at the first iteration the pressure seems to go to the squared values of the boundary velocity over the whole domain, which is non-physical. This is how I apply prescribed motion to the boundary of the fluid/structure to icoDyMFoam.H which corresponds to OF2.2 pimpleDyMFoam. Code:
volVectorField::GeometricBoundaryField &meshDisplacement = const_cast<volVectorField&> i (mesh.objectRegistry::lookupObject<volVectorField>("cellDisplacement")).boundaryField(); std::stringstream idlabel; idlabel << fluidSide.c_str() << i+2; word PatchI((idlabel.str()).c_str()); label OpenFoam_Patch = mesh.boundaryMesh().findPatchID(PatchI); const polyPatch &patch=mesh.boundaryMesh()[OpenFoam_Patch]; vectorField& mDisp = refCast<vectorField>(meshDisplacement[OpenFoam_Patch]); forAll(patch,fluidI) { Foam::vector here = patch.faceCentres()[fluidI]; (Assign mDisp[fluidI] to prescribed motion) } I am using cellDisplacement since i want to work with faceCenters. The displacementLaplacian solver is applied with inversedistance. The coupled patch for U is "movingWallVelocity" and corresponding for pointDisplacement "calculated". I have noticed that even for very small displacement (<<cell size) everything goes utterly wrong with U^2 added to the pressure, however by using small velocity but large displacement, the pressure seems constant shifted and drifting and whenever PISO dont converge the pressure field is oscillating in previous iterations. I known that incompressible solver is sensitive to this phenomena, and this is partly why i am using dirichlet pressure condition to the outlet, i also using reference value whenever it is necessary [noticed the hard coded in createFields.H ... ]. Why this difference between parallel and non-parallel? Regarding the case settings: Mesh is coarse but sufficient for describing the motion for non-parallel and I get the same result for many different settings for solvers, timesteps, schemes and so forth. Regarding decomposition: I have tried simple in different directions, scotch and metis. All same result. I am not an expert on this field so I would appriciate an answer to this difference and suggestion in how to resolve this. Best Regards Johan |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Problem running OpenFOAM 2.2.x in parallel in Centos 5 | lvalvare | OpenFOAM Running, Solving & CFD | 33 | December 9, 2020 08:44 |
[mesh manipulation] Problem with RenumberMesh in parallel in OpenFOAM 2.1.1 | srini_esi | OpenFOAM Meshing & Mesh Conversion | 1 | November 8, 2013 02:48 |
Parallel Run problem | shhe | OpenFOAM Running, Solving & CFD | 1 | April 27, 2010 06:52 |
[OpenFOAM] Problem with paraFoam on a linux-64 bit | bunni | ParaView | 4 | April 14, 2010 20:55 |
incompatible library version and solver version problem | gholamghar | Fluent UDF and Scheme Programming | 0 | March 23, 2009 14:40 |