← Back to team overview

yade-users team mailing list archive

Re: R: Applying constant force on a wall

 

Ah, now it everything clear. The ForceEngine must be _before_
NewtonsDampedLaw (or PhysicalActionApplier), since forces are reset at
the beginning of every step. Therefore, the engine sets the force, but
it is immediately reset without being used.

HTH, Vaclav

PS. Instead of PhysicalActionDamper, PhysicalActionApplier and
PhysicalParametersMetaEngine, use NewtonsDampedLaw. It is functionally
the same, but faster, since it does less loops.

>        	## Forze e momenti definiti sui corpi. Calcolo delle accelerazioni
> con le leggi di newton
> 	MetaEngine('PhysicalActionApplier',[
> 		EngineUnit('NewtonsForceLaw'),
> 		EngineUnit('NewtonsMomentumLaw'),
> 	]),
> 	## Acceleration results in velocity change. Integrating the velocity
> over dt, position of the body will change.
> 	
> MetaEngine('PhysicalParametersMetaEngine',[EngineUnit('LeapFrogPositionInteg
> rator')]),
> 	## Angular acceleration changes angular velocity, resulting in
> position and/or orientation change of the body.
> 	
> MetaEngine('PhysicalParametersMetaEngine',[EngineUnit('LeapFrogOrientationIn
> tegrator')]),
> 	
> 	
>
> 	## Applica rotazione alla testa 1 giro/min = 0,1047 rad/s
> 	DeusExMachina('RotationEngine',{'subscribedBodies':head,
> 'rotationAxis':[0,0,1],'rotateAroundZero':True,'angularVelocity':0.1047}),
>
>        
>
>
>
>
>  ## Applica rotazione e traslazione alla testa
> 	
> ##DeusExMachina('SpiralEngine',{'subscribedBodies':head,'angularVelocity':0.
> 5,'linearVelocity':2, 'axis':[0,0,1]}),
>
> 	## Applica velocità di traslazione alla base
> 	
> ##DeusExMachina('TranslationEngine',{'subscribedBodies':[boxId],'velocity':-
> 1, 'translationAxis':[0,0,1]}),
>
> 	## Applica traslazione alla base
> 	
> ##DeusExMachina('DisplacementEngine',{'subscribedBodies':[boxId],'displaceme
> nt':-0.1, 'translationAxis':[0,0,1], 'active':True}),
>
> 	## Applica traslazione alla base
> 	
> ##DeusExMachina('DisplacementToForceEngine',{'subscribedBodies':[boxId],'dis
> placement':-0.05, 'translationAxis':[0,0,1], 'targetForce':[0,0,-1],
> 'targetForceMask':[0,0,0] }),
>
> 	## Applica traslazione alla base
> 	DeusExMachina('ForceEngine',{'subscribedBodies':[boxId],
> 'force':[0,0,-10]}),
>
> 	# Applica traslazione alla base
> 	#DeusExMachina('UniaxialStrainer',{'subscribedBodies':[948]}),
>      
>   




Follow ups

References