Computación científica vs análisis numérico


9

Soy doble licenciado en informática y matemáticas. Amo los dos temas. Estoy pensando en tomar una carrera de posgrado, tal vez en informática científica. ¿Cuál es la verdadera diferencia entre la computación científica y el análisis numérico? ¿Se estudian como carreras?

Respuestas:


18

Wikipedia da una buena definición

El análisis numérico es el estudio de algoritmos que usan aproximación numérica (en oposición a las manipulaciones simbólicas generales) para los problemas del análisis matemático (a diferencia de las matemáticas discretas).

Los analistas numéricos suelen estar interesados ​​en probar resultados matemáticos sobre sus algoritmos, incluidos los límites de error (qué tan grande puede ser el error en la aproximación), la convergencia de esquemas iterativos (la aproximación se aproxima al límite correcto), el orden y la tasa de convergencia (qué tan rápido converge el algoritmo) y la complejidad computacional (limita el número de operaciones requeridas por un algoritmo). Es posible investigar en estas áreas sin usar una computadora, y algunos resultados importantes incluso son anteriores al desarrollo de las computadoras digitales en la década de 1950.

Wikipedia también tiene una definición para "Computación científica"

La ciencia computacional (también computación científica o computación científica (SC)) es un campo multidisciplinario en rápido crecimiento que utiliza capacidades informáticas avanzadas para comprender y resolver problemas complejos. La ciencia computacional fusiona tres elementos distintos: [1] Algoritmos (numéricos y no numéricos) y software de modelado y simulación desarrollado para resolver problemas de ciencias (por ejemplo, biológicos, físicos y sociales), ingeniería y humanidades. optimiza el hardware avanzado del sistema, el software, las redes y los componentes de administración de datos necesarios para resolver problemas computacionalmente exigentes.

La informática científica es mucho más sobre aspectos prácticos para obtener soluciones precisas de las computadoras. Obviamente, esto se basa en los resultados del análisis numérico, pero también se basa en gran medida en la arquitectura de computadoras y la ingeniería de software. Aunque la investigación en computación científica a menudo se realiza por su propio bien y para desarrollar hardware y software que serán de utilidad en muchas aplicaciones, también existe una gran cantidad de investigación en computación científica impulsada por la necesidad de resolver problemas particulares de ciencia e ingeniería. Por ejemplo, el desarrollo de modelos climáticos globales para estudiar el cambio climático también ha hecho avanzar la informática científica.

El análisis numérico se encuentra más comúnmente en los departamentos de matemática y matemática aplicada, mientras que la computación científica es un campo interdisciplinario que se puede encontrar en los departamentos de informática, departamentos de matemática y en las diversas disciplinas de ingeniería y ciencias.


1
En los viejos tiempos, había muchos análisis numéricos (facultad, estudiantes, clases, investigación) en algunos departamentos de informática. Gran parte de este trabajo se dedicó al desarrollo de algoritmos y software que funcionó bien para resolver problemas reales en ciencia, ingeniería, estadística (informática estadística), gestión / Investigación de operaciones, etc. No se trataba solo de probar teoremas por sí mismos.
Mark L. Stone

¿Las matemáticas aplicadas serían un buen punto de partida para cualquiera de ellos?
cuchilla

1
Sí, una formación en matemática aplicada sería útil en cualquier dirección. La verdadera pregunta es qué desea agregar a lo que ya tiene. La amplitud (ciencias de la computación y algunas áreas de ciencias o ingeniería en las que se usa la ciencia computacional) es muy útil en un campo interdisciplinario como la ciencia computacional.
Brian Borchers

6

