[MBDyn-users] Constitutive law for a chain
Pierangelo Masarati
masarati at aero.polimi.it
Fri May 9 01:49:53 CEST 2008
Rudi Jaeger wrote:
> I tried the Scalar function approach with something like:
>
> set: integer cl_rod = 1;
>
> set: real high_force= 1.0e+16;
> set: real cut_force= 0.0;
> set: real eps= 1.0e-1;
>
> set: real k_plus= 1.0e+5;
> set: real k_minus= 1.0e-1;
>
> scalar function:
> "k_step_fun", multilinear,
> -high_force, k_minus,
> -cut_force-eps, k_minus,
> 0.0,0.0,
> cut_force+eps, k_plus,
> high_force, k_plus;
This is not going to give you what you need, if I understand your
problem correctly: in fact:
1) the constitutive law requires you to define a strain -> force
relationship; this means that the multilinear scalar function must map
strain and force values.
2) your constitutive law is symmetric, so it is not going to yield what
you intended.
You could rather try something like
set: real eps_min = -1;
set: real f_min = 0.;
set: real eps_max = 1.;
set: real f_max = 1.e9;
scalar function:
"k_step_fun", multilinear,
-eps_min, f_min,
0., f_min,
eps_max, f_max;
so the slope would be zero for negative strains, and f_max/eps_max for
positive strains (hope 1.e6 suffices; I had trouble with larger values
applied to your example).
Moreover, the strain must not be less than -1, so the "rod" approach is
not "safe": if the two nodes become too close to each other, you risk a
singularity. You could try to use beam elements, with minimal bending
stiffness. The problem can still be tricky, but it should be a little
bit more robust.
Cheers, p.
More information about the Mbdyn-users
mailing list