Hi,

On Friday 05 November 2010 07:12:03 [email protected] wrote:
> On the other hand, this is an issue if you use the hermitian transpose as an 
> inverse, but the pseudo-inverse should solve the problem, I believe.
> 
> This is what I know about loudspeaker arrangement, but I have no idea how 
> this 
> relate to the energy vector thing...
> (I don't actually know how this gains are derived... I always see these thing 
> from a different point of view, that is damping of the singular values of the 
> matrix you are inverting)

I don't know how rigorous your "rE should be constant" constraint is.

What I know is that you will find one answer when looking into spherical 
t-designs as sampling layouts.
Those designs provide that the sampling is orthogonal up to a given polynomial 
degree.

Those sampling schemes provide for their points rl (unit vectors of different 
directions) that you can replace the integral over a "spherical polynomials" of 
the degree t (and smaller) by a sum:

int( Pt(r^T r0), dr) = 4 pi / L sum Pt(rl^T r0) 

- Legendre polynomials Pn(cos(alpha)) are classical spherical polynomials and 
in fact, you can write every spherical beampattern we use for rV-Ambisonics 
panning in that way: one pattern pointing to r0 writes as

b(r,r0) = sum_n Pn(r^T r0) (2n+1).

r0 could be any point, for simplicity you can thing of it as the north pole.

To make t-designs work for Ambisonics, we must provide that encoding and 
decoding of the highest order N fulfills its definition

int( PN(r^T r0) * PN(r^T r0) , dr) = 4 pi / L sum PN(rl^T r0) * PN(rl^T r0)

-> so for rV-Ambisonics decoding we need a t-design with t=2N;

For the definition of the rE-vector component into the r0-direction, we 
multiply its definition integral with r0^T. Within the integral, we find the 
direction vectors r multiplied with the squared panning function

r0^T rE = r0^T int( r PN(r^T r0) * PN(r^T r0) , dr) = 4 pi / L r0^T sum rl 
PN(rl^T r0) * PN(rl^T r0)

pulling r0^T inside the integration we see, that we end up with spherical 
polynomials in z=r^T r0 of one degree higher:

int( z PN(z) * PN(z) , dz) = 4 pi / L dum zl PN(zl) * PN(zl)

- for constant rE vector we at least need a quadrature valid for one polynomial 
degree higher.


We can state:
* t-designs with t=2N allow perfect rV decoding, the rV vector is correct then 
with the matrix transpose instead of the pseudo-inverse.
* t-desings with t=2N+1 allow both perfect rV and rE, using the matrix 
transpose instead of the pseudo-inverse.

In my opinion: it is really hard to tell, whether a pseudo-inverse decoder 
always fulfills a constant rE, even when using the rE weights. 
What is definite: if your decoder COULD actually decode one order higher: there 
will be no problem.
But the answer is already between... polynomial degrees need to be orthogonally 
sampled at one step higher, and a step in spherical harmonics correspond to two 
polynomial degrees.

best regards

-- 
Dr Franz Zotter
Institut für Elektronische Musik und Akustik
Universität für Musik und darstellende Kunst
Tel.: +43(0)316/389 - 3382
Mob.:+43(0)650/9688373
Inffeldgasse 10
A - 8010 Graz
_______________________________________________
Sursound mailing list
[email protected]
https://mail.music.vt.edu/mailman/listinfo/sursound

Reply via email to