
[Sponsors] 
Problems in implementing multiple solid patches in FSI solver 

LinkBack  Thread Tools  Search this Thread  Display Modes 
September 13, 2016, 05:26 
Problems in implementing multiple solid patches in FSI solver

#1 
New Member
Sourabh Supanekar
Join Date: Jun 2015
Location: Stuttgart
Posts: 11
Rep Power: 11 
Hello all,
I am trying to implement multiple separate patches in the icoFsiElasticNonLinULSolidFoam solver. I have introduced separated patches instead of a single interface patch and the code does not give any error, but while reading coupling properties i think it reads only one of the 2 patches (while debugging it reads only once). At the end it gives me the same output as with the single interface patch. Now when I make changes in the boundary conditions of one of the patches, results do not change. I am confused why this is happening. my new couplingProperties.H says fluidPatch FlapFluid1; fluidZone InterfaceZone1; fluidPatch FlapFluid2; fluidZone InterfaceZone2; solidPatch FlapSolid1; solidZone InterfaceZone1; solidPatch FlapSolid2; solidZone InterfaceZone2; I am not sure if I have explained my problem properly. But i am a beginner and learning so please excuse me and feel free to ask for more details. Please give me any insights on this. Do I need to make changes in the readCouplingProperties.H code? Any help would be very much appreciated. Thank you so much. regards, Sourabh Last edited by Sourabhsup; September 15, 2016 at 05:14. 

September 19, 2016, 04:59 

#2  
Super Moderator
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,091
Rep Power: 34 
Quote:
Could you explain why you need two pairs of interface patches? Depending on your problem, it may be easier to achieve a solution using one pair of interface patches. Best, Philip 

September 19, 2016, 05:07 

#3  
New Member
Sourabh Supanekar
Join Date: Jun 2015
Location: Stuttgart
Posts: 11
Rep Power: 11 
Quote:
I want to implement a separate additional traction force on the tip of the cantilever. For that, I had thought of separating the patches into the side patch and tip patch instead of the existing single patch. Doing that I could just add a certain traction force in DU FlapSolid2 (which is tip patch). Also, i want to implement stickslip phenomenon on the tip of cantilever later. Would it be possible to do that without separating the patches? Thank you Sourabh 

September 19, 2016, 06:33 

#4  
Super Moderator
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,091
Rep Power: 34 
Quote:
The way the FSI procedure works is that it takes for forces/tractions from the fluid side and applies them to the solid side: this means that even if you did have two patches, the FSI procedure would overwrite the initially specified traction on the solid patch with the fluid traction. I'm not sure I understand why you would want to do this; maybe you could explain a little about why would you like to apply an additional force to part of the solid interface. If you were only applying traction to one side, this would mean that there is no continuity of traction. Philip 

September 20, 2016, 03:58 

#5 
New Member
Sourabh Supanekar
Join Date: Jun 2015
Location: Stuttgart
Posts: 11
Rep Power: 11 
Hello Dr. Cardiff,
I had to make sure if I am doing things correct. You said "this means that even if you did have two patches, the FSI procedure would overwrite the initially specified traction on the solid patch with the fluid traction", I actually want to add an additional small negative force (if fluid force is considered positive)and not overwrite it into the existing calculated fluid force for the stick phenomena of stickslip (in a way damping the relative movement and introducing friction). I want to add an additional force at time t=0 in DU (the stiction force acting on the tip at the very beginning which should be a some positive value exerted by fluid) and I want to add an additional varying small negative force generated due to friction at the tip during remaining time steps (stickslip). The reason I want to do that only at the tip is because tip is the point where more friction will exist. Again thank you so much for your expert opinion. Kind Regards, Sourabh 

September 23, 2016, 08:56 

