
[Sponsors] 
April 19, 2007, 06:06 
Hello,
I am trying to run a

#1 
Senior Member
Philippose Rajan
Join Date: Mar 2009
Location: Germany
Posts: 546
Rep Power: 18 
Hello,
I am trying to run a stress analysis case using openFOAM 1.4, and the solidDisplacementFoam solver. Firstly... is the solver capable of being used for relatively complicated 3D cases, with multiple constraints? Or is it only a demo solver, primarily for 2D applications? I was looking at the different boundary conditions in the tutorials, but was not able to find all the boundary conditions I need. 1. How can I constrain motion of a patch to only one degree of freedom? For example... fixed in the x and y directions, but movable in the z direction? 2. In the tractionDisplacement condition, what do the "traction", "pressure" and "value" terms imply? And what units do they take? 3. What does the "slip" boundary condition do? Can that be used to selectively constrain different directions? Awaiting a reply. Have a nice day! Philippose 

July 30, 2008, 09:53 
Hello,
I have the same ques

#2 
Guest
Posts: n/a

Hello,
I have the same question: Do the SolidDisplacementFoam and the SolidEquilibriumDisplacementFoamSolvers work only for 2D cases or also for 3D cases? The reason why I'm asking is the following: I took the beamEndLoadtutorial (for the SolidEquilibriumDisplacementFoamSolver) and changed only the mesh description to a 3Dmesh description. This means: 1.I changed the patchtype for the defaultFacespatch from "empty" to "patch" in the boundary file of mesh description. 2.In the initialfieldfile of D I changed the "empty"type of the defaultFacespatch to "tractionDisplacement" (with the same conditions as for the bottomSurface and the topSurface) 3.In the initial field of p I changed the type "empty" to "calculated" with the value "uniform 0". The result of this modification is, that the solution diverged. Also, if I switch the planeStresscondition in the mechanicalPropertiesfile. Has anyone an idea why? For the solidDisplacementFoamSolver I modificated a working 2D case in the analogous way I described above for getting a 3D case. Here the solution also diverged. I have no idea, what else I have to change in a 2Dcase, to get a working 3Dcase for the SolidEquilibriumDisplacementFoamSolver or the SolidDisplacementFoamSolver. For all of that I used OpenFOAM1.4.1. Thanks in advance! Karen 

July 30, 2008, 11:23 
Hi !
Those solvers are supp

#3 
Member
Mathieu Olivier
Join Date: Mar 2009
Location: Quebec City, Canada
Posts: 76
Rep Power: 10 
Hi !
Those solvers are supposed to work in 3D. Did you change your mesh ? Because a 2D mesh is a 3D mesh with only one cell in the third direction, which is not appropriate for a 3D simulation. Regards, Mathieu 

July 31, 2008, 06:18 
Hello,
okay, thank you, tha

#4 
Guest
Posts: n/a

Hello,
okay, thank you, that could be one point in my modification of beamEndLoadtutorial, which lead to divergence. But for the SolidDisplacementFoamSolver I generated a mesh with some more cells in all directions about the tetgenToFoamutility. There the solution also diverged. Are you sure, that the solver should work in 3D? Because there is one more thing that perplex me: When I switch the planeStresscondition in the mechanicalPropertiesfile, I get a "Plane Strain" remark instead a "Plane Stress"remark in the outputfile. So plane stress and plane strain both seems to be 2Dconditions for me. By contrast I can't see a restriction on 2D for the equations in the sourcecode of the solver. So I ask me, why should there be a plane strain or plane stress output, if there is not a restriction on 2D? Have someone any ideas? Thanks in advance Karen 

July 31, 2008, 08:49 
Hi Karen,
This solver reall

#5 
Member
Mathieu Olivier
Join Date: Mar 2009
Location: Quebec City, Canada
Posts: 76
Rep Power: 10 
Hi Karen,
This solver really work in 3D. Take a look at this link : http://powerlab.fsb.hr/ped/kturbo/Op...tressPaper.pdf The equation 5 will help you to understand the "plane strain" remark (in fact, plane strain and 3D use the same Lamé Coefficients...). Here are some other points you may consider :  those solvers take only small deformations into account;  if you do a transient simulation, then your nCorrector parameter (in fvSolution) should be set to a high value to ensure convergence within each time step;  there is a detailed tutorial in the user guide (in case you didn't notice). Good luck ! Mathieu 

July 31, 2008, 09:28 
Hi Karen,
I tried what you

#6 
Super Moderator
Takuya OSHIMA
Join Date: Mar 2009
Location: Niigata City, Japan
Posts: 518
Blog Entries: 1
Rep Power: 13 
Hi Karen,
I tried what you tried on 1.4.1 and 1.5, and the former diverged but the latter somehow converged. Don't know why though. By the way if you try the leastSquares scheme on 1.4.1 like in the plateHole case, you may want to have a look at another thread (leastSquares is virtually not working on the stock 1.4.1). http://www.cfdonline.com/cgibin/OpenFOAM_Discus/show.cgi?tpc=126&post=24129#POST241 29 As written in the thread, I tried several quasi3D cases (junctions of Ibeams) and it agreed reasonably with indeterminate system analyses. Takuya 

