|
[Sponsors] |
[solidMechanics] Foam-extend-4.0/solid mechanics |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
August 3, 2019, 08:15 |
Foam-extend-4.0/solid mechanics
|
#1 |
New Member
Theja
Join Date: Dec 2018
Location: Germany
Posts: 13
Rep Power: 7 |
Dear FOAM users,
I'm doing stress analysis for a geometry using elastic solid foam. My problem is the geometry consists of different materials. I would like to know if there is a way to assign different material properties to the geometry?? with regards, Theja |
|
August 3, 2019, 17:28 |
|
#2 | |
Senior Member
Ali Shayegh
Join Date: Oct 2015
Posts: 131
Rep Power: 11 |
Quote:
I think this tutorial is appropriate for your need: tutorials/solidMechanics/elasticSolidFoam/bimaterialPlate In constant/rheologyProperties you can assign different properties for different materials. First, the geometry is generated by for example blockMesh. Then setFields will be treated 'material' dictionary in '0' directory as one part or another is made of a different material. Ali |
||
August 6, 2019, 11:03 |
Acknowledgement
|
#3 | |
New Member
Theja
Join Date: Dec 2018
Location: Germany
Posts: 13
Rep Power: 7 |
Quote:
Hi Thank you for your reply! I'm working on it. I would like to know if we can add 4 different materials using the same solver?? Theja |
||
August 7, 2019, 01:33 |
|
#4 |
Senior Member
Ali Shayegh
Join Date: Oct 2015
Posts: 131
Rep Power: 11 |
||
August 7, 2019, 18:48 |
|
#5 | |
New Member
Theja
Join Date: Dec 2018
Location: Germany
Posts: 13
Rep Power: 7 |
Quote:
Thanks again for your reply! Can you help in clarifying how to know which block corresponds to which material? for example; in material properties i defined steel, aluminium in material properties then after executing the setFields, defaultFieldValues ( volScalarFieldValue materials 0 volVectorFieldValue U (0 0 0) ); regions ( boxToCell { box (0 0 0) (1 0.5 1); fieldValues ( volScalarFieldValue materials 1 ); } ); we get From this, how can we know block 1 belongs to the aluminium and remaining block is steel? |
||
August 8, 2019, 06:51 |
|
#6 |
Super Moderator
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,093
Rep Power: 34 |
Hi,
In elasticSolidFoam, the order in which the materials are given in rheologyProperties defines the index of the material i.e. the first material in "material 0", the second is "material 1", etc. The material index for each cell (i.e. defining what material it is) is specified in 0/materials and can be set with setFields. By the way, the solids4foam toolbox has removed this material index field and instead uses cellZones to specify different materials. Philip |
|
August 8, 2019, 11:11 |
|
#7 | |
New Member
Theja
Join Date: Dec 2018
Location: Germany
Posts: 13
Rep Power: 7 |
Quote:
Hi, Thanks for clarification. Theja |
||
August 11, 2019, 12:33 |
elasticSolidFoam
|
#8 |
New Member
Theja
Join Date: Dec 2018
Location: Germany
Posts: 13
Rep Power: 7 |
Hi,
My task is compute the stresses developed on a cylinder consisting of different materials. so I performed the simulation by adding one by one material using setFields. But the problem is "when I'm assigning a rubber material" to one of the component I'm getting floating point exception. Instead of rubber when I'm using different material (like aluminium) I'm getting results. But I need for rubber. I don't know where I'm deviating and I would like to know!! Attached are the case b.c's. with regards, Theja |
|
August 11, 2019, 23:54 |
|
#9 | |
Senior Member
Ali Shayegh
Join Date: Oct 2015
Posts: 131
Rep Power: 11 |
Quote:
Ali |
||
August 12, 2019, 04:03 |
|
#10 | |
New Member
Theja
Join Date: Dec 2018
Location: Germany
Posts: 13
Rep Power: 7 |
Quote:
Hi! Ali, Thank you for your reply! I have attached link of my case file. https://drive.google.com/open?id=1-W...HPO3FX7FCHeGQh |
||
August 15, 2019, 06:36 |
|
#11 | |
Senior Member
Ali Shayegh
Join Date: Oct 2015
Posts: 131
Rep Power: 11 |
Quote:
Code:
setFields elasticSolidFoam By the way, Are you sure that this is correct[0/U]: Code:
inside { type solidTraction; traction uniform ( 1 1 1 ); pressure uniform 3000000; value uniform (0 0 0); } Ali |
||
August 16, 2019, 20:34 |
|
#12 |
New Member
Theja
Join Date: Dec 2018
Location: Germany
Posts: 13
Rep Power: 7 |
[QUOTE=amuzeshi;742180]I downloaded and executed this case by:
Code:
setFields elasticSolidFoam By the way, Are you sure that this is correct[0/U]: Code:
inside { type solidTraction; traction uniform ( 1 1 1 ); pressure uniform 3000000; value uniform (0 0 0); } Ali[/QUOTE Thank you for your reply and executing the case. Yeah, It means that it was acting radially. correct me if I was wrong! I again re-executed it and got converged but that was not the solution I was expecting. I think there is still more I need to know before executing. I would like to know is there a way to extract a certain number of cell sets from a selected cells? From the figure, the geometry consists of 2 materials. using the setFields I assigned different material to one end of the pipe (orange color) by using 'boxToCell'. But I wouldn't want the bolts which are passing inside end of the flange to be of the different materials. The entire bolt should be the same material (blue color). so I would like to exclude the 'holes' region for the end pipe. How can I do that? can you suggest me any other ways? Theja |
|
August 17, 2019, 05:25 |
|
#13 | |
Senior Member
Ali Shayegh
Join Date: Oct 2015
Posts: 131
Rep Power: 11 |
Quote:
1- Prepare a STL file of the end pipe surface (containing holes). Then use surfaceToCell rather than boxToCell in setFieldsDict: Code:
surfaceToCell { file "geometry.stl"; outsidePoints ( (0 0 0) ); includeCut no; includeInside yes; includeOutside no; nearDistance 0; curvature 0; fieldValues ( volScalarFieldValue material 1 volVectorFieldValue U (1 0 0) ); } 2- About radial direction, I should investigate more; To the best of my knowledge however, current setting is not correct. Ali |
||
August 17, 2019, 17:27 |
|
#14 | |
New Member
Theja
Join Date: Dec 2018
Location: Germany
Posts: 13
Rep Power: 7 |
Quote:
Thank you for your help! Theja |
||
August 20, 2019, 08:41 |
|
#15 | |
Super Moderator
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,093
Rep Power: 34 |
Quote:
'(1 1 1)' means to apply a traction of 1 Pa in the X direction, 1 Pa in the Y direction and 1 Pa in the Z direction, whereas the pressure of 3000000 is automatically applied in the normal direction. The traction and pressure entries are summed together and applied as a total traction. Presumably, in this case the traction entry should be set to (0 0 0). Philip |
||
August 21, 2019, 17:49 |
|
#16 | |
New Member
Theja
Join Date: Dec 2018
Location: Germany
Posts: 13
Rep Power: 7 |
Quote:
Hi! Ali I tried the 'surfaceToCell' using the .stl file. But the problem was when I'm specifying the outside points, I'm getting an error 'outside point is not inside the cell'. The .stl domain ranges from (-0.142 -0.142 -0.022) to (0.142 0.142 0). And for solid structures do we specify as { ... includeInside no; includeOutside yes; ... } and vice-versa for pipe flows..!! And I would like to know What's the major difference in specifying the 'volVectorFieldValue U (1 0 0)' instead of U (0 0 0)..!! Or is there a way to execute using 'setSet' (creating a zone and assigning the material properties to that zone)? And in the tutorial of biMaterial case (elasticSolidFoam), 'setFieldDict' was defined as: regions ( boxToCell { box (0 0 0) (1 0.5 1); fieldValues .. ) But the mesh domain ranges from 0 to 0.1 in z-direction. so how could the box be constructed from 0 to 1 in z-direction. Theja Last edited by thejavarma9; August 21, 2019 at 19:37. |
||
August 22, 2019, 07:07 |
|
#17 | ||
Super Moderator
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,093
Rep Power: 34 |
Hi,
Just to comment on the following points: 1. Quote:
2. Quote:
Philip |
|||
August 22, 2019, 19:51 |
|
#18 | |
Senior Member
Ali Shayegh
Join Date: Oct 2015
Posts: 131
Rep Power: 11 |
Quote:
I can cross-check what u mentioned if you upload your STL file. There is no difference, It is only an initialization for numerical scheme. Bad initialization may end with diverging of the solution. |
||
August 23, 2019, 09:50 |
|
#19 | |
New Member
Theja
Join Date: Dec 2018
Location: Germany
Posts: 13
Rep Power: 7 |
Quote:
Hi!, Thank you for your reply! I have attached link of my stl file. https://drive.google.com/open?id=1_V...elUbHfrP_eaSWf Theja |
||
August 23, 2019, 23:42 |
|
#20 | |
Senior Member
Ali Shayegh
Join Date: Oct 2015
Posts: 131
Rep Power: 11 |
Quote:
|
||
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
error with reactingFoam | BakedAlmonds | OpenFOAM Running, Solving & CFD | 4 | June 22, 2016 03:21 |
[blockMesh] error message with modeling a cube with a hold at the center | hsingtzu | OpenFOAM Meshing & Mesh Conversion | 2 | March 14, 2012 10:56 |
[blockMesh] BlockMesh FOAM warning | gaottino | OpenFOAM Meshing & Mesh Conversion | 7 | July 19, 2010 15:11 |
[blockMesh] Axisymmetrical mesh | Rasmus Gjesing (Gjesing) | OpenFOAM Meshing & Mesh Conversion | 10 | April 2, 2007 15:00 |
[Gmsh] Import gmsh msh to Foam | adorean | OpenFOAM Meshing & Mesh Conversion | 24 | April 27, 2005 09:19 |