#6  
Super Moderator
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,091
Rep Power: 34 
Quote:
Hmnn OK I am starting to understand what you are trying to do, but even in the case of slip, traction continuity should still be satisfied i.e. the force felt by the solid side of the interface should always be equal and opposite to the force felt by the fluid (so it's not OK to add force just to the solid or just to the fluid). So for fluid stickslip behaviour, what current fluid boundary condition would you like to base you condition on? (i.e. is there a current stickslip fluid wall boundary condition?) This might point you in the right direction on how to implement it. Philip 

September 28, 2016, 05:01 

#7 
New Member
Sourabh Supanekar
Join Date: Jun 2015
Location: Stuttgart
Posts: 11
Rep Power: 11 
Hello Dr. Cardiff,
Thank you for the suggestions. It helped me a lot to understand. I still have a doubt regarding separating patches into 2 (fluidPatch1 and 2 and solidPatch1 and 2). Can you tell me how I can implement it? because I just want to implement stickslip behaviour on the tip. So I think separating the patches will be a good idea. Kind regards, Sourabh 

September 29, 2016, 07:28 

#8  
Super Moderator
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,091
Rep Power: 34 
Quote:
To add multiple FSI interface patches, you would need to go into the code and replace every instance of the solidInterfacePatch and fluidInterfacePatch with List< solidInterfacePatch > and List< fluidInterfacePatch > respectively, where solidInterfacePatch and fluidInterfacePatch represents classes related to the FSI interface and interpolation between both sides etc. Philip 

October 24, 2016, 05:58 

#9 
New Member
Sourabh Supanekar
Join Date: Jun 2015
Location: Stuttgart
Posts: 11
Rep Power: 11 
Hello Dr. Cardiff,
I did accordingly as you said. And I got the the values of traction separately on the 2 patches (they add up to the original value on a single patch). But at the end of one iteration I get some error. I am giving the log as well as error file output along here. Please have a look. I concluded I have a problem in the calcFsiResidual.H. Please guide me on how I can deal with this error. > FOAM FATAL ERROR: given field does not correspond to patch. Patch size: 200 field size: 400 From function PatchToPatchInterpolation::faceInterpolate(const Field<Type> ff) in file /home/sourabhsup/foam/foamextend3.1/src/foam/lnInclude/PatchToPatchInterpolate.C at line 132. FOAM aborting Also, I get this in the log file // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // Create time Create dynamic mesh for time = 0 > FOAM Warning : From function dlLibraryTable:pen(const fileName& functionLibName) in file db/dlLibraryTable/dlLibraryTable.C at line 85 could not load libmesquiteMotionSolver.so: cannot open shared object file: No such file or directory > FOAM Warning : From function dynamicFvMesh::New(const IOobject& io) in file dynamicFvMesh/newDynamicFvMesh.C at line 42 Loading of dynamic mesh library libmesquiteMotionSolver.so unsuccesful. Some dynamic mesh methods may not be available Selecting dynamicFvMesh dynamicMotionSolverFvMesh Selecting motion solver: laplace Selecting motion diffusivity: quadratic Reading transportProperties Reading field p Reading field U Reading/calculating face flux field phi Reading incremental displacement field DU Patch FlapSolid1 Traction boundary field: DU nonLinear set to updated Lagrangian Patch FlapSolid2 Traction boundary field: DU nonLinear set to updated Lagrangian Reading incremental displacement field DV Reading accumulated velocity field V Reading accumulated stress field sigma Reading incremental stress field DSigma Selecting rheology model linearElastic Creating constitutive model Reading coupling properties Create fluidtosolid and solidtofluid side interpolators Check fluidtosolid and solidtofluid side interpolators Fluidtosolid face side interpolation error: 0.00016666667 Solidtofluid face side interpolation error: 4.2857143e05 Create fluidtosolid and solidtofluid tip interpolators Check fluidtosolid and solidtofluid tip interpolators Fluidtosolid face tip interpolation error: 5.8333359e05 Solidtofluid face tip interpolation error: 2.1739137e05 Starting time loop Time = 1e05 Selecting coupling scheme Aitken Time = 1e05, iteration: 1 Current fsi underrelaxation factor: 0.001 Maximal accumulated displacement of interface points: 0 Courant Number mean: 0.00052200652 max: 0.0188875 velocity magnitude: 0.37775 DILUPBiCG: Solving for Ux, Initial residual = 0.99999994, Final residual = 1.2153439e11, No Iterations 2 DILUPBiCG: Solving for Uy, Initial residual = 0.97158632, Final residual = 4.0412496e11, No Iterations 2 GAMG: Solving for p, Initial residual = 1, Final residual = 9.6669832e07, No Iterations 50 GAMG: Solving for p, Initial residual = 2.2301666e08, Final residual = 4.7140419e08, No Iterations 1 GAMG: Solving for p, Initial residual = 4.7140393e08, Final residual = 1.3276984e08, No Iterations 1 GAMG: Solving for p, Initial residual = 1.3276984e08, Final residual = 2.5168639e08, No Iterations 1 GAMG: Solving for p, Initial residual = 2.5168634e08, Final residual = 6.2947356e09, No Iterations 1 GAMG: Solving for p, Initial residual = 6.2947357e09, Final residual = 5.3997199e09, No Iterations 1 time step continuity errors : sum local = 2.2085299e12, global = 1.235274e14, cumulative = 1.235274e14 GAMG: Solving for p, Initial residual = 0.00042579075, Final residual = 6.799923e07, No Iterations 18 GAMG: Solving for p, Initial residual = 6.8276997e07, Final residual = 3.4979282e07, No Iterations 2 GAMG: Solving for p, Initial residual = 3.4979502e07, Final residual = 4.4957155e07, No Iterations 1 GAMG: Solving for p, Initial residual = 4.4957317e07, Final residual = 1.7811994e07, No Iterations 1 GAMG: Solving for p, Initial residual = 1.7811995e07, Final residual = 2.3859243e07, No Iterations 1 GAMG: Solving for p, Initial residual = 2.3859265e07, Final residual = 1.0548954e07, No Iterations 1 time step continuity errors : sum local = 4.2982371e11, global = 1.4702257e12, cumulative = 1.457873e12 GAMG: Solving for p, Initial residual = 1.6838792e06, Final residual = 3.7831777e07, No Iterations 1 GAMG: Solving for p, Initial residual = 3.7831779e07, Final residual = 1.9088816e07, No Iterations 1 GAMG: Solving for p, Initial residual = 1.9088818e07, Final residual = 1.327703e07, No Iterations 1 GAMG: Solving for p, Initial residual = 1.3277035e07, Final residual = 1.8890371e07, No Iterations 1 GAMG: Solving for p, Initial residual = 1.8890404e07, Final residual = 6.6339991e08, No Iterations 1 GAMG: Solving for p, Initial residual = 6.634e08, Final residual = 6.251177e08, No Iterations 1 time step continuity errors : sum local = 2.5470744e11, global = 1.76502e13, cumulative = 1.634375e12 GAMG: Solving for p, Initial residual = 7.3911375e08, Final residual = 3.0973103e08, No Iterations 1 GAMG: Solving for p, Initial residual = 3.0973106e08, Final residual = 5.3277076e08, No Iterations 1 GAMG: Solving for p, Initial residual = 5.3277102e08, Final residual = 2.0386644e08, No Iterations 1 GAMG: Solving for p, Initial residual = 2.0386645e08, Final residual = 4.5966831e08, No Iterations 1 GAMG: Solving for p, Initial residual = 4.5966855e08, Final residual = 1.1588281e08, No Iterations 1 GAMG: Solving for p, Initial residual = 1.1588281e08, Final residual = 2.2553517e08, No Iterations 1 time step continuity errors : sum local = 9.1895337e12, global = 5.7558645e14, cumulative = 1.5768163e12 GAMG: Solving for p, Initial residual = 2.2584174e08, Final residual = 4.8397021e09, No Iterations 1 GAMG: Solving for p, Initial residual = 4.8397022e09, Final residual = 3.1206793e09, No Iterations 1 GAMG: Solving for p, Initial residual = 3.1206793e09, Final residual = 2.0437125e09, No Iterations 1 GAMG: Solving for p, Initial residual = 2.0437125e09, Final residual = 1.5647201e09, No Iterations 1 GAMG: Solving for p, Initial residual = 1.5647201e09, Final residual = 1.4686814e09, No Iterations 1 GAMG: Solving for p, Initial residual = 1.4686815e09, Final residual = 1.1018871e09, No Iterations 1 time step continuity errors : sum local = 4.4897058e13, global = 7.9299448e15, cumulative = 1.5847463e12 GAMG: Solving for p, Initial residual = 1.1044162e09, Final residual = 1.1905828e09, No Iterations 1 GAMG: Solving for p, Initial residual = 1.1905828e09, Final residual = 7.7707878e10, No Iterations 1 GAMG: Solving for p, Initial residual = 7.7707878e10, Final residual = 1.0441364e09, No Iterations 1 GAMG: Solving for p, Initial residual = 1.0441364e09, Final residual = 5.3492362e10, No Iterations 1 GAMG: Solving for p, Initial residual = 5.3492362e10, Final residual = 1.005318e09, No Iterations 1 GAMG: Solving for p, Initial residual = 1.005318e09, Final residual = 3.6050043e10, No Iterations 1 time step continuity errors : sum local = 1.4688803e13, global = 2.6065635e15, cumulative = 1.5873529e12 GAMG: Solving for p, Initial residual = 3.5986553e10, Final residual = 8.2919111e10, No Iterations 1 GAMG: Solving for p, Initial residual = 8.2919112e10, Final residual = 1.9064516e10, No Iterations 1 GAMG: Solving for p, Initial residual = 1.9064516e10, Final residual = 3.4202797e10, No Iterations 1 GAMG: Solving for p, Initial residual = 3.4202797e10, Final residual = 7.0492121e11, No Iterations 1 GAMG: Solving for p, Initial residual = 7.0492121e11, Final residual = 4.6203137e11, No Iterations 1 GAMG: Solving for p, Initial residual = 4.6203137e11, Final residual = 2.6207862e11, No Iterations 1 time step continuity errors : sum local = 1.0682969e14, global = 1.8848323e16, cumulative = 1.5875413e12 GAMG: Solving for p, Initial residual = 2.5974584e11, Final residual = 2.9280769e11, No Iterations 1 GAMG: Solving for p, Initial residual = 2.9280769e11, Final residual = 1.7496057e11, No Iterations 1 GAMG: Solving for p, Initial residual = 1.7496057e11, Final residual = 2.6297426e11, No Iterations 1 GAMG: Solving for p, Initial residual = 2.6297426e11, Final residual = 1.1829165e11, No Iterations 1 GAMG: Solving for p, Initial residual = 1.1829165e11, Final residual = 2.4555155e11, No Iterations 1 GAMG: Solving for p, Initial residual = 2.4555155e11, Final residual = 7.4940828e12, No Iterations 1 time step continuity errors : sum local = 3.0663851e15, global = 4.3989014e17, cumulative = 1.5875853e12 GAMG: Solving for p, Initial residual = 7.4791718e12, Final residual = 1.6194511e11, No Iterations 1 GAMG: Solving for p, Initial residual = 1.6194511e11, Final residual = 3.0673675e12, No Iterations 1 GAMG: Solving for p, Initial residual = 3.0673675e12, Final residual = 4.0309707e12, No Iterations 1 GAMG: Solving for p, Initial residual = 4.0309707e12, Final residual = 1.5195024e12, No Iterations 1 GAMG: Solving for p, Initial residual = 1.5195024e12, Final residual = 1.8218984e12, No Iterations 1 GAMG: Solving for p, Initial residual = 1.8218984e12, Final residual = 7.5119442e13, No Iterations 1 time step continuity errors : sum local = 3.2627828e16, global = 7.6036465e18, cumulative = 1.5875929e12 GAMG: Solving for p, Initial residual = 7.4683917e13, Final residual = 1.3436279e12, No Iterations 1 GAMG: Solving for p, Initial residual = 1.3436279e12, Final residual = 6.3566923e13, No Iterations 1 GAMG: Solving for p, Initial residual = 6.3566923e13, Final residual = 7.06753e13, No Iterations 1 GAMG: Solving for p, Initial residual = 7.06753e13, Final residual = 4.6526135e13, No Iterations 1 GAMG: Solving for p, Initial residual = 4.6526135e13, Final residual = 4.0346705e13, No Iterations 1 GAMG: Solving for p, Initial residual = 4.0346705e13, Final residual = 3.8065994e13, No Iterations 1 time step continuity errors : sum local = 1.7722797e16, global = 3.0768669e19, cumulative = 1.5875932e12 Setting traction on side solid patch Setting traction on tip solid patch Total side traction force = (6.0240237e06 3.2980641e06 0) Total side pressure = 1.0532179 Total tip traction force = (1.2242433e05 7.473294e08 0) Total tip pressure = 0.052978445 Solving for DU, Initial residual = 1, Final residual = 9.8376088e09, No outer iterations 128 

October 25, 2016, 16:08 

#10 
New Member
Sourabh Supanekar
Join Date: Jun 2015
Location: Stuttgart
Posts: 11
Rep Power: 11 
It is working now. it was a typo in a code.


Thread Tools  Search this Thread 
Display Modes  


Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
diffusivity selection for modified displacementLaplacian solver for FSI problems  zhaozhenkai  OpenFOAM Running, Solving & CFD  2  November 11, 2016 05:41 
Problems on implementing actuation disk on piso solver  frankyux  OpenFOAM Programming & Development  2  October 2, 2013 23:06 
how to extend FSI 2D codes to 3D, need advises  abouziar  Main CFD Forum  1  May 30, 2008 04:08 
Continuumbased solid code for FSI  jinwon park  Main CFD Forum  2  September 17, 2007 19:56 
CFX 5.5  Roued  CFX  1  October 2, 2001 16:49 