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
