← Back to team overview

yade-dev team mailing list archive

Re: Combining engines prescribing movement (moved from yade-users)

 

Hello,

it was not my plan to begin such changes by my question on yade-users, but some my remarks (unfortunately I will not have enough time in coming weeks/months to contribute myself..) when such discussion is opened:

- it would be very nice and for some users (I believe not only me :-) definitely useful to have such simple way how to prescribe motion (or forces/moments as well?) without need of implementing new engine (and to prevent having too many such engines in future)
- as any motion can be composed of translation and rotation, having good implementation of both and the possibility of combination of both would lead to possibility of defining any arbitrary motion very simply
- if I did it, I would do TranslationEngine (RotationEngine) prescribing constant velocity (constant angular velocity) in constant direction (along constant axis) = possibility to define any "linear" motion
- and then InterpolatingTranslationEngine (InterpolatinRotationEngine) with possibility of prescribing both velocity and direction (both angular velocity and axis of rotation) as a function of time. e.g. velocities = f(times) (as it is now in InterpolatingHelixEngine) = possibility to prescribe any arbitrary motion
- and for the case of simplicity, some basic combinations would be predefined (like HelixEngine or HarmonicEngine) and could be of course combined with others

not much related to Vaclav's comments, sory :-)

Regards
Jan

______________________________________________________________
> Od: "Václav Šmilauer" <eu@xxxxxxxx>
> Komu: Yade Development Group <yade-dev@xxxxxxxxxxxxxxxxxxx>
> Datum: 19.11.2010 13:49
> Předmět: Re: [Yade-dev] Combining engines prescribing movement (moved from yade-users)
>
>
>> I will remove displacements and rotations in ForceContainer, and 
>> replace them by one-time velocity and angularVelocity: they will be 
>> added to state->vel and state->angVel in NewtonIntegrator, but reset 
>> by ForceResetter; and they can accumulate, just like forces do.
>There is another problem with this approach, which is that those 
>transient velocities will be considered only in NewtonIntegrator, but 
>not elsewhere (think kineticEnergy, mutual velocity, ...).
>
>The mess comes from the fact that we would like to have a part of 
>velocity (in state->vel) that is remembered only as long as an engine is 
>active, and then disappears; this is not possible (unless we invent very 
>ugly things).
>
>Is someone smart enough to propose a solution that would satisfy the 
>following?
>
>1. make state->vel always derivative of state->pos (even if multiple 
>translations/rotation/... engines are applied, there are interactions etc)
>
>2. effects of kinematic engines are there only as long as the engines 
>are active
>
>3. perhaps something else I forgot...
>
>Cheers, v.
>
>
>_______________________________________________
>Mailing list: https://launchpad.net/~yade-dev
>Post to     : yade-dev@xxxxxxxxxxxxxxxxxxx
>Unsubscribe : https://launchpad.net/~yade-dev
>More help   : https://help.launchpad.net/ListHelp
>



Follow ups

References