[Gmsh] Adding capability for multiple overlaps

David Colignon David.Colignon at ulg.ac.be
Fri Sep 17 09:23:09 CEST 2010


Hi James,

it is strange, I successfully built Gmsh on my Mac this morning, and the three nightly builds (Win, Mac, Lin) went fine. 
Can you try it again with the latest nightly sources ?

Regards,

Dave

-- 
David Colignon, Ph.D.
Collaborateur Logistique du F.R.S.-FNRS
CÉCI - Consortium des Équipements de Calcul Intensif
ACE - Applied & Computational Electromagnetics
Sart-Tilman B28
Université de Liège
4000 Liège - BELGIQUE
Tél: +32 (0)4 366 37 32
Fax: +32 (0)4 366 29 10
WWW:    http://hpc.montefiore.ulg.ac.be/
Agenda: http://www.google.com/calendar/embed?src=david.colignon%40gmail.com


On 16/09/10 20:09, James O'Beirne wrote:
> Hello,
>
> I would like to patch gmsh in order to output multiple ``layers'' of ghost nodes when partitioning.
>
> I work on a finite-volume solver called FiPy (http://www.ctcms.nist.gov/fipy/). FiPy has been built to dovetail with
> Gmsh in a few regards, one of which is mesh partitioning. We have been using gmsh-2.5.0-svn to output partitioned meshes
> with ghost-node information, which we then read back into FiPy for use within our system.
>
> This has all been working fine and dandy, but FiPy users often want to solve fourth-order equations like Cahn-Hilliard.
> Obviously, we'd like to support parallel solving for these problems and thus we need to partition meshes accordingly.
> The problem is that gmsh only currently outputs one layer of ghost nodes and a higher-order problem like Cahn Hilliard
> requires two layers of ghost nodes to work properly in parallel.
>
> I've taken a look at the Gmsh source, and I think I can patch the PartitionMesh(GModel *const model,
> meshPartitionOptions &options) function within ``Mesh/meshPartition.cpp'' to support multiple layers of ghost nodes. It
> looks straightforward (perhaps deceptively so).
>
> Unfortunately, I am unable to build the nightly source. I get the follow error during make:
>
> [ 21%] Building CXX object CMakeFiles/gmsh.dir/Solver/elasticityTerm.cpp.o
> [ 21%] Building CXX object CMakeFiles/gmsh.dir/Solver/elasticitySolver.cpp.o
> In file included from /users/obeirne/gmsh/gmsh-2.5.0-svn-20100615-source/Solver/elasticitySolver.cpp:8:
> /users/obeirne/gmsh/gmsh-2.5.0-svn-20100615-source/Solver/elasticitySolver.h:82: error: ‘lua_State’ has not been declared
> /users/obeirne/gmsh/gmsh-2.5.0-svn-20100615-source/Solver/elasticitySolver.h:84: error: ‘lua_State’ has not been declared
> /users/obeirne/gmsh/gmsh-2.5.0-svn-20100615-source/Solver/elasticitySolver.cpp:265: error: ‘lua_State’ has not been declared
> /users/obeirne/gmsh/gmsh-2.5.0-svn-20100615-source/Solver/elasticitySolver.cpp: In member function ‘void
> elasticitySolver::addDirichletBCLua(int, int, int, std::string, int*)’:
> /users/obeirne/gmsh/gmsh-2.5.0-svn-20100615-source/Solver/elasticitySolver.cpp:268: error: expected type-specifier
> before ‘simpleFunctionLua’
> /users/obeirne/gmsh/gmsh-2.5.0-svn-20100615-source/Solver/elasticitySolver.cpp:268: error: cannot convert ‘int*’ to
> ‘simpleFunction<double>*’ in assignment
> /users/obeirne/gmsh/gmsh-2.5.0-svn-20100615-source/Solver/elasticitySolver.cpp:268: error: expected `;' before
> ‘simpleFunctionLua’
> /users/obeirne/gmsh/gmsh-2.5.0-svn-20100615-source/Solver/elasticitySolver.cpp: At global scope:
> /users/obeirne/gmsh/gmsh-2.5.0-svn-20100615-source/Solver/elasticitySolver.cpp:295: error: ‘lua_State’ has not been declared
> /users/obeirne/gmsh/gmsh-2.5.0-svn-20100615-source/Solver/elasticitySolver.cpp: In member function ‘void
> elasticitySolver::addNeumannBCLua(int, int, std::string, int*)’:
> /users/obeirne/gmsh/gmsh-2.5.0-svn-20100615-source/Solver/elasticitySolver.cpp:298: error: expected type-specifier
> before ‘simpleFunctionLua’
> /users/obeirne/gmsh/gmsh-2.5.0-svn-20100615-source/Solver/elasticitySolver.cpp:298: error: cannot convert ‘int*’ to
> ‘simpleFunction<SVector3>*’ in assignment
> /users/obeirne/gmsh/gmsh-2.5.0-svn-20100615-source/Solver/elasticitySolver.cpp:298: error: expected `;' before
> ‘simpleFunctionLua’
> make[2]: *** [CMakeFiles/gmsh.dir/Solver/elasticitySolver.cpp.o] Error 1
> make[1]: *** [CMakeFiles/gmsh.dir/all] Error 2
> make: *** [all] Error 2
>
> If anyone can provide any insight on what's going on with the nightly source, that would be welcome. Also, if anyone can
> comment on patching for multiple layers of ghost nodes, I would really appreciate it.
>
> James
>
>
>
> _______________________________________________
> gmsh mailing list
> gmsh at geuz.org
> http://www.geuz.org/mailman/listinfo/gmsh