En mi programa de doctorado en ciencias computacionales, estamos trabajando casi exclusivamente en C ++ y Fortran. Parece que algunos profesores prefieren uno sobre el otro. Me pregunto cuál es 'mejor' o si uno es mejor que el otro en ciertas
En mi programa de doctorado en ciencias computacionales, estamos trabajando casi exclusivamente en C ++ y Fortran. Parece que algunos profesores prefieren uno sobre el otro. Me pregunto cuál es 'mejor' o si uno es mejor que el otro en ciertas
¿Es una buena idea usar vector<vector<double>>(usando std) para formar una clase de matriz para el código de computación científica de alto rendimiento? Si la respuesta es no. ¿Por qué?
El problema Actualmente estoy trabajando en una simulación de elementos finitos Navier Stokes y me gustaría investigar los efectos de una variedad de parámetros. Algunos parámetros se especifican en un archivo de entrada o mediante las opciones de una línea de comando; otros parámetros se...
¿Quieres mejorar esta publicación? Proporcione respuestas detalladas a esta pregunta, incluidas citas y una explicación de por qué su respuesta es correcta. Las respuestas sin suficiente detalle pueden ser editadas o eliminadas. La versión 3.0 del estándar MPI eliminó...
Supongamos que estoy trabajando en un código científico en C ++. En una discusión reciente con un colega, se argumentó que las plantillas de expresión podrían ser algo realmente malo, lo que podría hacer que el software sea compilable solo en ciertas versiones de gcc. Supuestamente, este problema...
Estoy buscando libros o artículos, o publicaciones de blog, o cualquier material publicado en general, que aborde específicamente los usos de las características modernas de C ++ (semántica de movimiento, STL, iteradores, evaluación diferida, etc.) en informática científica. ¿Puedes sugerir...
Voy a enseñar a los estudiantes de pregrado un curso titulado Introducción a la programación de computadoras. Estoy un poco confundido En Física Computacional, los científicos usan C / C ++ o Python o Fortran, CUDA, etc. ... este es el momento de construir su base. ¿Qué debo usar? Sé que puedes...
Estoy buscando una biblioteca de tensor C ++ que admita código independiente de dimensión. Específicamente, necesito realizar operaciones a lo largo de cada dimensión (hasta 3), por ejemplo, calcular una suma ponderada. Las dimensiones son un parámetro de plantilla (y, por lo tanto, una constante...
Supongamos que tengo una función que toma como entrada varios valores de punto flotante (simple o doble), hace algunos cálculos y produce valores de punto flotante de salida (también simple o doble). Estoy trabajando principalmente con MSVC 2008, pero también planeo trabajar con MinGW / GCC. Estoy...
Quiero desarrollar un software paralelo de computación científica desde cero. Quiero algunas ideas sobre qué idioma comenzar. El programa implica leer / escribir datos en archivos txt y hacer cálculos pesados en paralelo, con muchas factorizaciones LU y el uso de solucionadores lineales...
El lenguaje C ++ proporciona programación genérica y metaprogramación a través de plantillas. Estas técnicas han encontrado su camino en muchos paquetes de computación científica a gran escala (por ejemplo, MPQC , LAMMPS , CGAL , Trilinos ). Pero, ¿qué han contribuido realmente a la informática...
Estoy desarrollando un código para simular el flujo de fluidos con sustancias biológicas presentes en el flujo. Esto implica las ecuaciones estándar de Navier-Stokes acopladas a algunos modelos biológicos adicionales. Hay muchos parámetros / constantes. He escrito funciones para manejar los...
Lo que más me disgusta de MPI es tratar con tipos de datos (es decir, mapas / máscaras de datos) porque no encajan muy bien con C ++ orientado a objetos. boost::mpisolo es compatible con MPI 1.1, sin embargo, desde su sitio web: boost :: mpi es una interfaz amigable de C ++ para la interfaz...
Muchas de las bibliotecas de C ++ más conocidas en ciencia computacional como Eigen , Trilinos y deal.II usan el objeto de biblioteca de encabezado de plantilla C ++ estándar std::complex<>, para representar números complejos de punto flotante. En la respuesta de Jack Poulson a una pregunta...
La función f:x↦(ex−1)/xf:x↦(ex−1)/xf \colon x \mapsto (e^x-1)/x tiene singularidad cerca de x=0x=0x = 0 . Sin embargo, esa singularidad se puede levantar: para x=1x=1x = 1 , uno debería tener f(x)=1f(x)=1f(x) = 1 , ya que y por lo tanto Sin embargo, la formano es solo no definido en, también es...
El documento "Plantillas de expresión revisadas: un análisis de rendimiento de metodologías actuales" en SIAM Journal of Scientific Computing hace referencia a la biblioteca de álgebra lineal "Blaze". No he oído hablar de él antes, y parece que no puedo encontrar referencias en línea. (Las...
Estoy resolviendo un problema físico usando un esquema numérico implícito. Esto me lleva a resolver una ecuación lineal con matriz tridiagonal. He codificado este algoritmo de Wikipedia. Me pregunto si hay una biblioteca eficiente que permita resolver este tipo de ecuaciones de manera optimizada....
Tengo un programa de Mathematica que realiza algunas integrales en 3 o 4 dimensiones usando el QuasiMonteCarlométodo. El problema es que lleva mucho tiempo ejecutarlo, hasta el punto de que algunos de estos cálculos no se pueden completar en el tiempo de trabajo máximo disponible en nuestro clúster...
Estoy transfiriendo un código existente de MATLAB a C ++ y tengo un sistema lineal para resolver (en lugar de la forma más típica )A x = bxA=bxA=bxA=bAx=bAx=bAx=b La matriz es densa y de forma general, pero no es mayor que 1000x1000. Entonces, en MATLAB, la solución o la notación de barra diagonal...
12×1212×1212 \times 12QQQdet(Q)=det(12I−Q−J)(1)det(Q)=det(12I−Q−J)(1)\det(Q) = \det(12I-Q-J) \; \; (1)JJJ Actualmente estoy haciendo esto con la biblioteca de armadillo , pero resulta ser demasiado lento. La cuestión es que necesito hacer esto por un billón de matrices y resulta que calcular los...