Commit Graph

969 Commits

Author SHA1 Message Date
Joachim Schöberl
2b0d3f02ba load opengl buffer-functions only if USE_BUFFERS is set 2017-05-08 21:20:36 +02:00
Matthias Hochsteger
990d0fce78 GUI support from Python
Enables experimental support for starting the Netgen GUI from Python
directly.
To use it, just import the gui module:
> import netgen.gui
2017-05-08 16:42:49 +02:00
Joachim Schöberl
94fd57154f disable VBO on windows 2017-04-26 12:15:19 +02:00
Matthias Hochsteger
9fb7fcacfc Revert interface code to preserve compatibility with NGSolve 2017-04-20 17:55:56 +02:00
Matthias Hochsteger
247afdb1bd Define NG_INLINE and use it in ngsimd.hpp (works around a bug in gcc5) 2017-04-20 16:22:50 +02:00
Matthias Hochsteger
9247c89fd7 add missing function HSum(a,b) for SIMD<double,1> 2017-04-20 11:41:23 +02:00
Matthias Hochsteger
643c89538d Add support for AVX512
Restructure mysimd.hpp and add support for AVX512. Changes include

  - Move mysimd.hpp to ngsimd.hpp
  - Expose ngsimd.hpp to NGSolve
  - New namespace ngsimd
  - Second template parameter (width) for SIMD class, default to the
    largest width available
  - Avoid raw avx register types in the interface, use SIMD<> instead
2017-04-19 18:02:27 +02:00
Joachim Schöberl
70da438d6d on mesh loading, set dummy-geometry if no geometry in mesh-file 2017-04-18 15:06:40 +02:00
Joachim Schöberl
5ed3de978b default constructable/movable tet for bisection-refinement 2017-04-18 08:43:23 +02:00
Joachim Schöberl
ec20b74722 make Element default constructable/movable 2017-04-13 10:40:47 +02:00
Joachim Schöberl
7027df2f73 fix 1->2 simd trafos 2017-04-12 16:44:02 +02:00
Joachim Schöberl
c50bd79beb default constructors assignment operators, cheaper Array-Resize 2017-04-11 21:06:30 +02:00
Joachim Schöberl
5e320a5556 dll-header ? 2017-04-11 10:51:08 +02:00
Joachim Schöberl
e464fe9771 parallel trig-marking for bisection 2017-04-11 10:45:31 +02:00
Joachim Schöberl
0074d8b407 inline GetTimeStamp 2017-04-11 10:45:11 +02:00
Joachim Schöberl
4382fc1168 fix hashtable 2017-04-11 10:04:33 +02:00
Joachim Schöberl
e6b853e995 hashtables roundup to power of 2, optimize bisect 2017-04-11 09:01:36 +02:00
Joachim Schöberl
b68bfdcc73 more parallel 2017-04-06 21:41:26 +02:00
Joachim Schöberl
e9fc64acc6 Merge branch 'multipointevaluation_for_isosurf' into 'master'
MultiPoint evaluation for DrawIsoSurface