Como alguien que se mudó de Ingeniería a Informática Científica durante la escuela de posgrado como una necesidad incidental del tipo de trabajo que estaba haciendo aquí, son mis dos centavos:

  • El análisis numérico se centraría en el lado de las matemáticas y los algoritmos de las cosas. Averiguar qué técnicas usar para resolver un problema matemático particular que no tiene una solución analítica, por ejemplo, Optimización de manipulaciones matriciales de PDE de ODE, etc.
  • El análisis numérico en estos días a menudo implicaría cantidades significativas de programación, pero aún así está traduciendo prácticamente las ideas matemáticas de un algoritmo eficiente en código de computadora.
  • Tradicionalmente, FORTRAN era el pilar principal. Pero también podría esperar trabajar con C / C ++ y actualmente Python. Algunas cosas también pueden incluir paquetes como Mathematica o MATLAB
  • Llegar a la informática científica es más un área aplicada en la que se intenta utilizar los recursos informáticos para resolver algún problema científico. Esto puede implicar que muchas de las tuercas y tornillos funcionen. por ejemplo, compilar códigos, instalar sistemas operativos y bibliotecas, configurar opciones para hacer que el código científico funcione, etc.
  • Dado que una buena parte de la informática científica en estos días implica cálculos paralelos, lo más probable es que tenga alguna exposición a los clústeres informáticos, superordenadores, computación en la nube, etc.
  • En informática científica, si bien puede trabajar con lenguajes de programación como C / FORTRAN, etc., espere trabajar mucho con los lenguajes de "pegado" / scripting como bash / perl, etc.
  • Probablemente trabajará mucho con los sistemas Linux-ey y terminará trabajando bastante bien en la línea de comandos y con herramientas como sed / awk, etc. Algunas personas terminan siendo administradores del sistema.
  • Gran parte de la informática científica implica la visualización y el almacenamiento de datos / recuperación de datos. Muchas personas terminan convirtiéndose en expertos en Big Data / Hadoop / Map Reduce, etc.
  • El análisis numérico es esencialmente un trabajo especializado. Te vuelves bueno en matemáticas y codificación y resuelves un problema específico de manera muy eficiente. A veces inventando un algoritmo o dos en el camino. La informática científica es, en cierto sentido, un trabajo generalista. Hablando relativamente. A menudo utiliza diversas herramientas juntas para resolver un problema específico aplicado.
  • Una gran cantidad de computación científica puede implicar trabajar en las interfaces. Por ejemplo, interfaces entre dos programas. Donde canaliza datos de una herramienta a otra para su procesamiento. Con cierta manipulación de formatos en el camino. es decir, está tratando de obtener diversas herramientas para hablar entre sí donde las herramientas no fueron realmente diseñadas para hablar entre sí.
  • Un técnico informático a menudo tendrá que dominar varios formatos de datos. Muchos instrumentos tendrán sus propios formatos propietarios y alguien tendrá que decodificar los datos en un formato que le guste al algoritmo numérico.
  • Algunos muchachos de la Computación Científica terminan manejando "mesas de ayuda" de una naturaleza muy especializada (bien remunerada también) donde uno esencialmente ayuda a un investigador genérico / estudiante / Prof. a usar los recursos informáticos en una institución para resolver cualquier problema que pueda surgir. es decir, el experto en informática científica es el que está familiarizado con una variedad de códigos y paquetes y puede aconsejar a un usuario sobre qué herramienta utilizar para resolver mejor el problema computacionalmente.
  • Puede terminar portando códigos a otro hardware. O paralelizando códigos heredados que se escribieron en modo serie. O la optimización de códigos para correr más rápido. Algunos chicos convertirán códigos para que se ejecuten en GPU / CUDA, etc. para que funcionen más rápido.
  • Una buena parte de la informática científica implica la resolución de problemas. A menudo, códigos que otras personas han escrito. Para descubrir por qué fallan en cierto hardware, etc.
  • A menudo, usted es el intermediario de enlace entre especialistas. Por ejemplo, he tenido que trabajar en equipos con programadores expertos, biólogos que necesitan computación pero que no pueden codificar mucho, administradores de sistemas, gurús de redes, técnicos que manejan centros de datos, etc.
  • Se les puede pedir a los chicos de Informática Científica que hagan aportes significativos cuando se compra nuevo hardware o se decide la arquitectura de un sistema informático. En esas tareas, terminas trabajando muy de cerca con ingenieros de ventas y tecnólogos de Dell / Cray / IBM / Infiniband / Cisco, etc.

Espero que esto te de alguna idea sobre los campos.

Un último consejo (¡tómalo con una gran pizca de sal!): Si eres bueno con las matemáticas, como precisión y detalle y lectura de documentos y descifrar detalles después de un esfuerzo significativo y centrado donde la inteligencia individual es importante e implica largos períodos de sostenido esfuerzo luego ir para el análisis numérico.

Por otro lado, si le gusta ser un generalista, cambie de área, compense el genio con el trabajo duro, sea un experto en todos los oficios, esté dispuesto a trabajar con recomendaciones confusas y vagas, a menudo conflictivas, como trabajar con equipos y lidiar con conflictos , plazos ajustados, lidiar con MBAs, etc. y luego convertirse en un tipo de Computación Científica.

Nuevamente tome esto con una gran pizca de sal. Las circunstancias de cada persona son especiales. Y la mayoría de nosotros aterrizamos donde lo hicimos por pura coincidencia y no porque lo planeamos de esa manera. :)


0

Quieres ser un matemático aplicado. Este es un importante disponible en muchas universidades en su escuela de ingeniería también como doctorado. Aunque en mi experiencia, las matemáticas son la habilidad más importante, algunos conocimientos técnicos en informática formal pueden ser útiles y es posible que no los obtenga en otro lugar. Solo tenga cuidado de no profundizar en el agujero del conejo CS o puede terminar haciendo una investigación CS que tiende a alejarlo de las aplicaciones prácticas.

Para responder a su pregunta específica, un matemático aplicado investigará en métodos y análisis numéricos y posiblemente se asociará con investigadores científicos para hacer computación científica en varias áreas. Si desea dedicarse específicamente a la computación científica, puede ingresar a una disciplina de investigación científica como la química computacional, la biofísica, el clima, la bioinformática, etc.


Si lees mi pregunta, verás que soy un doble mayor. De hecho, dedico más tiempo a mi especialización en matemáticas que a mi especialización en ciencias. No estoy preocupado en absoluto por profundizar en cs
blade

Leí tu pregunta por eso dije "y como doctorado". La respuesta tiene la intención de ser útil también para otros que no hayan elegido una especialización. Buena suerte en tu búsqueda. Los doctorados tienden a ser muy flexibles, así que busca un grupo que haga algo que te guste y no te preocupes demasiado por quedarte encerrado en un área.
user21387
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.