Concern with mean rotation MPC

I’ve found something worrying in the mean rotation MPC which affects rotational DOF constraints and moments on beam elements as well as general use of meanrot in *MPC. It seems to be more about the underlying design of the mean rotation MPC rather than a bug, so I hope @dhondt can chime in or anyone else can help me understand it better.

It appears that this MPC constrains displacements in the plane normal to the rotation axis, ignoring the coordinate parallel to the axis. That’s OK when the nodes all lie in that plane, but when they’re at an angle to that plane it seems to have a side-effect on rotations about other axes.

For example, here’s a beam element oriented at 45 degrees to the z axis with (correctly working) boundary conditions at the top to make it rotate about a y-parallel axis. Without any constraints at the bottom end, it rotates as expected. Adding a z rotation constraint to the bottom node should have no effect because it’s not rotating about z anyway. However, that increases the displacement by about 10% and creates a bending moment in the beam. I think the reason for this is that on the expanded solid element, the two nodes at the +z extreme are at a greater radius from the y rotation axis so they have a greater x displacement than the other two expanded nodes. Those different x displacements look like a rotation about z so the mean rotation MPC moves the 4 nodes around to cancel that out.

``````*NODE
1,0,1,-1
2,0,0,0
3,0,1,-1.1
*ELEMENT,TYPE=B31,ELSET=1
1,1,2
2,1,3
*MATERIAL,NAME=Material
*ELASTIC,TYPE=ISOTROPIC
200000000000,0
*BEAM SECTION,ELSET=1,MATERIAL=Material,SECTION=RECT
0.1,0.1
1,0,0
*BOUNDARY
1,1,3,0
2,6,,0
3,2,,0
3,6,,0
*STEP
*STATIC
*BOUNDARY
3,1,,0.001
*NODE FILE
U
*END STEP
``````

I put this as an issue on Github as while ago Wrong displacement for beam with a single rotational DOF constraint. · Issue #69 · Dhondtguido/CalculiX · GitHub .

Hi Victor,

First to say is that rotations are nonlinear transformations. I was expecting NLGEOM to remove the problem but it doesn’t.

I can see this problem in a much simpler case if I increases one side of the beam much more than the other.

The source of the problem seems to be in what does it mean to constrain displacement of a beam node.

When I say z=0 on ccx, that seems to be imposed on the expanded nodes too. If z is =0, the beam can’t rotate at all and can’t accommodate the x displacement without inducing shear stresses.

Picture showing what happens and what should, when imposing a displacement in x direction.

I think those graphics from Mecway are misleading. They show the end faces not rotating because CCX doesn’t output rotation angle so it assumes zero. Better to use OUTPUT=3D to see what the expanded elements are really doing. Displacement constraint on beam does allow rotation and seems to work correctly as best as I could tell. It’s kind of a “mean displacement MPC”, not an independent SPC on each node.

It happens the same on a single beam with independent SPC on each node.
I have refine to show it better.

``````*NODE
1,0,0,-1
2,0,0,0
3,0,0,-0.9
4,0,0,-0.8
5,0,0,-0.7
6,0,0,-0.6
7,0,0,-0.5
8,0,0,-0.4
9,0,0,-0.3
10,0,0,-0.2
11,0,0,-0.1
*ELEMENT,TYPE=B31
1,11,2
2,1,3
3,3,4
4,4,5
5,5,6
6,6,7
7,7,8
8,8,9
9,9,10
10,10,11
*ELSET,ELSET=1
1
2
3
4
5
6
7
8
9
10
*MATERIAL,NAME=MATERIAL
*ELASTIC,TYPE=ISOTROPIC
200000000000,0
*BEAM SECTION,ELSET=1,MATERIAL=MATERIAL,SECTION=RECT
0.01,0.5
0,1,0
*BOUNDARY
1,2,,0
1,6,,0
2,1,,0
2,2,,0
2,3,,0
2,6,,0
*STEP
*STATIC,SOLVER=PARDISO
*BOUNDARY
1,1,,0.01
*NODE FILE,GLOBAL=YES,OUTPUT=3D
U,RF
*EL FILE,OUTPUT=2D,SECTION FORCES
S,NOE
*END STEP

``````

Those shear forces look like zero to me. 1 uN on a 500 mm wide steel plate is pretty negligible.

Why are my displacement lines horizontal?
Did you run my inp?

Yea my solution is from your file with OUTPUT=3D (EDIT: I mean SECTION FORCES removed so output is actually 3D). Mecway shows shear force lines normal to the undeformed shape so they’ll stay horizontal when it rotates.