See merge request !42
2017-04-04 15:28:43 +02:00
Gerhard Kitzler
dda40cf1f4 MultiPoint evaluation for DrawIsoSurface 2017-04-04 11:49:32 +02:00
Joachim Schöberl
65a474b8ef avoid shared-ptr copy 2017-04-04 11:34:24 +02:00
Joachim Schöberl
701d6a2369 inline GetCD2NamePtr 2017-04-03 18:15:34 +02:00
Joachim Schöberl
e1917c8d8a fix warnings 2017-04-03 17:40:01 +02:00
Gerhard Kitzler
8f936f82ea Fix data types for Python exports in python_mesh.cpp 2017-04-03 16:24:56 +02:00
Joachim Schöberl
619f9ff47f GetElement returns Facet-Array. Since for 1D these are point numbers, and point numbers are (still) 1-based, we have to return also the base 2017-04-03 11:17:47 +02:00
Joachim Schöberl
240a132078 avoid size_t-int narrowing in nginterfacev2 - GetElement 2017-04-01 21:00:12 +02:00
Christopher Lackner
794d1b6598 fix el.mat for bbnd elements in 3D 2017-03-30 15:22:19 +02:00
Joachim Schöberl
3d3a2ca186 Revert "Merge branch 'neighbouringdomains' into 'master'"
This reverts merge request !38
2017-03-29 15:02:36 +02:00
Christoph Wintersteiger
9a48710988 add implementation of GetBoundaryNeighbouringDomains 2017-03-29 11:22:29 +02:00
Joachim Schöberl
2d835e25cc add prototype GetBoundaryNeightbouringDomains 2017-03-27 15:12:52 +02:00
Matthias Hochsteger
5e2d2f685c Fix warnings (Intel compiler)
ICC complains about ambigous variable 'i' applying old/new scoping rules.
Therefore, use local loop variables in for loops.
2017-03-23 15:56:08 +01:00
Lukas Kogler
d24b996c8f Merge branch 'master' into par_fixes 2017-03-22 14:03:11 +01:00
Matthias Hochsteger
079406f615 Include <functional> (gcc7 was complaining here) 2017-03-17 21:09:27 +01:00
Joachim Schöberl
0608eb1ee0 set maxh for subdomains: geo.Add(solid, maxh=0.1) 2017-03-16 20:57:42 +01:00
Joachim Schöberl
5efaa2f85b first add corner points to mesh, and then edge points (for consistent orientation on periodic edges) 2017-03-08 18:07:55 +01:00
Matthias Hochsteger
9c0f1b5bdb adapt parallelmesh.cpp to commit 90d4c940 (topology is a member of Mesh (rather than pointer)...) 2017-03-07 10:43:38 +01:00
lkogler
383ced496b Changed MyMPI_RecvCmd and MyMPI_SendCmd. Disabled USE_BUFFERS for now. 2017-03-06 14:32:20 +01:00
Christopher Lackner
7b1d57b23c remove <vector> from csg header again 2017-02-27 11:35:56 +01:00
Christopher Lackner
58555b96d9 use Array instead of std::vector 2017-02-27 11:32:42 +01:00
Christopher Lackner
87669acfc6 Merge branch 'master' into fix_splinesurface 2017-02-27 11:27:20 +01:00
Joachim Schöberl
90d4c94028 make Topology a member of Mesh (rather then pointer) to reduce number of pointer dereferencing steps. This required move operators for Array and Table. 2017-02-25 19:48:37 +01:00
Joachim Schöberl
c633035043 more size_t 2017-02-25 17:11:30 +01:00
Joachim Schöberl
c143aafaea Array resize checks for trivially copyable 2017-02-24 22:29:57 +01:00
Joachim Schöberl
a698b57596 add unified GetMaterial for co-dimension 2017-02-24 17:18:42 +01:00
Christopher Lackner
89fe31b550 Squashed commit of the following:
commit fa556baaa222ba349d534027f7203588dcda6ad8
Author: Christopher Lackner <christopher.lackner@tuwien.ac.at>
Date:   Thu Feb 23 15:56:47 2017 +0100

    add python path to docker template

commit 54eb7eedc77ad8c86952c347536e7e1a854b62ed
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Thu Feb 23 14:59:45 2017 +0100

    install pytest in docker images

commit 3c1c755891e8372762130a6ed8c39cf056430264
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Thu Feb 23 14:52:32 2017 +0100

    enable CTest properly, add pytest

commit 4c4cf229ab8e7fd6057f535fb05c3079a9278f80
Author: Christopher Lackner <christopher.lackner@tuwien.ac.at>
Date:   Thu Feb 23 14:02:13 2017 +0100

    fix write splinesurface to savemesh

commit 069fbdbc529c9dd91644663f3f365e08be5af70e
Author: Christopher Lackner <christopher.lackner@tuwien.ac.at>
Date:   Thu Feb 23 09:03:26 2017 +0100

    fix lifetime of SplineSurface
2017-02-23 16:41:27 +01:00
Matthias Hochsteger
002a2cba6b Fix (or work around?) strange bug on Windows
The definition of std::max uses references for parameters, which leads
to unnecessary storing of constants on the stack. If the stack is
overwritten this leads to wrong results.
max2() works around this using call-by-value.
2017-02-16 09:12:45 +01:00
Joachim Schöberl
cd314e2f45 few more inline functions 2017-02-15 22:31:24 +01:00
Matthias
360e6fba86 Fix for OCC7.1 on Windows, also support providing own OCC version by setting OCC_INCLUDE_DIR and OCC_LIBRARY_DIR 2017-02-09 12:07:09 +01:00
Joachim Schöberl
e190943f4f change bc-names 2017-02-09 10:06:34 +01:00
Matthias
f674d5a20a Assume that malloc returns memory that is 16 byte-aligned
This fixes an issue with inconsistent memory allocation/deallocation of
MeshPoint in Python.
2017-02-07 10:26:31 +01:00
Joachim Schöberl
fd3d3e28e6 fix warning 2017-02-04 07:48:48 +01:00
Matthias Hochsteger
fa9d918963 Apply patches for OpenCasCade 7 by Lorenz Lechner
see b443cbdb13/patches
2017-01-31 19:21:25 +01:00
Matthias Hochsteger
0cf1cfea5c Set DLL_HEADER to export in OCC subfolder 2017-01-31 14:58:01 +01:00
Christoph Wintersteiger
551db1627e fix CalcProj for ExtrusionFace and export to python 2017-01-27 16:14:27 +01:00
Christoph Wintersteiger
660425ab61 fix for DEVELOP, Vec has no Get 2017-01-27 16:07:08 +01:00
Joachim Schöberl
52517218c9 Merge branch 'elofpoint-tol' into 'master'
Use tolerance in GetElementOfPoint when using a search tree

