Fixed Support for 2D Beam Problem

56 views
Skip to first unread message

Hasan Tasneem

unread,
Dec 10, 2019, 10:35:20 AM12/10/19
to deal.II User Group
I am a beginner on Deal.ii. I have installed and run some of the tutorials. I am now trying to run one specific problem. This problem is 2D and is a beam problem. My dimension of the beam is 3*100mm. The beam is fixed on one end and there is 1000N of transverse loading on the other end. I am following Step-8 which solves an elastic equation. Everything I have inputted correctly. However, I am stuck on applying the fixed support. I want the fixed support at x equal to 0. I don't know how to proceed further. 

0,
boundary_values);
system_matrix,
solution,
system_rhs);

How should I alter this to get fixed support at x equal to 0.


Wolfgang Bangerth

unread,
Dec 10, 2019, 11:13:32 AM12/10/19
to dea...@googlegroups.com
On 12/10/19 8:35 AM, Hasan Tasneem wrote:
> I am a beginner on Deal.ii. I have installed and run some of the tutorials. I
> am now trying to run one specific problem. This problem is 2D and is a beam
> problem. My dimension of the beam is 3*100mm. The beam is fixed on one end and
> there is 1000N of transverse loading on the other end. I am following Step-8
> which solves an elastic equation. Everything I have inputted correctly.
> However, I am stuck on applying the fixed support. I want the fixed support at
> x equal to 0. I don't know how to proceed further.
>
> VectorTools::interpolate_boundary_values
> <https://nam01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdealii.org%2Fdeveloper%2Fdoxygen%2Fdeal.II%2FnamespaceVectorTools.html%23a187aeb575be07bc47cb3dea1a47aaf88&data=02%7C01%7CWolfgang.Bangerth%40colostate.edu%7C8c7a72a1adeb4a51a33808d77d8692da%7Cafb58802ff7a4bb1ab21367ff2ecfc8b%7C0%7C1%7C637115889269529807&sdata=dBtpLgO2b%2F7VxS%2BnTkfbUklV0TZJGp9o%2FKFAoA194Rk%3D&reserved=0>(dof_handler,
> 0,
> Functions::ZeroFunction<dim>
> <https://nam01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdealii.org%2Fdeveloper%2Fdoxygen%2Fdeal.II%2FclassFunctions_1_1ZeroFunction.html&data=02%7C01%7CWolfgang.Bangerth%40colostate.edu%7C8c7a72a1adeb4a51a33808d77d8692da%7Cafb58802ff7a4bb1ab21367ff2ecfc8b%7C0%7C1%7C637115889269539798&sdata=Ig%2B6Dk%2FJQk2UJfaTMp210MzgdAKDl6akaT6EsGLTlQI%3D&reserved=0>(dim),
> boundary_values);
> MatrixTools::apply_boundary_values
> <https://nam01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdealii.org%2Fdeveloper%2Fdoxygen%2Fdeal.II%2FnamespaceMatrixTools.html%23a9ad0eb7a8662628534586716748d62fb&data=02%7C01%7CWolfgang.Bangerth%40colostate.edu%7C8c7a72a1adeb4a51a33808d77d8692da%7Cafb58802ff7a4bb1ab21367ff2ecfc8b%7C0%7C1%7C637115889269539798&sdata=VruB70ggs57EfJA5%2BuULNSVhUyDTvI%2BqwIZZwD1TtG4%3D&reserved=0>(boundary_values,
> system_matrix,
> solution,
> system_rhs);
>
> How should I alter this to get fixed support at x equal to 0.

In your case, you want to apply the zero Dirichlet boundary conditions only on
the left side of the beam. To do this, you need to "mark" the different parts
of the boundary with different boundary indicators -- take a look a some of
the tutorial programs that set the "boundary_id". Then you need to call
interpolate_b_v with only that boundary_id that applies to the left side of
your domain.

Best
W.


--
------------------------------------------------------------------------
Wolfgang Bangerth email: bang...@colostate.edu
www: http://www.math.colostate.edu/~bangerth/

Mohammed Hassan

unread,
Jan 2, 2020, 2:03:40 PM1/2/20
to deal.II User Group
Hi Dealii Users;

I have a similar problem, I am running a 3D problem for a beam with the following dimensions x=10 mm and y= 1 mm and z =1 mm I am trying to adapt step-8 to my case the I am facing the following challenges :

1- importing msh file to the dealii, I copied a print_mesh_info function to see the vtu file but the following error pop up.

An error occurred in line <2018> of file </home/mohammed/FEM/dealii/dealii/source/grid/grid_in.cc> in function
    void dealii::GridIn<dim, spacedim>::read_msh(std::istream&) [with int dim = 3; int spacedim = 3; std::istream = std::basic_istream<char>]
The violated condition was:
    cells.size() > 0

2- the purpose of this work is to learn how to implement  the boundary conditions. the .msh file has been meshed as hexahedral where it has 100 cells along x axis and 10 cells along y and  10 cells along z axis. I would like to apply 100 N force on the right side of the beam pointing to ( + x axis and the second case + y axis " I mean the direction of the force") and a fixed wall on the left side knowing that I named the cells for the right side of the beam (in  .msh file) force while for the  left side of the beam wall.

Thank you in advance !

Kind Regards.
CMakeLists.txt
beam.msh
beam.cc

David Wells

unread,
Jan 6, 2020, 12:08:32 PM1/6/20
to deal.II User Group
Hi Hasan,

I loaded up your mesh in gmsh and it looks like something went wrong
with the extrusion: I only see quadrilaterals on two opposing faces
and no volume mesh at all. I think that if you fix the mesh you will
get past this error.

I attached a picture of what I see in gmsh to this message.

Thanks,
David
> --
> The deal.II project is located at http://www.dealii.org/
> For mailing list/forum options, see https://groups.google.com/d/forum/dealii?hl=en
> ---
> You received this message because you are subscribed to the Google Groups "deal.II User Group" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to dealii+un...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/db40fc39-9631-4eed-90e8-0def8efb1441%40googlegroups.com.
gmsh.png

Mohammed Hassan

unread,
Jan 7, 2020, 1:42:00 PM1/7/20
to deal.II User Group
Hi David,

Yes, I fixed the mesh file and it works fine for the stage of meshing, next I will to try to play with Boundary conditions. Many thanks for your support.

Regards,

On Tuesday, December 10, 2019 at 4:35:20 PM UTC+1, Hasan Tasneem wrote:

David Wells

unread,
Jan 7, 2020, 2:09:17 PM1/7/20
to deal.II User Group
Happy to help!
> --
> The deal.II project is located at http://www.dealii.org/
> For mailing list/forum options, see https://groups.google.com/d/forum/dealii?hl=en
> ---
> You received this message because you are subscribed to the Google Groups "deal.II User Group" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to dealii+un...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/a91bb4e5-6076-4c01-bce9-e54e6db5d716%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages