Error when reading *KINEMATIC COUPLING

Hello!

I’m a calculix first timer and applying CL32-win32bit on a simple structural mechanics problem. There are 4 screws, which I model with a simple coupling spider:

*KINEMATIC COUPLING, REF NODE=356
Screw_1, 1, 3
*KINEMATIC COUPLING, REF NODE=357
Screw_2, 1, 3
*KINEMATIC COUPLING, REF NODE=17533
Screw_3, 1, 3
*KINEMATIC COUPLING, REF NODE=17550
Screw_4, 1, 3

The sets “Screw_*” contain the nodes of the washer elements of parts to be joined. The error message is

*ERROR reading *BOUNDARY. Card image:
Srew_1,1,3

If someone has suggestions how this problem emerges and how to solve, I’d be very thankful!

Best Regards

Nils

If a boundary condition is defined within a step, it should use this format:

*BOUNDARY
node_set, first_DOF, last_DOF, value

So it should be:

*BOUNDARY
Screw_1, 1, 3, 0

if you want to fix those DOFs.

Thanks Calc_em. I think the error message is a little misleading, because the error seems to be in the coupling definition and there is the value that you are talking about not required. I have no idea why “*Boundary” is printed in the error message :thinking:

My boundary is defined exactly as you wrote. I was already modifying several things using couplings, but somehow this seems not straight forward coming from abaqus

Actually, the kinematic coupling definition in CalculiX should look like this:

*COUPLING, REF NODE=..., SURFACE=..., CONSTRAINT NAME=...
*KINEMATIC
first_DOF, last_DOF

Calculix doesn’t have the *KINEMATIC COUPLING keyword.

1 Like

Thank you again Calc_em. I tried now to work with a Coupling Type Kinematic. Below you find both Coupling and surface definition

*SURFACE, NAME=Screw_1, TYPE=NODE
Screw_1, 1.
*COUPLING, CONSTRAINT NAME=COUPLING_114, REF NODE=356, SURFACE=Screw_1
*KINEMATIC
1, 6

and I still get an error message

*ERROR reading *SURFACE: only one entry per
line allowed
*ERROR reading *SURFACE. Card image:
Screw_1,1.

Can you tell, what is the error now? Thanks in advance for your reply!

@Nils I believe you need to use:

*SURFACE, NAME=SurfName, TYPE=ELEMENT
ElementID, FaceID

then

*COUPLING, CONSTRAINT NAME=Coup_Name, REF NODE=ID_1, SURFACE=SurfName
*KINEMATIC
1, 6

ElementID can be replaced with an element set. Are you using any particular pre-processor? Can you send the input deck to debug it?

Thanks for your answer and offer! I’ll try to debug and then get back to you!

Hi,

I thought kinematic coupling was only allowed for degrees of freedom from 1 to 3. ¿¿??
Manual says two times (only 1, 2 or 3 allowed).

Regards

That is correct. My bad, I Crtl+v too fast and did not change the limits. No rotational DOFs.

This approach it is kind of weird with its surface definition through the nodes , but it is the only kinematic combination that works with shells for me.

Yours:

*SURFACE, NAME=Screw_1, TYPE=NODE
Screw_1, 1.
*COUPLING, CONSTRAINT NAME=COUPLING_114, REF NODE=356, SURFACE=Screw_1
*KINEMATIC
1, 6

Try this:

*SURFACE,NAME=Screw_1,TYPE=NODE
Screw_1
*COUPLING,REF NODE=356,SURFACE=Screw_1,CONSTRAINT NAME=COUPLING_114
*KINEMATIC
1,3

Hi, Disla
Do you have any ideas about using kinematic coupling with rotational DOFs? It looks strange only with translational DOFs. Thank you.

Not with Kinematic card. That is a limitation of ccx.
If you don’t mind some model stiffening you could try defining two rigid bodies sharing a commond ROT.