I'm getting artifacts at domain edges (see attached), because no tolerance is used when calling `elementsearchtree->GetIntersecting()` inside `GetElementOfPoint`.

![searchtree](/uploads/5aa10da74cac7bef9e134756ea897e49/searchtree.png)

See merge request !29
2017-01-25 21:25:52 +01:00
Matthias Hochsteger
4cff6b546a install all headers to INCDIR 2017-01-16 14:59:57 +01:00
Alexander Schlüter
60768cf9c5 use tolerance in GetElementOfPoint when using a search tree 2017-01-12 21:09:07 +01:00
Matthias Hochsteger
190d035809 Fix Python paths 2017-01-09 18:45:12 +01:00
Joachim Schöberl
f44a32e4de Merge branch 'pointoutofquad' into 'master'
point out of quad fix

Now the error "point out of domain" does not appear any more, but the values are wrong. [pointoutofquad.py](/uploads/91e142ab369491ac5a4e4a8d9c93d671/pointoutofquad.py)

See merge request !28
2017-01-06 22:16:53 +01:00
Joachim Schöberl
d1de4a7cf9 Introduce NetgenGeometry base class to Python. export meshing first, then csg 2017-01-05 05:08:24 +01:00
Michael Neunteufel
3e9ad94307 point out of quad fix 2017-01-02 11:06:36 +01:00
Joachim Schöberl
c31240580b remove test output 2017-01-01 15:34:55 +01:00
Joachim Schöberl
9790774b49 change to SurfaceElementIndex 2016-12-15 13:05:34 +01:00
Joachim Schöberl
d3e1f0e8fd Merge branch 'py_exp_ComprAndDelsurfels' into 'master'
Compress and DeleteSurfaceElements to python

export Compress and DeleteSurfaceElement to python. 

Perhaps you prefer having the ElementId-Version of DeleteSurfaceElement instead?

See merge request !26
2016-12-15 13:03:24 +01:00
Joachim Schöberl
bf1dfb6b08 Merge branch 'stl_to_python' into 'master'
Stl to python



See merge request !25
2016-12-14 18:02:52 +01:00
Christoph Lehrenfeld
5a940b0b13 Compress and DeleteSurfaceElements 2016-12-14 13:28:13 +01:00
Joachim Schöberl
775d998235 don't be so strict with deprecated 2016-12-12 23:08:22 +01:00
Joachim Schöberl
54aa508fb6 fix 0/1 base 2016-12-12 23:01:21 +01:00
Christopher Lackner
e16dfde5e7 fix libstlvis 2016-12-12 14:26:49 +01:00
Christopher Lackner
d081c1d455 Merge branch 'master' into stl_to_python 2016-12-12 14:24:09 +01:00
Christopher Lackner
2649726692 fix DLL_HEADER export 2016-12-12 14:22:24 +01:00
Christopher Lackner
a5e411d008 load stl fix and some vis 2016-12-12 13:14:47 +01:00
Joachim Schöberl
d6b16870fa PointIndex::BASE = 0 and STL, PointIndices 2016-12-12 11:47:46 +01:00
Christopher Lackner
25d2e497b1 add python stl submodule 2016-12-12 10:47:05 +01:00
Christopher Lackner
6e60338987 Merge branch 'master' into stl_to_python 2016-12-12 10:39:51 +01:00
Joachim Schöberl
be1e6e160b PointIndex::BASE = 0 working for CSG 2016-12-11 20:17:07 +01:00
Joachim Schöberl
59dc0b6c6a Array::Append does not return size anymore ( will be changed to last ) 2016-12-11 18:22:07 +01:00
Joachim Schöberl
bdbc415589 more use of PointIndex 2016-12-11 18:02:16 +01:00
Joachim Schöberl
4c32c2ac25 more use of PointIndex 2016-12-11 12:12:05 +01:00
Joachim Schöberl
e4a6d127fd dont't store orientation of edges and faces. This gives a unified memory layout for edges and faces and allows to access facets without copying (in 2D and 3D) 2016-12-10 19:02:13 +01:00
Christopher Lackner
8870108846 Merge branch 'master' into mesh_only_one_domain 2016-12-09 16:36:50 +01:00
Christopher Lackner
561cf4e75f add files 2016-12-09 16:34:22 +01:00
Joachim Schöberl
a423258f54 Merge branch 'genmesh_firststep_as_meshingparam' into 'master'
Genmesh laststep as meshingparam



