Meep: Probando la Instalación de Meep

Una vez que se tiene el Meep instalado siguiendo las instrucciones del post anterior, se procede a hacer el primer ejemplo que viene en el C++ Tutorial de la página del Meep, con esto se comprobará que la instalación este correcta y no haga falta ninguna librería o paquete por instalar, en el presente escrito solo se pretende probar la instalación del Meep por lo que no se hará una descripción detallada de cada uno de los comandos ya que esa descripción detallada fluirá a medida que se avanza en el desarrollo utilizando esta interesante librería.

No se hable más y veamos algo de código.. A continuación enlisto un programa sencillo, solamente para probar que se ejecuta correctamente utilizando Meep..

overview.cpp

#include
using namespace meep;
 
int main(int argc, char **argv) {
    initialize mpi(argc, argv); // do this even for non-MPI Meep
    double resolution = 20;     // pixels per distance
    grid_volume v = vol2d(5,10, resolution);  // 5x10 2d cell
    structure s(v, eps, pml(1.0));
    fields f(&s);
 
    f.output_hdf5(Dielectric, v.surroundings());
    double freq = 0.3, fwidth = 0.1;
    gaussian_src_time src(freq, fwidth);
    f.add_point_source(Ey, src, vec(1.1, 2.3));
    while (f.time() < f.last_source_time()) {
        f.step();
    }
 
    f.output_hdf5(Hz, v.surroundings());
    return 0;
}
 
double eps(const vec &p) {
    if (p.x() < 2 && p.y() < 3)
        return 12.0;
    return 1.0;
}

Los pasos para ejecutar el programa anterior son los siguientes:

  • Primero que nada se crea un archivo que se llame overview.cpp con el codigo C++ anterior
  • Se navega al directorio del Meep que se ha bajado y compilado anteriormente, usualmente el directorio se llamara “meep-1.1.1” ya que es la versión actual de Meep
  • Se navega a la carpeta tests y movemos el programa que hemos creado hacia esta carpeta
  • A continuación se enlista en programa overview.sh que es un shell script que también se debe colocar en la carpeta tests
make overview.dac
./overview.dac

h5ls eps-000000.00.h5
h5topng -Zc dkbluered eps-000000.00.h5

rm eps-000000.00.h5
rm overview.dac
  • Por último abrimos la consola en modo de “root” para después ceder permisos de ejecución al bash script y ejecutarlo como se muestra a continuación
su root
chmod +x overview.sh
sh overview.sh

Al final de la ejecución de el script anterior deberíamos haber llegado al resultado que es la imagen que enseguida agrego en la parte de abajo, si se ha llegado a este punto significa que tenemos el ambiente idóneo para empezar a programar en C++ utilizando Meep, de otra forma se deberá hacer una verificación de todos los pasos anteriores hasta llagar a este resultado.

En este escrito se agregaron ciertos programas para verificar el correcto funcionamiento de la instalación Meep, se utilizaron algunos comandos de la librería del Meep para generar una imagen de la simulación y se verificó que todo funcione como se esperaba, en los siguientes posts se estará viendo a detalle cada parte de la cual se constituye un programa de simulación Meep utilizando C++

¡Enjoy!

Leave a Reply

Your email address will not be published. Required fields are marked *