Experiencias elípticas con Chombo

El software Chombo, del Berkeley Lab, combina los métodos en diferencias finitas con las mallas adaptativas (AMR) para resolver, entre otras, PDEs elípticas. Las siguientes imágenes, en 2D y 3D, se han obtenido a partir de su AMRPoisson:

Instanciación de punteros a clases abstractas mediante clases concretas a partir del fichero de configuración

Finalmente, tenemos ya varias clases abstractas que instanciamos mediante la creación de algunas de sus clases concretas hijas en función de un fichero de configuración. Algunas de estas clases abstractas son: OdeSolver, SpatialDecomposition, PdeSolver, Kernel, EoS, Equation, Display que pueden ser concretadas en alguna de sus clases herederas (por ejemplo SpatialDecomposition podria ser instanciada como …

Nuestras primeras partículas

A continuación nuestra primera animación creada con VisIt a partir de ficheros silo generados a partir de llamadas a métodos de nuestras primeras clases. Temporalmente, aunque es mejor utilizar nuestras partículas simplemente como nodos de interpolación a la hora de visualizar, las mostraremos como puntos. A partir de este momento, podremos tener una referencia visual …

Generar ficheros .silo desde código C++

Ya dedicamos un post a VisIt. En el creamos una animación a partir de un conjunto de ficheros existentes. ¿Como generamos ficheros .silo desde nuestro código? En primer lugar, necesitamos tener las librerias correspondientes, que las podemos conseguir ejecutando: ./build_visit –console –no-visit –no-thirdparty  –thirdparty-path /usr/local –silo –hdf5 –szip desde el terminal, y donde build_visit es …

Clases abstractas, métodos virtuales y clases concretas derivadas

En C++ podemos definir clases abstractas. Son clases pensadas para definir un comportamiento, es decir, un conjunto de métodos sin implementación. Sus clases derivadas están obligadas a implementar estos métodos, siempre i cuando queramos que sean clases concretas instanciables. Los métodos sin implementación de las clases abstractas reciben el nombre de métodos virtuales. En el …