See merge request !23
2016-12-07 20:01:54 +01:00
Joachim Schöberl
bb85bb01a3 quads are curved (in general) 2016-12-06 21:54:51 +01:00
Christopher Lackner
9f9a5e4304 fix typo 2016-12-06 13:38:18 +01:00
Christopher Lackner
c771ca5bdc fix occ genmesh 2016-12-06 13:23:08 +01:00
Christopher Lackner
7743503c1d fix and use in swapimprove as well 2016-12-06 11:32:16 +01:00
Christopher Lackner
1f314ae0ee fix wrong order of arguments 2016-12-05 15:37:05 +01:00
Christopher Lackner
181eea5038 typo fix 2016-12-05 15:10:34 +01:00
Christopher Lackner
dc3a214994 merge endMeshStep 2016-12-05 15:08:25 +01:00
Christopher Lackner
16ecf99cce remove onlySurface again (use MeshingSteps instead) 2016-12-05 14:59:44 +01:00
Christopher Lackner
bd39b8df88 export enum MeshingStep 2016-12-05 14:39:09 +01:00
Christopher Lackner
f582c7935f remove perfstepsstart from python interface 2016-12-05 14:31:12 +01:00
Christopher Lackner
7e4892a9e7 firststep and laststep as meshingparameters to be exported to python 2016-12-05 13:50:21 +01:00
Christopher Lackner
a0326d490d some fixes 2016-12-05 13:15:06 +01:00
Christopher Lackner
ee833ff362 add onlySurface to generate only surface mesh 2016-12-02 19:00:34 +01:00
Christopher Lackner
0d36c69c25 domainwise meshing and optimization enabled 2016-12-02 14:59:59 +01:00
Matthias
953bd13cf4 Support for OpenGL buffer objects on Windows 2016-12-02 12:27:26 +01:00
Matthias Hochsteger
e31cc7dfa1 Not necessary to cast py::list to python object 2016-12-01 14:24:30 +01:00
Michael Neunteufel
f65651ce0e bug fix PointContainedIn2DElement 2016-11-27 19:25:25 +01:00
Matthias Hochsteger
c9c2f26334 remove unnecessary version definition 2016-11-24 15:56:50 +01:00
Joachim Schöberl
5b3eb4077a fix create vol-element (thx Astrid) 2016-11-23 20:44:52 +01:00
Matthias Hochsteger
ee4d5e89d8 remove unnecessary files (mostly unsupported build systems) 2016-11-23 18:07:14 +01:00
Joachim Schöberl
f70edcb247 Merge branch 'quickfix_1d_index' into 'master'
export edgenr to python as well



See merge request !21
2016-11-22 10:55:33 +01:00
Christopher Lackner
61e13dbc8b remove edgenr at constructor 2016-11-21 16:35:46 +01:00
Christopher Lackner
02fd6d2712 export edgenr to python as well 2016-11-21 14:54:11 +01:00
Joachim Schöberl
0edd570990 parallel clusters 2016-11-20 19:55:17 +01:00
Joachim Schöberl
9014669c56 timer 2016-11-20 19:30:50 +01:00
Joachim Schöberl
467d3a01be no testout in bisect 2016-11-20 18:36:00 +01:00
Christopher Lackner
e7e90d1a68 cd2names to python export 2016-11-18 16:57:42 +01:00
Joachim Schöberl
615575f5cf Merge branch 'fix_1d_elementindex' into 'master'
fix 1d elementindex

index was wrong for 1d elements

