Hi Bruno, this also looks as a nice approach, to make a "Python engine" :-) I was thinking about it, to define python function SomeEngine(...) and then O.engines=[...,PyRunner(command=SomeEngine(...),...),...] put it to proper place in O.engines..
What I wrote was only ideas, but if it would be so big problem, maybe such pythonic solution would be ok for most cases.. regards Jan ______________________________________________________________ > Od: "Bruno Chareyre" <[email protected]> > Komu: [email protected] > Datum: 19.11.2010 14:20 > Předmět: Re: [Yade-users] Combining engines prescribing movement > >Hi Jan, > >In many cases (perhaps not yours) the simpler way is to prescribe velocity on >non-dynamic >bodies. That way, you don't need engines, and you are sure you are not >breaking any of the >constitutive laws. >Say, you want the position of body "i" to be Xi=a.sin(wt), then you assign >O.bodies[i].state.vel=aw.cos(wt) in python. >My two cents. > >Bruno ______________________________________________________________ > Od: "Jan Stránský" <[email protected]> > Komu: yade-dev <[email protected]> > Datum: 19.11.2010 13:54 > Předmět: Re: [Yade-dev] Combining engines prescribing movement (moved > fromyade-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" <[email protected]> >> Komu: Yade Development Group <[email protected]> >> 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 : [email protected] >>Unsubscribe : https://launchpad.net/~yade-dev >>More help : https://help.launchpad.net/ListHelp >> > >_______________________________________________ >Mailing list: https://launchpad.net/~yade-dev >Post to : [email protected] >Unsubscribe : https://launchpad.net/~yade-dev >More help : https://help.launchpad.net/ListHelp > _______________________________________________ Mailing list: https://launchpad.net/~yade-dev Post to : [email protected] Unsubscribe : https://launchpad.net/~yade-dev More help : https://help.launchpad.net/ListHelp

