Problem using U1 element (general beam section)

Hi,
I ran into an issue with the general beam section (element type U1). I tried to make a simple test but aparently failed. So far I tried with ccx 2.15 and 2.17.
The example is the following, describing a cantilever with weight at the tip (I think I found a similar example elsewhere):

*NODE, NSET=Nall
1,0.,0.,0.
2,10.,00.,00.
3,20.,00.,00.
4,30.,00.,00.
5,40.,00.,00.
6,50.,00.,00.
7,60.,00.,00.
*ELEMENT, TYPE=U1, ELSET=Eall
1, 1, 2,
2, 2, 3,
3, 3, 4,
4, 4, 5,
5, 5, 6,
6, 6, 7,
*USER ELEMENT,TYPE=U1,NODES=2,INTEGRATION POINTS=2,MAXDOF=6
*BOUNDARY
1,1,6
*MATERIAL,NAME=EL
*ELASTIC
1.e11,.3
*BEAM SECTION,ELSET=Eall,MATERIAL=EL,SECTION=GENERAL
0.0625,3.2552e-4,0,3.2552e-4,0.8333
0.,0.,1.
*STEP
*STATIC
*CLOAD
7,2,-100.
*NODE PRINT,NSET=Nall
U, E
*END STEP

And the result shows some kind of sinusoidal bending of the cantilever:
displacements (v(i),i=1…ndof) for set NALL and time 0.1000000E+01

     1  0.000000E+00  0.000000E+00  0.000000E+00  0.000000E+00  0.000000E+00  0.000000E+00
     2  0.000000E+00  2.256738E-04  0.000000E+00  0.000000E+00  0.000000E+00 -2.573131E-05
     3  0.000000E+00 -3.861653E-04  0.000000E+00  0.000000E+00  0.000000E+00 -1.303645E-05
     4  0.000000E+00  1.471682E-04  0.000000E+00  0.000000E+00  0.000000E+00  5.416642E-05
     5  0.000000E+00  1.853246E-04  0.000000E+00  0.000000E+00  0.000000E+00 -3.173558E-05
     6  0.000000E+00 -1.554653E-04  0.000000E+00  0.000000E+00  0.000000E+00 -1.830398E-05
     7  0.000000E+00 -1.118166E-04  0.000000E+00  0.000000E+00  0.000000E+00  1.574896E-05

When I change the beam orientation, I get good results. The code changes as:

*BEAM SECTION,ELSET=Eall,MATERIAL=EL,SECTION=GENERAL
0.0625,3.2552e-4,0,3.2552e-4,0.8333
0.,1.,0.

The result now is:

displacements (v(i),i=1…ndof) for set NALL and time 0.1000000E+01

     1  0.000000E+00  0.000000E+00  0.000000E+00  0.000000E+00  0.000000E+00  0.000000E+00
     2  0.000000E+00 -8.702529E-03  0.000000E+00  0.000000E+00  0.000000E+00 -1.689604E-03
     3  0.000000E+00 -3.276510E-02  0.000000E+00  0.000000E+00  0.000000E+00 -3.072008E-03
     4  0.000000E+00 -6.911570E-02  0.000000E+00  0.000000E+00  0.000000E+00 -4.147211E-03
     5  0.000000E+00 -1.146823E-01  0.000000E+00  0.000000E+00  0.000000E+00 -4.915213E-03
     6  0.000000E+00 -1.663930E-01  0.000000E+00  0.000000E+00  0.000000E+00 -5.376014E-03
     7  0.000000E+00 -2.211756E-01  0.000000E+00  0.000000E+00  0.000000E+00 -5.529614E-03

The question is: Am I doing something wrong? Or is this a bug? I placed some time ago an issue in Github: U1 / General beam section issue · Issue #34 · mkraska/CalculiX-Examples · GitHub

Kind regards,

Pablo

Anything new on this topic? I ran this analysis in Abaqus and here are the results:

  • your first case (orientation for which the problem occurs in CalculiX):
    res1
  • your second case (orientation for which the CalculiX results are correct):
    res2

As you can see, it seems to confirm that there’s a bug in CalculiX (assuming that I correctly recreated these cases in Abaqus and I think that I did). Let’s notify the developer @dhondt, I hope he doesn’t mind.

Hi,

I hope to have time to look into this in September.

Best Greetings,

Guido

@dhondt That would be great, thank you very much. By the way, this recent thread discusses another potential bug related to general beam section and userbeam.inp test example: Doubt about userbeam.inp (U1) from ccx test

These issues seem to have the same cause and maybe they can be fixed in one go.

@dhondt Dear Dr Dhondt,

since the newest release of CalculiX (2.18) brought improvements to the user beam element, I checked whether the two recently discovered bugs are still present in this version or not. Apparently, this problem is fixed: Doubt about userbeam.inp (U1) from ccx test

But the one described in the current thread still occurs. I thought that both issues have the same cause but it seems that it’s not the case. Is there a chance that this bug discussed here will be fixed too? User beam elements offer large flexibility to users and it would be great to have them working reliably.

Best regards,
Calc_em

1 Like