[PD] get the position of the mass in the same order than the creation with MSD

Jack jack at rybn.org
Thu Jul 8 18:50:45 CEST 2010


Le jeudi 08 juillet 2010 à 17:03 +0200, cyrille henry a écrit :
> could you try to create the mobil masses, then the fixed masses, and use a list split 10000?
OK, done.
In fact, with 10000 mobiles masses and 10000 fixed masses, if i want
position of the mobiles masses, i need to use a list split with
10000*2=20000 (for X and Y).

So i have something like this :
[MSD2D]
|
[route massesPosL]
|
[list split 20000]
|
[t l l]
|     \
[list length]
|       \
[until]  \
|         \
[list append]
|         /
[list split 2]
|
[unpack f f]
|
etc. with gemhead

Maybe i miss something, but even with a structure with 2500 mobiles
masses, this is slow.
Thanx for your help.
++

Jack


> 
> couls you check what is the slow part of your patch :
> i bet msd use about 10% cpu, everything else is used by the use of the data.
> c
> 
> 
> Le 08/07/2010 14:53, Jack a écrit :
> > Hmm, in fact, this system is as slow as PMPD (even more !) even using
> > [get massesPos mamasse(.
> > The problem could come that i have 10000 times : mobile mass<->  link
> > <->  immovable mass ? Is it preferable to have this system managed by
> > PMPD instead of MSD ?
> > ++
> >
> > Jack
> >
> >
> >
> > Le jeudi 08 juillet 2010 à 13:31 +0200, Jack a écrit :
> >> Super ! It is working fine with [massesPosL(, a [until], a [list split
> >> 4] and a [unpack f f].
> >> Thanx a lot !
> >> ++
> >>
> >> Jack
> >>
> >>
> >>
> >> Le jeudi 08 juillet 2010 à 13:24 +0200, Jack a écrit :
> >>> Hello Cyrille,
> >>>
> >>> Thanks for your answer.
> >>> My system has 10000 mobiles masses, 10000 immovables masses and 10000
> >>> links.
> >>> I tried with [massesPosL( message. But the problem is i got the position
> >>> of the immovables masses. Maybe i can start to create the 10000
> >>> immovables masses, then the 10000 mobiles masses and split the list at
> >>> 10000 (the list is obtained with [massesPosL().
> >>> Or i can split 4 elements then split 2 elements.
> >>> I will try...
> >>> ++
> >>>
> >>> Jack
> >>>
> >>>
> >>> Le jeudi 08 juillet 2010 à 09:46 +0200, cyrille henry a écrit :
> >>>> did the massesPosL message could help you?
> >>>>
> >>>> otherwise, you have the solution to use frank trick :
> >>>> use the output of the get message to write in a table, and then read the table...
> >>>>
> >>>> c
> >>>>
> >>>> Le 08/07/2010 02:13, Jack a écrit :
> >>>>> Hello,
> >>>>>
> >>>>> I have a problem with MSD (exactly [MSD2D]). When i send [bang, get
> >>>>> massesPos mamasse( to [MSD2D], the output order of the positions of the
> >>>>> masses is not the same that the one which was given during the creation.
> >>>>>
> >>>>> I'm not sure to be clear, so it is better to see an example ;) (see the
> >>>>> attach patch) :
> >>>>>
> >>>>> If i create 3 masses in this order : [mass mamasse 1 100 0 1(, [mass
> >>>>> mamasse 1 100 2 3( and [mass mamasse 1 100 4 5(.
> >>>>> Then if i send [bang, get massesPos mamasse(, i can get from the first
> >>>>> outlet of [MSD2D] :
> >>>>> [massesPosId mamasse 2 3(
> >>>>> [massesPosId mamasse 0 1(
> >>>>> [massesPosId mamasse 4 5(
> >>>>> Or
> >>>>> [massesPosId mamasse 4 5(
> >>>>> [massesPosId mamasse 2 3(
> >>>>> [massesPosId mamasse 0 1(
> >>>>> Or
> >>>>> ...
> >>>>>
> >>>>> This is not really easy for me because i need to conserve this order :/
> >>>>> It would be better to always get :
> >>>>> [massesPosId mamasse 0 1(
> >>>>> [massesPosId mamasse 2 3(
> >>>>> [massesPosId mamasse 4 5(
> >>>>>
> >>>>> Is there a solution with MSD ?
> >>>>> With PMPD and dynamic patching, i have no problem, but it is too slow.
> >>>>> Number of mass>   10000.
> >>>>> ++
> >>>>>
> >>>>> Jack
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>> _______________________________________________
> >>>>> Pd-list at iem.at mailing list
> >>>>> UNSUBSCRIBE and account-management ->   http://lists.puredata.info/listinfo/pd-list
> >>>
> >>>
> >>>
> >>>
> >>> _______________________________________________
> >>> Pd-list at iem.at mailing list
> >>> UNSUBSCRIBE and account-management ->  http://lists.puredata.info/listinfo/pd-list
> >>
> >>
> >>
> >> _______________________________________________
> >> Pd-list at iem.at mailing list
> >> UNSUBSCRIBE and account-management ->  http://lists.puredata.info/listinfo/pd-list
> >
> >
> >
> > _______________________________________________
> > Pd-list at iem.at mailing list
> > UNSUBSCRIBE and account-management ->  http://lists.puredata.info/listinfo/pd-list





More information about the Pd-list mailing list