[MBDyn-users] Fwd: Was:Curved membranes to fit straight beams => relax membrane

MBDyn users list mbdyn-users at mbdyn.org
Mon Feb 14 18:56:29 CET 2022


Hello,

I tried to change the integrator asymptotic radius (ms, 0.;) but I 
didn't get meaningful results: the membrane goes up a bit instead of 
being puled down by the gravity (bodies in Membrane nodes. So I reverted 
to time step 1e-4 and ms 0.6.

But this is really strange. Then I move in a side of the membrane, the 
minimum does not appear in the middle of the membrane (as I would 
expect), but in the nodes on the opposite side, just before the clamps. 
Attached some pictures for:

  * 0 displacement,
  * 5e-3 displacement (this one makes sense)
  * 1e-2 displacement (starts to get wrong)
  * 5e-2 displacement (Heu... opposite side)
  * 5e-1 displacement (quite visible artifact...)

Due to size limitation for emais, the other pictures are in 
https://www.dropbox.com/s/6d2yvl9luny2jvh/Membrane%20Relaxing.zip?dl=0

Do you see some explanations to that phenomena? Am I doing something wrong ?

Best regards,

JM


Le 13/02/2022 à 16:58, MBDyn users list a écrit :
> You are seeing an highly chaotic dynamics. Artificially damp the system
> changing the integrator asymptotic radius (I don't think you are 
> interested into the sail dynamic);
> as an added bonus you'll also be able to significantly increase the 
> time step (up to 1e-1)
>
> begin: initial value;
>     initial time: 0;
>     final time: 1.;
>     time step: 1e-2;
>     method: ms, 0.;
>     tolerance: 1e-5;
>     max iterations: 10;
>     nonlinear solver: line search, default solver options, heavy 
> nonlinear, divergence check, no;
>     output: iterations, solver condition number, stat, yes;
>         derivatives max iterations: 10;
>     threads: disable;
>         linear solver: umfpack, scale, row max column max, always, max 
> iterations, 10;
> end: initial value;
>
>  ...
>
> set: real MoveDist = 0.5;
>
> Let me know,
>
> Marco
> _______________________________________________
> MBDyn-users mailing list
> MBDyn-users at mbdyn.org
> https://mail.mbdyn.org/cgi-bin/mailman/listinfo/mbdyn-users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mbdyn.org/pipermail/mbdyn-users/attachments/20220214/34300ca6/attachment-0001.html>
-------------- next part --------------
/* 	Test MBDyn Membrane + mast + batten
 *	5x5 nodes generating 16 membranes = Sail
 *	One side of the square clampled (Boom)
 *	Opposite side is a beam = mast
 *	Total Joints links nodes on the sail to corresponding node on the mast
 *	and decrease the distance between those nodes.
 */

begin: data;
	problem: initial value;
end: data;

begin: initial value;
	initial time: 0;
	final time: 1.;
	time step: 1e-4;
	method: ms, 0.6;
	tolerance: 1e-5;
	max iterations: 10;
	nonlinear solver: line search, default solver options, heavy nonlinear, divergence check, no;
	output: iterations, solver condition number, stat, yes;
        derivatives max iterations: 10;
	threads: disable;
        linear solver: umfpack, scale, row max column max, always, max iterations, 10;
end: initial value;

begin: control data;
	structural nodes: 30;
	beams: 2;
	plates: 16;
        genels: 15;
        joints: 10;
	rigid bodies: 25;
	
	# Define gravity to have some forces applied to the Membrane nodes
	gravity;

	output frequency: 10;
end: control data;

begin: nodes;

# Pure Membrane nodes are declared as "dynamic displacement". Nodes that are fixed to beam nodes and nodes
# to be controlled by Total Joint are declared as structural dynamic nodes

structural: 1, dynamic, position, 0.0, 0.0, 0.0, orientation, eye, velocity, null, angular velocity, null;
structural: 2, dynamic displacement, position, 0.0, 1.0, 0.0, velocity, null;
structural: 3, dynamic displacement, position, 0.0, 2.0, 0.0, velocity, null;
structural: 4, dynamic displacement, position, 0.0, 3.0, 0.0, velocity, null;
structural: 5, dynamic displacement, position, 0.0, 4.0, 0.0, velocity, null;

structural: 6, dynamic, position, 1.0, 0.0, 0.0, orientation, eye, velocity, null, angular velocity, null;
structural: 7, dynamic displacement, position, 1.0, 1.0, 0.0, velocity, null;
structural: 8, dynamic displacement, position, 1.0, 2.0, 0.0, velocity, null;
structural: 9, dynamic displacement, position, 1.0, 3.0, 0.0, velocity, null;
structural: 10, dynamic displacement, position, 1.0, 4.0, 0.0, velocity, null;

structural: 11, dynamic, position, 2.0, 0.0, 0.0, orientation, eye, velocity, null, angular velocity, null;
structural: 12, dynamic displacement, position, 2.0, 1.0, 0.0, velocity, null;
structural: 13, dynamic displacement, position, 2.0, 2.0, 0.0, velocity, null;
structural: 14, dynamic displacement, position, 2.0, 3.0, 0.0, velocity, null;
structural: 15, dynamic displacement, position, 2.0, 4.0, 0.0, velocity, null;

structural: 16, dynamic, position, 3.0, 0.0, 0.0, orientation, eye, velocity, null, angular velocity, null;
structural: 17, dynamic displacement, position, 3.0, 1.0, 0.0, velocity, null;
structural: 18, dynamic displacement, position, 3.0, 2.0, 0.0, velocity, null;
structural: 19, dynamic displacement, position, 3.0, 3.0, 0.0, velocity, null;
structural: 20, dynamic displacement, position, 3.0, 4.0, 0.0, velocity, null;

structural: 21, dynamic, position, 4.0, 0.0, 0.0, orientation, eye, velocity, null, angular velocity, null;
structural: 22, dynamic displacement, position, 4.0, 1.0, 0.0, velocity, null;
structural: 23, dynamic displacement, position, 4.0, 2.0, 0.0, velocity, null;
structural: 24, dynamic displacement, position, 4.0, 3.0, 0.0, velocity, null;
structural: 25, dynamic displacement, position, 4.0, 4.0, 0.0, velocity, null;


# Mast declaration:
# Additional nodes 1-6-11-16-21 have to be declared separatly
structural: 101, dynamic, position, 0.0, 0.0, 0.0, orientation, eye, velocity, null, angular velocity, null;
structural: 106, dynamic, position, 1., 0.0, 0.0, orientation, eye, velocity, null, angular velocity, null;
structural: 111, dynamic, position, 2., 0.0, 0.0, orientation, eye, velocity, null, angular velocity, null;
structural: 116, dynamic, position, 3., 0.0, 0.0, orientation, eye, velocity, null, angular velocity, null;
structural: 121, dynamic, position, 4., 0.0, 0.0, orientation, eye, velocity, null, angular velocity, null;

end: nodes;

begin: elements;

#Node 1, as mast base and boom end is fully constrained

joint: 2001, total pin joint,
	101,
		position, null,
		position orientation, eye,
		rotation orientation, eye,
	position, 0.0, 0.0, 0.0,
	position orientation, eye,
	rotation orientation, eye,
	position constraint, active, active, active, null,
	orientation constraint, active, active, active, null;
	
joint: 2002, total pin joint,
	106,
		position, null,
		position orientation, eye,
		rotation orientation, eye,
	position, 1.0, 0.0, 0.0,
	position orientation, eye,
	rotation orientation, eye,
	position constraint, active, active, active, null,
	orientation constraint, active, active, active, null;
	
joint: 2003, total pin joint,
	111,
		position, null,
		position orientation, eye,
		rotation orientation, eye,
	position, 2.0, 0.0, 0.0,
	position orientation, eye,
	rotation orientation, eye,
	position constraint, active, active, active, null,
	orientation constraint, active, active, active, null;
	
	
joint: 2004, total pin joint,
	116,
		position, null,
		position orientation, eye,
		rotation orientation, eye,
	position, 3.0, 0.0, 0.0,
	position orientation, eye,
	rotation orientation, eye,
	position constraint, active, active, active, null,
	orientation constraint, active, active, active, null;

joint: 2005, total pin joint,
	121,
		position, null,
		position orientation, eye,
		rotation orientation, eye,
	position, 4.0, 0.0, 0.0,
	position orientation, eye,
	rotation orientation, eye,
	position constraint, active, active, active, null,
	orientation constraint, active, active, active, null;

# The Boom is clamped (Opposite row of nodes)

genel: 2004, clamp, 5, structural, 1, algebraic, 0.;
genel: 2005, clamp, 5, structural, 2, algebraic, 4.;
genel: 2006, clamp, 5, structural, 3, algebraic, 0.;

genel: 2007, clamp, 10, structural, 1, algebraic, 1.;
genel: 2008, clamp, 10, structural, 2, algebraic, 4.;
genel: 2009, clamp, 10, structural, 3, algebraic, 0.;

genel: 2010, clamp, 15, structural, 1, algebraic, 2.;
genel: 2011, clamp, 15, structural, 2, algebraic, 4.;
genel: 2012, clamp, 15, structural, 3, algebraic, 0.;

genel: 2013, clamp, 20, structural, 1, algebraic, 3.;
genel: 2014, clamp, 20, structural, 2, algebraic, 4.;
genel: 2015, clamp, 20, structural, 3, algebraic, 0.;

genel: 2016, clamp, 25, structural, 1, algebraic, 4.;
genel: 2017, clamp, 25, structural, 2, algebraic, 4.;
genel: 2018, clamp, 25, structural, 3, algebraic, 0.;

# Total joints to "sew" the sail to the mast progressively during initialization sequence
#controls distance between Mast node and Sail/membrane node
 
  set: real MoveDist = 0.01;
 
  joint: 1,
     total joint,
     101,			#mast node 106
   	position, null,
     1,			#membrane node 6
        position, null,
     position constraint, active, active, active,
	single, 0., 1., 0., #move in -Y direction
		#const, 0.,
		ramp, MoveDist/1., 0., 1., 0.,
	orientation constraint, active, active, active,
    null;	 


   joint: 2,
     total joint,
     106,			#mast node 106
   	position, null,
     6,			#membrane node 6
        position, null,
     position constraint, active, active, active,
	single, 0., 1., 0., #move in -Y direction
		#const, 0.,
		ramp, MoveDist/1., 0., 1., 0.,
	orientation constraint, active, active, active,
    null;	 

   joint: 3,
     total joint,
     111,			#mast node 106
   	position, null,
     11,			#membrane node 6
        position, null,
     position constraint, active, active, active,
	single, 0., 1., 0., #move in -Y direction
		#const, 0.,
		ramp, MoveDist/1., 0., 1.0, 0.,
	orientation constraint, active, active, active,
    null;	 

   joint: 4,
     total joint,
     116,			#mast node 106
   	position, null,
     16,			#membrane node 6
        position, null,
     position constraint, active, active, active,
	single, 0., 1., 0., #move in -Y direction
		#const, 0.,
		ramp, MoveDist/1.0, 0., 1., 0.,
	orientation constraint, active, active, active,
    null;	 

   joint: 5,
     total joint,
     121,			#mast node 106
   	position, null,
     21,			#membrane node 6
        position, null,
     position constraint, active, active, active,
	single, 0., 1., 0., #move in -Y direction
		#const, 0.,
		ramp, MoveDist/1., 0., 1., 0.,
	orientation constraint, active, active, active,
    null;	 


#Mass on each node

body: 1001, 1, 0.01, null, diag, 0., 0., 0.;
body: 1002, 2, 0.01;
body: 1003, 3, 0.01;
body: 1004, 4, 0.01;
body: 1005, 5, 0.01;
body: 1006, 6, 0.01, null, diag, 0., 0., 0.;
body: 1007, 7, 0.01;
body: 1008, 8, 0.01;
body: 1009, 9, 0.01;
body: 1010, 10, 0.01;
body: 1011, 11, 0.01, null, diag, 0., 0., 0.;
body: 1012, 12, 0.01;
body: 1013, 13, 0.01;
body: 1014, 14, 0.01;
body: 1015, 15, 0.01;
body: 1016, 16, 0.01, null, diag, 0., 0., 0.;
body: 1017, 17, 0.01;
body: 1018, 18, 0.01;
body: 1019, 19, 0.01;
body: 1020, 20, 0.01;
body: 1021, 21, 0.01, null, diag, 0., 0., 0.;
body: 1022, 22, 0.01;
body: 1023, 23, 0.01;
body: 1024, 24, 0.01;
body: 1025, 25, 0.01;


set: real MembraneThickness = 1.;
set: real MembraneE = 3.e9;

#Definition of the membranes 4x4 square

membrane4eas: 0,
	1, 6, 7, 2,
	isotropic,
		E, MembraneE,
		nu, 0.34,
		thickness, MembraneThickness;
		
membrane4eas: 1,
	2, 7, 8, 3,
	isotropic,
		E, MembraneE,
		nu, 0.34,
		thickness, MembraneThickness;

membrane4eas: 2,
	3, 8, 9, 4,
	isotropic,
		E, MembraneE,
		nu, 0.34,
		thickness, MembraneThickness;
	
membrane4eas: 3,
	4, 9, 10, 5,
	isotropic,
		E, MembraneE,
		nu, 0.34,
		thickness, MembraneThickness;

membrane4eas: 4,
	6, 11, 12, 7,
	isotropic,
		E, 30.0,
		nu, 0.34,
		thickness, MembraneThickness;

membrane4eas: 5,
	7, 12, 13, 8,
	isotropic,
		E, MembraneE,
		nu, 0.34,
		thickness, MembraneThickness;

membrane4eas: 6,
	8, 13, 14, 9,
	isotropic,
		E, MembraneE,
		nu, 0.34,
		thickness, MembraneThickness;
	
membrane4eas: 7,
	9, 14, 15, 10,
	isotropic,
		E, MembraneE,
		nu, 0.34,
		thickness, MembraneThickness;

membrane4eas: 8,
	11, 16, 17, 12,
	isotropic,
		E, MembraneE,
		nu, 0.34,
		thickness, MembraneThickness;

membrane4eas: 9,
	12, 17, 18, 13,
	isotropic,
		E, MembraneE,
		nu, 0.34,
		thickness, MembraneThickness;

membrane4eas: 10,
	13, 18, 19, 14,
	isotropic,
		E, MembraneE,
		nu, 0.34,
		thickness, MembraneThickness;

membrane4eas: 11,
	14, 19, 20, 15,
	isotropic,
		E, MembraneE,
		nu, 0.34,
		thickness, MembraneThickness;

membrane4eas: 12,
	16, 21, 22, 17,
	isotropic,
		E, MembraneE,
		nu, 0.34,
		thickness, MembraneThickness;

membrane4eas: 13,
	17, 22, 23, 18,
	isotropic,
		E, MembraneE,
		nu, 0.34,
		thickness, MembraneThickness;

membrane4eas: 14,
	18, 23, 24, 19,
	isotropic,
		E, MembraneE,
		nu, 0.34,
		thickness, MembraneThickness;
		
membrane4eas: 15,
	19, 24, 25, 20,
	isotropic,
		E, MembraneE,
		nu, 0.34,
		thickness, MembraneThickness;

	#Definition of the mast (left side of the square)

	beam: 2000,
		101, null,
		106, null,
		111, null,
		eye,
		linear elastic generic,
			diag, 1.e7, 1.e7, 1.e7, 1.e4, 1.e4, 1.e5,
		same,
		same;

	beam: 2001,
		111, null,
		116, null,
		121, null,
		eye,
		linear elastic generic,
			diag, 1.e7, 1.e7, 1.e7, 1.e4, 1.e4, 1.e5,
		same,
		same;

	
	gravity: 0., 0., -1., mult, time, 9.81;

end: elements;


-------------- next part --------------
A non-text attachment was scrubbed...
Name: Displacement 5e-3 ts 1e-4 ms 6e-1.png
Type: image/png
Size: 26286 bytes
Desc: not available
URL: <http://mail.mbdyn.org/pipermail/mbdyn-users/attachments/20220214/34300ca6/attachment-0002.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Displacement 5e-1 ts 1e-4 ms 6e-1.png
Type: image/png
Size: 35896 bytes
Desc: not available
URL: <http://mail.mbdyn.org/pipermail/mbdyn-users/attachments/20220214/34300ca6/attachment-0003.png>


More information about the MBDyn-users mailing list