HolterDPolter
Computer
- Oct 22, 2010
- 5
Hello,
I've been working on this problem for weeks (rather months) now and have tried several approaches, but nothing seems to work. It's a rather long description but I'm very thankful for anyone who reads it and may help me in any way.
I need to apply a rotation boundary condition on a rigid body simultaneously around the x- and z-axis, where the direction of the z-axis is constant and the x-axis is rotating around it (i.e. around the z-axis in the global x-y-plane) during the step.
My first approach was to define a local CSYS rotating around the global z-axis and then defining the BC of the rigid body with respect to the x-axis of this local CSYS. In theory this should yield the desired result, but unfortunately it doesn't, because Abaqus always seems to refer to the initial position of the local CSYS, giving me the same result, as if I had used the global CSYS.
My second approach was then to screw the local CSYS entirely and give the BC with respect to the global CSYS. Using a short MATLAB-script I transformed the rotation around 2 axes into a rotation around one axis, in order to get the rotation vector that Abaqus requires as input for ur1, ur2 and ur3 in the displacement/rotation-BC-dialogue. That gave me the wanted rigid body motion, but only using the static general step with NLGEOM = OFF. As soon as I turn NLGEOM = ON the results are significantly different, although the BC remain exactly the same. Since I am dealing with roll forming it is essential for me to have NLGEOM = ON.
(I also used dynamic explicit steps and for those Abaqus will always give the wrong motion, no matter whether NLGEOM is ON or OFF).
From what I could read in the documentation the NLGEOM-option affects only deformable bodies, does anyone know what this option does to rigid body motion?
Or maybe someone has an idea for a totally different approach to this problem?
Thanks so much for your help,
Alex
PS: I am using Abaqus 6.9-3
I've been working on this problem for weeks (rather months) now and have tried several approaches, but nothing seems to work. It's a rather long description but I'm very thankful for anyone who reads it and may help me in any way.
I need to apply a rotation boundary condition on a rigid body simultaneously around the x- and z-axis, where the direction of the z-axis is constant and the x-axis is rotating around it (i.e. around the z-axis in the global x-y-plane) during the step.
My first approach was to define a local CSYS rotating around the global z-axis and then defining the BC of the rigid body with respect to the x-axis of this local CSYS. In theory this should yield the desired result, but unfortunately it doesn't, because Abaqus always seems to refer to the initial position of the local CSYS, giving me the same result, as if I had used the global CSYS.
My second approach was then to screw the local CSYS entirely and give the BC with respect to the global CSYS. Using a short MATLAB-script I transformed the rotation around 2 axes into a rotation around one axis, in order to get the rotation vector that Abaqus requires as input for ur1, ur2 and ur3 in the displacement/rotation-BC-dialogue. That gave me the wanted rigid body motion, but only using the static general step with NLGEOM = OFF. As soon as I turn NLGEOM = ON the results are significantly different, although the BC remain exactly the same. Since I am dealing with roll forming it is essential for me to have NLGEOM = ON.
(I also used dynamic explicit steps and for those Abaqus will always give the wrong motion, no matter whether NLGEOM is ON or OFF).
From what I could read in the documentation the NLGEOM-option affects only deformable bodies, does anyone know what this option does to rigid body motion?
Or maybe someone has an idea for a totally different approach to this problem?
Thanks so much for your help,
Alex
PS: I am using Abaqus 6.9-3