Difference between revisions of "GetDP"

From ONELAB
Jump to: navigation, search
(Building GetDP from the source code)
 
(5 intermediate revisions by 2 users not shown)
Line 8: Line 8:
 
   <li>Download the ONELAB bundle:
 
   <li>Download the ONELAB bundle:
 
   <ul>
 
   <ul>
     <li>Desktop version for Windows [http://onelab.info/files/onelab-Windows64.zip 64 bit] / [http://onelab.info/files/onelab-Windows32.zip 32 bit], Linux [http://onelab.info/files/onelab-Linux64.zip 64 bit] / [http://onelab.info/files/onelab-Linux32.zip 32 bit] and [http://onelab.info/files/onelab-MacOSX.dmg MacOSX]
+
     <li>Desktop version for [http://onelab.info/files/onelab-Windows64.zip Windows] ([http://onelab.info/files/onelab-Windows32.zip 32 bit]), [http://onelab.info/files/onelab-Linux64.zip Linux] ([http://onelab.info/files/onelab-Linux32.zip 32 bit]) and [http://onelab.info/files/onelab-MacOSX.dmg MacOS]
 
     <li>Mobile version for [https://play.google.com/store/apps/details?id=org.geuz.onelab Android] and [https://itunes.apple.com/us/app/onelab/id845930897 iOS]
 
     <li>Mobile version for [https://play.google.com/store/apps/details?id=org.geuz.onelab Android] and [https://itunes.apple.com/us/app/onelab/id845930897 iOS]
 
     <li>[http://onelab.info/files/onelab-source.zip Source code]
 
     <li>[http://onelab.info/files/onelab-source.zip Source code]
Line 57: Line 57:
 
* [[Bloch modes in periodic waveguides]]
 
* [[Bloch modes in periodic waveguides]]
 
* [[Superconducting wire]]
 
* [[Superconducting wire]]
 +
* [[Diffraction grating]]
 
|  
 
|  
 
* [[Thermal conduction]]
 
* [[Thermal conduction]]
Line 135: Line 136:
 
If you want to recompile GetDP directly from the source code, you should
 
If you want to recompile GetDP directly from the source code, you should
  
* Download PETSc from http://www.mcs.anl.gov/petsc/petsc-as/download/
+
* Download PETSc from http://www.mcs.anl.gov/petsc/petsc-as/download/ and uncompress the archive (in this example, using PETSc 3.7.4):
 
 
* Uncompress the PETSc archive (in this example, using PETSc 3.7.4):
 
 
<source>
 
<source>
 
tar zxvf petsc-3.7.4.tar.gz
 
tar zxvf petsc-3.7.4.tar.gz
Line 152: Line 151:
 
</source>
 
</source>
  
* Download and unzip the Gmsh and the GetDP source code from the ONELAB bundle  http://onelab.info/files/gmsh-getdp-source.zip
+
* Download and unzip the Gmsh and the GetDP source code from the ONELAB bundle  http://onelab.info/files/gmsh-getdp-source.zip (or download the latest source code from http://getdp.info and http://gmsh.info, respectively)
  
 
* Configure, compile and install a minimal Gmsh library (it will be used by GetDP):
 
* Configure, compile and install a minimal Gmsh library (it will be used by GetDP):
Line 174: Line 173:
 
cd ../..
 
cd ../..
 
</source>
 
</source>
 +
 +
Instructions for building the parallel (MPI) version of GetDP are available [[GetDDM|here]]

Latest revision as of 18:07, 25 November 2017

GetDP is an open source finite element solver using mixed elements to discretize de Rham-type complexes in one, two and three dimensions. GetDP is developed by the ACE group from the Montefiore Institute at the University of Liège, and is released under the GNU GPL.

Getting started

ONELAB allows to use GetDP as a black-box solver: you don't need to know anything about finite elements or de Rham complexes in order to run your first simulations:

  1. Download the ONELAB bundle:
  2. Launch the app
  3. Open a GetDP model:
    • Desktop version: go to the File/Open menu and select a GetDP .pro file, e.g. models/magnetometer/magnetometer.pro
    • Mobile version: select one of the preloaded models
  4. Press Run.


GetDP models

Basic templates

These are basic physical templates, that can either be used interactively to define new problems from scratch, or be included in other problem definition files.

Featured physical models

These are complete, parametric application examples, ready to be solved and modified.

Acoustics Electromagnetism Heat transfer Multi-physics

Advanced numerical techniques


All models

All GetDP models

How does it work?

GetDP input files (.pro files) can be instrumented to share parameters with the ONELAB server, through the same syntax as the one used in Gmsh.


Building GetDP from the source code

If you want to recompile GetDP directly from the source code, you should

tar zxvf petsc-3.7.4.tar.gz
  • Configure and build PETSc. The configuration options depend on the calculations you want to perform (complex- or real-valued), as well as your compiler setup. For a sequential build (without MPI), run (remove --with-scalar-type=complex to build in real arithmetic):
cd petsc-3.7.4
export PETSC_DIR=$PWD
export PETSC_ARCH=complex_mumps_seq
./configure --with-clanguage=cxx --with-debugging=0 --with-mpi=0 --with-mpiuni-fortran-binding=0 --download-mumps=yes --with-mumps-serial --with-shared-libraries=0 --with-x=0 --with-ssl=0 --with-scalar-type=complex
make
cd ..
  • Configure, compile and install a minimal Gmsh library (it will be used by GetDP):
cd gmsh-xxx
mkdir lib
cd lib
cmake -DDEFAULT=0 -DENABLE_PARSER=1 -DENABLE_POST=1 -DENABLE_BUILD_LIB=1 ..
make lib
sudo make install/fast
cd ../..
  • Configure and compile GetDP:
cd getdp-xxx
mkdir bin
cd bin
cmake ..
make
cd ../..

Instructions for building the parallel (MPI) version of GetDP are available here