Para definir un problema, hay que editar un archivo <prob1> dentro de la carpeta
Problems para usarse en tiempo de ejecucion como:

   $ ./DVS-DDM file prob1 -m MF1  -p 3 -Nx 10 -Ny 4 -Mx 10 -My 10

Conteniendo los siguientes campos:

   Dimension:
      d <2 | 3>


   Dominio:
      Xmin <val = 0.0>
      Xmax <val = 1.0>
      Ymin <val = 0.0>
      Ymax <val = 1.0>
      Zmin <val = 0.0>
      Zmax <val = 1.0>


   Ecuacion:
    -Laplaciano(u)+Gradiente(u) + u = f(x,y,z)
    -(ax * Uxx + ay * Uyy + az * Uzz) + (bx * Ux + by * Uy + bz * Uz) + c * U = fc * f(x,y,z)
      ax <val = 0.0>
      ay <val = 0.0>
      az <val = 0.0>
      bx <val = 0.0>
      by <val = 0.0>
      bz <val = 0.0>
      c  <val = 0.0>
      f  <funcion | const>
      fc <valor = 0.0>


   Frontera:
    Dirichlet  u(x,y,z) = gc * g(x,y,z) en la frontera de U
      g  <funcion | const>
      gc <valor = 0.0>


   Nodos Primales:
      pr <vertex | vertedge | noPrimal | all>




Definicion de funciones para especificar el lado derecho y la condicion 
de frontera, en <funcion> se debe poner una cadana ExpXY, la cual debe 
ser definida en LookUpFunction.cpp dentro de Problems como:

   else if (strcmp(s,"ExpXY") == 0)
      {
         ExpXY *f = new (nothrow) ExpXY(1.0);
         if (f == NULL) ce.memoryError("f");
         return f;
      }


Y expecificada en ExpXY.hpp dentro de Problems como:

   #ifndef __ExpXY__
   #define __ExpXY__

   #include "FunctionV1.hpp"
   #include <math.h>



   class ExpXY : public FunctionV1
   {
   private:

      double var;


   public:

      ExpXY(double b)
      {
         var = b;
      }

      inline double eval(int d, double *x)
      {
         double p = (var == 0.0 ? 1.0 - x[0]*x[0] - x[1]*x[1] : var);
         return p*exp(x[0]*x[1]);
      }

      inline double getVar(void)
      {
         return var;
      }

      inline void setVar(double b)
      {
         var = b;
      }

   };

   #endif