Hai,

Can we model this problem in Fenics?

Hai,

Can we model this problem in Fenics?

This looks like the energy functional for plane-strain elasticity. There is a good FEniCS-based tutorial on that problem here, by @bleyerj. That tutorial doesnâ€™t contain the traction term, but it could easily be added to the right-hand side form `l`

as `dot(t,u_)*ds`

, where `t`

is the traction vector and `ds`

integrates over the exterior boundary of the domain.

2 Likes

See the thickness is constant and taken out of the equation and we can do an area integral. can we model this in the fenics? How to model this? any resources

If the thickness is a constant (independent of position in the plane, as needed to move it outside of the integral), then its value wonâ€™t affect the displacement solution. The tutorial I linked chooses h^e = 1.

So letâ€™s say if we apply this idea to a plate in the tension of thickness 10 mm, if I multiply with 10 mm for including thickness effect. Will the solution gets affected or remain the same?

Think about it this way: If you find a displacement field \mathbf{u} that minimizes the energy \Pi(\mathbf{u}), then it will also be a minimum of C\Pi(\mathbf{u}), for any constant C. Since every term in your energy functional is scaled by h^e, then you can set it to 1 without loss of generality.

If the superscript e is meant to indicate that the thickness changes from element to element, then it *will* affect results. The easiest way to implement this would be to represent thickness as a `Function`

in the space `FunctionSpace(mesh,"DG",0)`

(i.e., the space of constants on elements), and simply keep it inside of the `dx`

integral (over the whole domain) used to define variational forms in FEniCS.

1 Like

Thanks for the answer, I have changed my view about the problem. Can you elaborate or show some way to implement this " The easiest way to implement this would be to represent thickness as a `Function`

in the space `FunctionSpace(mesh,"DG",0)`

"

Also, how can one implement area integral, like in the problem state above?

could you please help me on this.

Can you elaborate or show some way to implement this " The easiest way to implement this would be to represent thickness as a

`Function`

in the space`FunctionSpace(mesh,"DG",0)`

"

Itâ€™s difficult to provide more detail about how to create the `Function`

object without knowing the upstream format in which the thickness in each element is given. If you have already transferred the element thicknesses into the vector of degrees of freedom of a DG0 function `h`

, then you would simply go through Jeremyâ€™s tutorial linked above and multiply all the variational forms by `h`

.

Another note: As I see it, varying the thickness in space like this only makes sense physically in the plane stress interpretation of 2D elasticity; the difference in implementation between plane stress and plane strain is explained well in the tutorial.

Also, how can one implement area integral, like in the problem state above?

The `dx`

integration measure in FEniCS UFL (Unified Form Language) denotes an integral over volume in 3D, area in 2D, and length in 1D. (The dimension is determined automatically from the provided mesh.) Note that the â€ś`x`

â€ť in â€ś`dx`

â€ť should be understood in a vector-valued sense, where coordinates are x_1, x_2, etc., not in a scalar-valued sense, where coordinates are x, y, etc. Similarly, `ds`

is a surface integral in 3D, a line integral in 2D, and point evaluation in 1D.