August 1, 2008, 08:19 
Hello,
thanks for your refe

#7 
Guest
Posts: n/a

Hello,
thanks for your references! I tried solidDisplacementFoamsolver with a 3D mesh of an other tutorial and some modifications in the controlDictfile and the initial conditions. This test now seems to work. I don't know what's wrong with the other 3D mesh, I generated with tetgen and converted with tetgenToFoam. I hope I will figure it out soon. Karen 

August 10, 2008, 13:43 
Hello everybody,
I take the

#8 
Guest
Posts: n/a

Hello everybody,
I take the beamEndLoad tutorial of the solidEquilibriumDisplacementFoamsolver, modificate it to a 3D case with the blockmeshutility (mesh as 3D, also planeStressoption is set to no) and get now a working 3D case in OpenFOAM1.5. If I take the bar of this case, but discretise it with tetraeders about tetgen or fluent (in contrast to discretising it in blocks with blockMesh), my solution always diverge. I tried with some finer mesh, with different solvers in the fvSolutionfile and some other things. The solution never converge. Has anyone an idea what I can do, that the solution converge? Perhaps some hints? Has someone the same problem? Or has someone a working 3Dtestcase for the solidEquilibriumDisplacementSolver (or solidDisplacementFoamSolver) with a mesh, discretised with tetraeders, which he can send me? (karen dot kuhn at web dot de) Thanks in advance Karen 

October 8, 2009, 17:56 
BC in SolidDisplacementFoam

#9 
New Member
Rituraj
Join Date: Oct 2009
Posts: 2
Rep Power: 0 
Hello Philippose,
I am facing the same problem as you. Did you resolve the problem ? I would greatly appreciate your or anybody else's help in this regards. Thanks, Rituraj 

October 8, 2009, 19:13 

#10 
New Member
Rituraj
Join Date: Oct 2009
Posts: 2
Rep Power: 0 
I guess this should work:
For example, if you want to make the normal components on left wall to be zero and the tangential components are between zeroGradient/slip depending on valueFraction (1 for slip) left { type partialSlip; valueFraction 0.5; } 

May 13, 2014, 06:26 
How to parameter the boundary condition on this exemple?

#11 
New Member
Jeff
Join Date: May 2014
Location: Nantes, France
Posts: 11
Rep Power: 5 
Hi OpenFOAM users!
I use OpenFOAM for a single week. My first goal is to compare this software with a FEA software like Abaqus or MSc Software for instance. In order to do this comparison, I want to run an exemple of a stress analysis a beam where I apply a load and I fixed the left part. The exemple from the tutorials of OpenFOAM named beamEndLoad shows the same particularities. That is why I run it. Unfortunately, I have some problems ... 1) Firstly, as the author said... is the solver capable of being used for relatively complicated 3D cases, with multiple constraints? Or is it only a demo solver, primarily for 2D applications? 2) The FoamFile named D in the 0 directory deals with the displacement in meters of the beam. Into this file, there is tractionDisplacement condition. What do the "traction", "pressure" and "value" terms imply? And what units do they take? Does these units depend on the dimension of D? 3) The FoamFile named p (located near the file D) means the strength in Newton I think. Am I wrong? What other boundary conditions exist for this FoamFIle (as the tractionDisplacement condition in p)? 4) Finally, when I run the exemple on paraFoam, what does the terms sigmaEq and sigma means? Why the term p disappear then we want calculate it? What the difference between p, sigmaEq and sigma? I know that I got numerous questions but I need only few answers maybe to help me to understand this exemple. Regards. MrJeff. Last edited by MrJeff; May 13, 2014 at 06:27. Reason: Add some details 

May 27, 2014, 05:27 
Reply on my question 2)

#12 
New Member
Jeff
Join Date: May 2014
Location: Nantes, France
Posts: 11
Rep Power: 5 
In order to reply to my question 2), the boundary type tractionDisplacement is set by:
traction: it denotes the load applied to the model in Pascal by default. pressure: it denotes the pressure applied to the model in Pascal. value: It denotes the the displacement initial conditions are set to (x; y; z). The unity is the meter by default. The explanations there http://www.openfoam.org/docs/user/pl...hp#x6370002.2 were not so clear in my mind. Last edited by MrJeff; May 27, 2014 at 05:29. Reason: Bad writing/spelling 

Thread Tools  
Display Modes  


Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
ChtMultiRegionFoam kOmegaSST solidDisplacementFoam  marico  OpenFOAM Running, Solving & CFD  4  January 16, 2009 03:51 