[PD-dev] PureUnity trailer!

Mathieu Bouchard matju at artengine.ca
Sun Jan 1 18:31:44 CET 2006


On Sun, 1 Jan 2006, Frank Barknecht wrote:

> For example the physical modelling patches I did (as a-*.pd in
> svn://footils.org/pd/msd/trunk/phys) have to use this kind of recursive
> operations a lot and the current implementation becomes unstable much
> faster than pmpd or msd do. I would really like to find out why.

It depends on how you solve the differential equations. In discrete
methods, you don't make dx (also known as h) tend towards 0, and so you
have to pick a value of dx, and apparently the sign of dx matters in the
stability, but I don't remember why.

> Do I assume correctly, that Pd is using the same precision floats
> (32-bit floating point) in messages as they would be used, when I
> declare something t_float in a C-external?

Yes, it's all the same 1+23+8=32 bits, 23 being the size of the mantissa,
guaranteeing a rounding by at most pow(2,-24) times the value.

> Somehow I have the impression, that message-float-computations in Pd
> aren't as precise as t_float computations in externals. However I cannot
> prove it yet ...

There is no difference like that. However, in Pd, there's a big difference
between the precision of binary floating-point and decimal floating-point,
and this affects [print], [netsend], the *.pd format, etc. You may lose 5
or 6 bits by converting to decimal floating-point.

 _ _ __ ___ _____ ________ _____________ _____________________ ...
| Mathieu Bouchard - tél:+1.514.383.3801 - http://artengine.ca/matju
| Freelance Digital Arts Engineer, Montréal QC Canada




More information about the Pd-dev mailing list