Hello,

I'm wondering how works faust internal evaluation with recurrence formulas and 
if there is a way to optimize it in the context where all the terms of the 
recurrence are asked. Let me explain by an example:

Let's have this pattern matching function:

f(0,x) = x;
f(n,x) = alpha*f(n-1,x);

where alpha is a complicated expression, long to evaluate.

Now, if I ask:

process =  par(i,M,f(i,x));

each output will be an increasing call of f(n,x) from i=0 to M-1. 
Each term in this parallel composition will be computed from recurrence 
formula, Thus, 

f(M-1,x) = alpha*f(M-2,x) = ..... = alpha^(M-1) f(0,X)

I suppose faust evaluation compute alpha^(M-1) f(0,X). 

However, as I asked 

process= par(i,M,f(i,x));

faust already computed f(M-2,x) when i=M-1 and it could be used to compute 
straightly

f(M-1,x) as f(M-1,x) = alpha f(M-2,x)

In the light of this, I'm wondering if there is a way to tell faust in the 
code to use the previously computed expression f(i-1,x) instead of going all 
the way down the recurrence (up to f(0,x)) to compute the term f(i,x).

Thank you for your help and suggestions

Pierre


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Faudiostream-users mailing list
Faudiostream-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/faudiostream-users

Reply via email to