See merge request !17
2016-11-17 18:46:09 +01:00
Christopher Lackner
e046452dfa fix 1d elementindex 2016-11-17 17:03:58 +01:00
Gerhard Kitzler
5d1e131c53 Merge branch 'master' into remove_tix2 2016-11-17 14:44:28 +01:00
Gerhard Kitzler
9eee23693e Merge branch 'master' into remove_tix2 2016-11-16 20:15:33 +01:00
Gerhard Kitzler
c4a1128e79 Small Fixes 2016-11-16 16:13:17 +01:00
Christopher Lackner
3d80b48a7a Merge branch 'master' into codim2integrals 2016-11-16 12:15:55 +01:00
Christopher Lackner
0a9abc1acc array iterator to python 2016-11-15 18:12:51 +01:00
Matthias Hochsteger
5b253c76e0 Add a guard to avoid multiply defined AVX operators on Windows 2016-11-10 15:36:47 +01:00
Matthias Hochsteger
7fb6a57e90 Revert "Export Ngx_Mesh to Python"
This reverts commit 9b235b4388.
2016-11-10 15:36:47 +01:00
Joachim Schöberl
c6196dcb91 Merge branch 'par_fixes' into 'master'
Par fixes

- Increased buffer size in send/recv command (needed for sending python files, see ngsolve merge request)
- Fixed mpi-parallel visualization
- Added warning if using direct rendering + mpi (which probably breaks in most cases)

See merge request !10
2016-11-10 11:55:03 +01:00
Matthias Hochsteger
9b235b4388 Export Ngx_Mesh to Python 2016-11-09 17:18:01 +01:00
Christopher Lackner
8a1cf75c5e fix init of splinesurface 2016-11-09 16:10:04 +01:00
Lukas Kogler
37e0e17919 removed some comments. formatting 2016-11-08 12:57:59 +01:00
Lukas Kogler
d778d9dcef fixed mpi-parallel visualization; added warning in mvdraw if running in parallel and direct rendering is enabled (which probably breaks parallel visualization) 2016-11-07 17:49:38 +01:00
Lukas Kogler
49aa2861d6 changed buffer size in send/recv cmd (for sending entire python files) 2016-11-07 17:48:23 +01:00
Christopher Lackner
9e14f2ceb8 pyb11 fixes 2016-11-06 18:25:38 +01:00
Christopher Lackner
2122a954aa merge pybind11 2016-11-05 17:15:16 +01:00
Joachim Schöberl
fe356ab3ca 0 to py::int_ conversion 2016-11-04 14:55:15 +01:00
Matthias Hochsteger
399d370463 fix some typos and add placement new operator to AlignedAlloc 2016-11-04 12:48:23 +01:00
Matthias Hochsteger
abde483216 fix wrong namespace 2016-11-04 12:19:38 +01:00
Matthias Hochsteger
96c1235184 switch from boost::python to pybind11 2016-11-04 12:14:52 +01:00
Christopher Lackner
191380e227 Merge branch 'master' into codim2integrals 2016-11-03 14:34:06 +01:00
Joachim Schöberl
08a662ae77 optional use of opengl-buffers (not supported on WIN without additional library) 2016-11-02 06:05:08 +01:00
Joachim Schöberl
e780f55ddd include glew 2016-11-01 21:04:31 +01:00
Christopher Lackner
a008546308 Merge branch 'master' into codim2integrals 2016-11-01 15:05:42 +01:00
Joachim Schöberl
6d4704770d solution rendering using vertex arrays 2016-11-01 11:47:49 +01:00
Christopher Lackner
2d77b35b39 merge master 2016-10-31 15:37:02 +01:00
Christopher Lackner
e28753431e merge master into branch 2016-10-31 15:10:12 +01:00
Joachim Schöberl
3fcb7d13d5 dummy aligned-alloc without AVX 2016-10-30 15:15:16 +01:00
Joachim Schöberl
3a631f10ca solution visualization using AVX 2016-10-30 15:01:52 +01:00
Christopher Lackner
767b819e5d python cd2 functionality, mesh scaling 2016-10-28 16:49:50 +02:00
Christopher Lackner
7a6de7b1dc further fixes 2016-10-27 15:41:08 +02:00
Joachim Schöberl
cdcd868712 size_t 2016-10-25 23:34:06 +02:00
Christoph Wintersteiger
8756aabd3c add identification for 1d meshes, used for periodic boundary conditions 2016-10-21 16:01:46 +02:00
Joachim Schöberl
b5571213f4 meshing parameters to vol-meshing 2016-10-20 13:19:24 +02:00
Joachim Schöberl
87656d3b87 periodic edges in 2d 2016-10-20 12:29:00 +02:00
Christopher Lackner
a6ea18d07d fix bboundary condition numbering 2016-10-17 17:31:09 +02:00
Christopher Lackner
ccde47d2c0 added multielementtransformation 2016-10-16 09:45:16 +02:00
Christopher Lackner
b8bf194fcf some changes 2016-10-11 14:10:36 +02:00