This is a read only copy of the old FEniCS QA forum. Please visit the new QA forum to ask questions

Point load on a beam: pls. help solve this long ongoing thread

+1 vote

Hi, This thread evolves from here, ... and here, and also from this link !

The following is the link to the 2D beam code:

https://github.com/ChaitanyaGoyal/2D_Linear_elasticity/blob/master/Beam_pointload.py

This is a 2D beam hinged at both ends (not exactly 'hinged') but fixed at midpoints of both ends and a point load is applied on the midpoint of the top edge.

Q.1 - I feel I am applying displacement (because of pointwise Drichlet BC) instead of load because the value I see in the viper plot is the same as the value of source term (force) 'T'. Also, I get the same result irrespective of whether the term " + inner(T, v)*ds(3)" is added to RHS equation.

Q.2 The output remains the same irrespective of the value of elastic modulus, clearly because the result is being driven by "displacement set as pointwise BC" instead of force.

Q.3 How to succesfully apply point load on a beam, whether 2D or 3D?

Will be extremely grateful for your answers! This is a long ongoing thread.

asked Aug 27, 2015 by Chaitanya_Raj_Goyal FEniCS User (4,150 points)

I found this link: http://fenicsproject.org/qa/2893/point-source-in-rhs-of-heat-eq?show=2893#q2893

I am trying to see if this method of defining a point source works in my code. until then, pls. drop your suggestions/ answers! Thanks

Edit: Turns out that Pointsource() apparently only takes in scalars, not vectors. So, doesn't work.

You can apply point sources to individual components of vector-valued function.

V = VectorFunctionSpace(...)
u = Function(V)

ps = PointSource(V.sub(0), x0)
ps.apply(u.vector())
...