¿Cómo puede una persona con buenos conocimientos de física contribuir al software libre (software libre y de código abierto)?

Alguien con un gran conocimiento de los métodos numéricos utilizados en física puede contribuir definitivamente al software libre. Hay una serie de paquetes de código abierto que son muy utilizados por los científicos para el trabajo numérico. Por ejemplo,

  • GSL – Biblioteca Científica GNU. Esto es como una navaja suiza de herramientas numéricas.
  • SciPy (y NumPy). Esto es como el equivalente en tierra Python de la GSL.
  • Más cerca de mi campo, está Astropy, para tratar con varios sistemas de tiempo astronómico, sistemas de coordenadas del cielo, formatos de archivo de imagen y espectroscopia, etc.
  • En la relatividad numérica, existe la plataforma de código abierto Einstein Toolkit.
  • En la cosmología de CMB, hay CAMB y COSMOMC; y en cosmología no lineal, hay GADGET.
  • Estos son solo unos pocos paquetes que he pensado en la cabeza. ¡Estoy seguro de que hay más códigos específicos de dominio en campos que no conozco!

Algunas de estas páginas web tienen una sección de “Cómo ayudar”. Algunas de estas cosas útiles no requieren ningún conocimiento de física, como escribir pruebas unitarias. Para contribuir realmente, sin embargo, un conocimiento de las técnicas numéricas es clave. Familiarícese con la mayor cantidad posible de recetas numéricas. Intente llenar algunos vacíos importantes con textos como Boyd’s Chebyshev y Fourier Spectral Methods. Solo soy un principiante numérico, no un experto experimentado, así que estoy seguro de que hay otros temas clave que no están cubiertos por lo anterior (por ejemplo, los métodos de Markov Chain Monte Carlo son su propia área de estudio).

¡Espero que esto ayude!

EDITAR: ver los comentarios para más.

Sólo golpea un proggie.

La física es útil porque las animaciones de los juegos son más realistas.

Si quieres hacer algo relacionado con la programación y la física, puedes escribir algún tipo de biblioteca de física para simulaciones.

Es mucho más difícil de lo que piensas.

En este momento, he estado jugando con una función rexx para ingresar, por ejemplo, ab / z como fracción. Pero puedes hacer esto más útil, al permitir fracciones adicionales, donde b también es algo como bc / z. Esto es bastante útil, porque puedes escribir f (109, 28, 15, 60) para 109d 28 ’15 “.

Aún así, tienes que sortear los problemas de la interfaz de usuario. Tienes que explicar lo que entra y lo que sale.

Escribí un pequeño programa donde puedes definir tu propio sistema de unidades y, utilizando la versión exacta de los valores de CODATA (no las cosas del SI), imprime el material de CODATA directamente en una cosa de docenas o bases 120.