Tratando de romper mi mal hábito de responder en comentarios, ahora pongo mis cosas anteriores aquí abajo. Como mencioné, me baso en gran medida en una publicación de blog que hice hace unos años, trabajando en el color del cielo. Tenía un espectro y quería un color. Como mencioné anteriormente, no puedes simplemente tomar un espectro y obtener una longitud de onda equivalente, solo algunos colores son llamados colores "espectrales". Estos son los que están en el arcoíris.
Para obtener un color a partir de un espectro, necesitamos saber cómo responden los ojos a la luz entrante. Como sabes, tienes tres tipos de células, con diferentes regiones de sensibilidad. Digamos que tenemos una función $f_i(\omega)$ que caracteriza la respuesta a una frecuencia $\omega$, siendo 1 el máximo y 0 el mínimo. La intensidad del espectro está dada por $I(\omega)$. Entonces podemos hablar sobre la respuesta total: $$ R_i = \frac{\int_0^\infty \mathrm{d} \omega \ f_i(\omega) I(\omega)}{\int_0^\infty \mathrm{d} \omega \ f_i(\omega)} $$ Lo he normalizado de tal manera que un espectro plano te da 1. Puedes ver que hay dos formas de obtener una gran respuesta: tener algo de intensidad en un lugar donde la respuesta $f$ es fuerte, o mucha intensidad en un lugar donde no lo es. Ahora, el subíndice está porque habrá tres de estos: $R_1, R_2, R_3$, uno para cada célula. Ahora puedes llevar esas respuestas (que se corresponden aproximadamente con rojo, azul y verde, pero no realmente) y ejecutarlas a través de una matriz que la transforma en la base RGB de la imagen de la computadora. Ahora, la computadora define los colores con un cuarto parámetro, el brillo. Para obtener esto a partir de un espectro, necesitarías conocer la intensidad medida real y mucho más sobre cómo responde el ojo, pero con el valor RGB puedes obtener una gama de colores que se corresponde con lo que podría parecer el espectro.
Ahora, específicamente preguntaste cómo se obtendría esto a partir de una serie de líneas espectrales. La respuesta aquí es que el espectro es cero en la mayoría de lugares, pero muy fuerte en otros. En este caso, la estructura matemática que quieres se llamaría funciones delta de Dirac, pero podemos ser un poco más simples. Básicamente, la integral se convertirá en una suma de todas las líneas espectrales discretas: $$ R_i = \frac{\sum_{j} \ f_i(\omega_j) I(\omega_j)}{\int_0^\infty \mathrm{d} \omega \ f_i(\omega)} $$ Aquí ahora estamos sumando sobre cada línea presente (etiquetada $j$), y simplemente obteniendo ese valor de lo que era anteriormente la integral, pero aún normalizado de la misma manera. Ahora podrías usar la función de intensidad para ajustar la fuerza de las diversas líneas espectrales. Una vez que tengas los valores de respuesta, procedes exactamente como en el caso continuo.