OpenFoam Solid Stress Anlalisys
Hello I am trying to do stress analysis of a Structural insulated panel, with SolidEquilibriumDisplacementFoam, without luck, here is case directory to download:
http://www.filedropper.com/sip Somehow the solution is not generating any stresses inside the panel. Please any help will be greatly appreciated. |
Hi,
What errors are you getting? I had a quick look at your case and your mechanical properties are not declared correctly (as in the $FOAM_TUTORIALS/stressAnalysis/solidEquilibriumDisplacementFoam/beamEndLoad case). Also you have a defaultFaces patch which is empty. Philip |
Quote:
The defaultFaces patch I included it because it also exists on the tutorial. the behavior is strange, the program only runs for nu = 0 and at the end the panel shows with 0 stress and 0 deformation everywhere. If I change nu=0.2 the solver crashes on iteration 550. while solving it alwas shows kineticEnergy = 0 kineticPower = 0 smi = 0 so basically nothing is happening I do not understand why!!!. |
Hi,
Ah the mechanicalProperties definition has changed in the standard OpenFOAM, OK that's fine. As regards the defaultFaces patch, you have the boundary condition set to empty on this patch, but you can only use empty for 1-D or 2-D cases and your case is 3-D so I presume this boundary conditions is meant to be traction-free or something like that? Also, has the case converged i.e. have you run the case for multiple time-steps OR have you increased the number of outer correctors? Philip |
Various Materials
Thanks for all your help Bigphil, I got rid of the empty patches thanks for the observation, but still it does not even converge.
I was wondering, How do I define two different materials right now I have FoamFile { version 2.0; format ascii; class dictionary; location "constant"; object mechanicalProperties; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // rho { type uniform; value 1200; } nu { type uniform; value 0.1; } E { type uniform; value 5558500000; } planeStress no; Thanks in advance for all your help!!! |
Hi Humberto,
To begin with, I would recommend you use "solidDisplacementFoam" in preference to "solidEquilibriumDisplacementFoam" even for steady state simulations (solidEquilibriumDisplacementFoams implementation tries to increase the convergence of steady state models using some tricks but I have found that it does not converge for Poisson's ratio's greater than zero). solidDisplacementFoam can simulate steady state by setting the d2dt2Scheme to steadyState. This will probably fix your convergence issues. As regards multi-material, you could replace the rho, nu, E uniform fields with non-uniform fields, however, I am not sure if there is a utility to do this. So I would recommend you use the solidMechanics solvers in OpenFOAM-1.6-ext which allow straight-forward simulation of multi-material bodies, however I am a bit biased ;). The tutorial OpenFOAM-1.6-ext/applications/solvers/solidMechanics/tutorials/elasticSolidFoam/bimaterialCase shows how to do it. Philip |
I also worked on modifying the solidDisplacementFoam solver to incorporate varying material parameters as fields in the same mesh, it "worked" in the sense that it converged and gave an output (identical to solidDisplacementFoam in the case of homogenous material), but I'm not sure about the physical reliability of the result.
I'm still using 1.7.x since when I first tried version 2 it tended to diverge. I might try 2.1.x. Also I wrote something to extract the strain, if that's ever useful to anyone else. |
Quote:
Thanks, Jon Pry |
Quote:
As I mentioned previously there are solvers in the solidMechanics branch of OpenFOAM-1.6-ext which are specifically designed for heterogeneous material properties. There has also been a paper recently published which is the basis of the adopted methods. Additionally strain fields are output. Best regards, Philip |
All times are GMT -4. The time now is 06:13. |