<!-- canonical: https://docs.jmrp.io/phonometry/es/fluids/ -->
Source: https://docs.jmrp.io/phonometry/es/fluids/

Todas las demás áreas de esta biblioteca miden algo que ocurrió *en* un medio.
Este es el medio. Detrás de cada nivel de potencia sonora, de cada coeficiente
de absorción, de cada índice de reducción y de cada cálculo de propagación del
árbol hay una densidad y una velocidad del sonido, y durante casi toda la vida
de la biblioteca llegaban de la misma manera: como un número que alguien
escribió una vez.

Esta área existe para evitarlo. `phonometry.fluids` calcula el estado del
fluido a partir de las condiciones que de verdad se midieron, conserva esas
condiciones junto al resultado y dice qué modelo lo produjo.

Aquí se construyen tres medios. El aire húmedo tiene el modelo mejor enunciado
de la literatura acústica y tiene guía propia más abajo. El agua de mar tiene
cuatro ajustes rivales de la velocidad del sonido y lleva el que se le pidió.
Cualquier otro gas es `fluids.ideal_gas`, que toma la relación de calores
específicos y la masa molar que imprime una tabla de gases y devuelve la
velocidad y la densidad que se siguen, con hasta dónde llega ese cierre escrito
en el propio resultado.

## Los aires de esta biblioteca, y por qué son cuatro

Detrás de cada nivel que calcula la biblioteca hay una densidad y una velocidad
del sonido, y no todas vienen del mismo sitio. En el árbol hay cuatro estados,
cada uno junto al modelo o la norma que lo fija, y discrepan:

| Clave | c (m/s) | rho (kg/m3) | Qué lo fija |
| --- | ---: | ---: | --- |
| `iec-61094-2-annex-f/air` | 345,87 | 1,186 | IEC 61094-2 anexo F en el estado de referencia del anexo A.3 de la ISO 9053-2 |
| `allard-2009-jca/air` | 343 | 1,205 | las constantes con las que se publicó el modelo de Johnson-Champoux-Allard |
| `en-12354-annex-a/air` | 340 | 1,29 | EN/ISO 12354, la velocidad del anexo A y la densidad del anexo B |
| `phonometry-solver/air` | 343 | 1,2 | el valor por defecto de esta biblioteca para el solver acústico |

Ninguno está mal. Cada uno es el aire que supone su propio documento, y cambiar
uno por otro cambiaría el número que ese documento imprime: el 1,7 % que separa
el anexo de metrología de la norma de edificación es una discrepancia real
entre dos comités, no un redondeo.

Cada uno se queda donde está, junto a la cláusula que lo imprime. Reunirlos en
este paquete invertiría la dependencia que lo pone en la base: cualquier
dominio puede importar `fluids` sin arista de arquitectura, y un catálogo aquí
que metiera mano en `materials`, `building` y `simulation` haría que el medio
dependiera de tres de los dominios que se apoyan en él. La comparación es un
artefacto de documentación, y la página de [catálogos
publicados](/phonometry/es/reference/catalogues/) los pone los cuatro uno al
lado del otro.

Lo que sí lleva `fluids.PUBLISHED_FLUIDS` son los estados que esta biblioteca
ha leído de una página impresa: los tres fluidos que Bies imprime al principio
de su Tabla C.1, aire, agua dulce y agua de mar, cada uno nombrando esa página,
con el folio impreso, en su `model`, porque para un estado leído y no calculado
la tabla es lo que lo produjo.

No es una tabla donde consultar valores. El aire en unas condiciones medidas es
`fluids.air`, el agua de mar es `fluids.sea_water`, y los dos calculan el
estado en vez de recordarlo.

## Por qué no es un dominio

Dieciséis de los veintiún paquetes son dominios de aplicación: uno va a
`building` porque está midiendo un edificio, a `underwater` porque trabaja en
el agua. Nadie va a `fluids` porque esté midiendo un fluido. Se va porque lo
que sea que esté midiendo ocurre dentro de uno.

Así que se sienta con `filters`, `signals` y `metrology` en la caja de
herramientas transversal: cualquier paquete puede importarlo sin arista de
arquitectura, porque un medio no es un asunto que unos dominios tengan y otros
no. Fue el cuarto miembro de ese conjunto, el primero añadido desde que la
biblioteca partió en tres la caja original, y `solids` es el quinto.

## Tres clases de número, deliberadamente separadas

La razón por la que una biblioteca acaba con una docena de valores distintos
para la densidad del aire es que tres cosas diferentes se visten igual.

**La física del fluido** es lo que vive aquí. Responde a «qué es este aire, en
estas condiciones», y una física mejor es una mejora: cuando el modelo gana
exactitud, todo el que pidió aire debería recibir la respuesta más exacta.

**La fórmula simplificada de una norma** no es eso. Cuando ISO 10534-2 imprime
$c_0 = 343{,}2\sqrt{T/293}$, esa expresión es parte del procedimiento, y una
medida que dice seguir la norma tiene que usarla. Ésas se quedan en el módulo
que implementa su cláusula, con la cita al lado, y no se mudan aquí.

**Una constante congelada por una fila de conformidad** es una tercera cosa
más. El modelo Johnson-Champoux-Allard lleva un número de Prandtl de 0,71 como
constante publicada del modelo. El aire en el estado de referencia tiene 0,728.
Sustituir el valor físico dentro del modelo no corregiría un error, cambiaría
el modelo, y mueve la impedancia que calcula en 1,5 partes por mil. Esa
constante se queda congelada donde se publicó.

Mantener las tres separadas es lo que permite que una física mejor llegue a
quien llama sin que una sola medida deje de reproducir en silencio la norma que
cita.

**Sin sólidos.** Un `Fluid` no lleva velocidad de cizalla, y los materiales
elásticos de los resolvedores de onda conservan su propio tipo con su propia
precondición. Son magnitudes distintas que comparten la palabra «medio», y las
propiedades de un sólido están tabuladas donde las de un fluido se calculan:
viven en la puerta de al lado, en `phonometry.solids`.

**Sin campos, sólo estados.** Un `Fluid` es un fluido en un punto. Los perfiles
estratificados que recorren los trazadores de rayos se quedan en los paquetes
dueños de sus marchadores, en el océano y en la atmósfera, porque un perfil
describe un lugar y no una sustancia.

**Sin dependencia con la frecuencia.** La velocidad del sonido de aquí es la de
frecuencia cero. La relajación molecular hace que dependa de la frecuencia, y
el modelo que la describe vive con la absorción atmosférica que lo necesita, en
`phonometry.environment`.

## Qué hay aquí

- [Aire húmedo](/phonometry/es/fluids/humid-air/): la formulación CIPM-2007 del
  Anexo F de IEC 61094-2:2009, qué fija y qué no, cuánto vale cada condición y
  por qué la biblioteca pide la temperatura pero supone la presión en voz alta.
