lunes, 10 de noviembre de 2025

Simulando arrays con R

Cuando uno junta dos o más elementos radiantes (una antena, un altavoz, un láser,...) y los pone a funcionar a la vez, podría pensar que simplemente se sumarán sus potencias y ya está: "dos altavoces suenan el doble de fuerte que uno solo". Pero la realidad puede ser un poco más compleja si hay ondas de por medio. Si los elementos radiantes están separados una distancia del orden de magnitud de la longitud de onda, se puede producir entre ellos un fenómeno de interferencia de ondas, tanto positiva como negativa, diferente en cada dirección.

Fuente: patrones de interferencia al iluminar una doble rendija con luz láser


En función de cuántos elementos haya, la separación entre ellos, y la relación de esta separación con la frecuencia de uso, puede haber unas direcciones del espacio en las cuales la agrupación de elementos radiantes o array, por el simple hecho de existir, va a transmitir más energía que en otras, llegando según el caso a poderse alcanzar nulos teóricos de señal. El patrón de radiación final del conjunto será la combinación del patrón individual de radiación de los elementos radiantes con el del array, que es el que vamos a estudiar en este ejercicio.

Ante este efecto inevitable, el ser humano se las ha ingeniado para usarlo a su favor haciendo desde cosas bonitas, como que en una iglesia puedas escuchar mejor al cura, a otras no tan bonitas, como que un caza de combate pueda fijar en el radar a un enemigo y cepillárselo.

~~~

Vamos a calcular un par de arrays, en concreto asociados a equipos de sonido. La próxima vez que vayas a una iglesia fíjate que los altavoces suelen ser verticales y largos. No es algo decorativo ni tampoco busca seguir la línea de las columnas, deben su forma a que dentro llevan varios pequeños altavoces alineados verticalmente formando un array que concentra el sonido hacia los feligreses del fondo, a la vez que reduce el sonido emitido a suelo y techo minimizando reverberaciones incómodas:



Vamos a modelar un array eclesiástico formado por 5 pequeños altavoces separados 20cm. A la frecuencia de 500Hz (típica donde la voz humana concentra la mayor parte de su espectro) el array emite hasta 4,4 veces más energía en el plano perpendicular al mismo que si solo se pusiera un altavoz con la misma potencia total.

Ese valor, que está en términos de energía/potencia, es lo que se denomina Directividad del array, mostrado aquí en coordenadas polares con simetría de revolución respecto al eje vertical (hacer clic para ver también la gráfica del Factor de array del que proviene así como versiones de ambos en dB):


~~~

El segundo ejemplo es un array de dos elementos separados 25cm, parte de una configuración D'Appolito en la que dos altavoces de graves se alinean en vertical con un tweeter colocado entre ambos. Los construí en su día con woofers de 5" de la marca valenciana Beyma para los altavoces del salón. Son cajas de dos vías con un filtro pasivo de cruce a 3kHz:



Podemos ver que en las frecuencias graves (100Hz) el array apenas introduce ninguna directividad (D=1). Sin embargo ésta aumenta con la frecuencia logrando una directividad de 2,9 a 686Hz, frecuencia exacta en la que la emisión hacia el suelo y el techo alcanzan un nulo teórico.

A partir de esa frecuencia se generan lóbulos adicionales, no muy deseables, aunque el máximo de emisión de sonido nunca deja de estar en el plano perpendicular al array, donde se sitúan hipotéticamente los oyentes (hacer clic para ver una animación continua para todo el rango de frecuencias de estas cajas incluyendo el Factor de array y las gráficas en dB):


~~~

Terminamos con algunos ejemplos de arrays más o menos cotidianos que podemos encontrarnos en el mundo real:



Todas las simulaciones se han hecho con una función generada con mucho acierto por ChatGPT, aunque le he tenido que corregir varias cosas como la orientación y el tipo de array. Curiosamente se empeñaba en calcular un array Endfire, que mediante unas fases concretas de alimentación de los elementos logra el máximo de radiación alineado con ellos. Para nuestros casos de uso nos interesaba sin embargo el más común array Broadside, que con todos sus elementos alimentados en fase logra el máximo de radiación en el plano perpendicular al array.

Repositorio con el código R: GitHub.

No hay comentarios:

Publicar un comentario

Por claridad del blog, por favor trata de utilizar una sintaxis lo más correcta posible y no abusar del uso de emoticonos, mayúsculas y similares.