La física computacional es el estudio y la implementación del análisis numérico para resolver problemas en física . [1] Históricamente, la física computacional fue la primera aplicación de las computadoras modernas en la ciencia y ahora es un subconjunto de la ciencia computacional . A veces se la considera una subdisciplina (o rama) de la física teórica , pero otros la consideran una rama intermedia entre la física teórica y la experimental , un área de estudio que complementa tanto la teoría como la experimentación. [2]
En física, diferentes teorías basadas en modelos matemáticos proporcionan predicciones muy precisas sobre cómo se comportan los sistemas. Desafortunadamente, a menudo ocurre que no es factible resolver el modelo matemático de un sistema particular para producir una predicción útil. Esto puede ocurrir, por ejemplo, cuando la solución no tiene una expresión cerrada o es demasiado complicada. En tales casos, se requieren aproximaciones numéricas. La física computacional es la materia que se ocupa de estas aproximaciones numéricas: la aproximación de la solución se escribe como un número finito (y generalmente grande) de operaciones matemáticas simples ( algoritmo ), y se utiliza una computadora para realizar estas operaciones y calcular una solución aproximada. y error respectivo . [1]
Existe un debate sobre el estatus de la computación dentro del método científico. [4] A veces se considera más parecido a la física teórica; algunos otros consideran la simulación por computadora como " experimentos por computadora ", [4] y otros la consideran una rama intermedia o diferente entre la física teórica y experimental , una tercera vía que complementa la teoría y la experimentación. Si bien las computadoras pueden usarse en experimentos para medir y registrar (y almacenar) datos, esto claramente no constituye un enfoque computacional.
Los problemas de física computacional son, en general, muy difíciles de resolver con exactitud. Esto se debe a varias razones (matemáticas): falta de solubilidad algebraica y/o analítica, complejidad y caos. Por ejemplo, incluso problemas aparentemente simples, como calcular la función de onda de un electrón que orbita alrededor de un átomo en un campo eléctrico fuerte ( efecto Stark ), pueden requerir un gran esfuerzo para formular un algoritmo práctico (si es que se puede encontrar uno); Es posible que se requieran otras técnicas más toscas o de fuerza bruta, como métodos gráficos o búsqueda de raíces . En el lado más avanzado, a veces también se utiliza la teoría matemática de la perturbación ( aquí se muestra un funcionamiento para este ejemplo en particular ). Además, el costo computacional y la complejidad computacional de los problemas de muchos cuerpos (y sus contrapartes clásicas ) tienden a crecer rápidamente. Un sistema macroscópico suele tener un tamaño del orden de las partículas constituyentes, por lo que supone un problema. La resolución de problemas de mecánica cuántica es generalmente de orden exponencial en el tamaño del sistema [5] y para N-cuerpos clásicos es de orden N-cuadrado. Finalmente, muchos sistemas físicos son inherentemente no lineales, en el mejor de los casos, y, en el peor, caóticos : esto significa que puede resultar difícil garantizar que los errores numéricos no crezcan hasta el punto de inutilizar la "solución". [6]
Debido a que la física computacional utiliza una amplia clase de problemas, generalmente se divide entre los diferentes problemas matemáticos que resuelve numéricamente o los métodos que aplica. Entre ellos se puede considerar:
Todos estos métodos (y varios otros) se utilizan para calcular las propiedades físicas de los sistemas modelados.
La física computacional también toma prestadas una serie de ideas de la química computacional ; por ejemplo, la teoría funcional de la densidad utilizada por los físicos computacionales del estado sólido para calcular las propiedades de los sólidos es básicamente la misma que la utilizada por los químicos para calcular las propiedades de las moléculas.
Además, la física computacional abarca el ajuste de la estructura de software / hardware para resolver los problemas (ya que los problemas normalmente pueden ser muy grandes, en necesidades de potencia de procesamiento o en solicitudes de memoria ).
Es posible encontrar una rama computacional correspondiente para cada campo importante de la física:
Debido a la amplia clase de problemas que aborda la física computacional, es un componente esencial de la investigación moderna en diferentes áreas de la física, a saber: física de aceleradores , astrofísica , teoría general de la relatividad (a través de la relatividad numérica ), mecánica de fluidos ( dinámica de fluidos computacional ), Teoría de campos reticulares / teoría del calibre de retículo (especialmente cromodinámica cuántica de retículo ), física del plasma (ver modelado de plasma ), simulación de sistemas físicos (usando, por ejemplo, dinámica molecular ), códigos informáticos de ingeniería nuclear , predicción de la estructura de proteínas , predicción del tiempo , física del estado sólido , condensado suave. física de la materia , física del impacto a hipervelocidad, etc.
La física computacional del estado sólido, por ejemplo, utiliza la teoría del funcional de la densidad para calcular las propiedades de los sólidos, un método similar al utilizado por los químicos para estudiar las moléculas. Otras cantidades de interés en la física del estado sólido, como la estructura de bandas electrónicas, las propiedades magnéticas y las densidades de carga, se pueden calcular mediante este y varios métodos, incluido el método de Luttinger-Kohn / kp y los métodos ab-initio .