Commit Graph

535 Commits

Author SHA1 Message Date
Joachim Schöberl
e72d90fcbb Merge branch 'derive_geos_netgengeometry' into 'master'
derive geometry class in python from NetgenGeometry, gil call guard

See merge request jschoeberl/netgen!82
2018-04-18 22:00:03 +02:00
Christoph Wintersteiger
ef80db781a modify PointBetween for manually generated meshes 2018-04-18 09:34:41 +02:00
Christopher Lackner
bc520769ba derive geometry class in python from NetgenGeometry, gil call guard
for generatemesh in 2d
2018-04-17 19:37:29 +02:00
Christopher Lackner
96f9e01aba release GIL in expensive functions 2018-03-12 22:38:21 +01:00
Joachim Schöberl
07b84024ca enable tables to disable edge/face generation if not needed 2018-03-11 16:28:43 +01:00
Joachim Schöberl
aa8dbac6be export Trafo to py, IdentifyPeriodic with Trafo 2018-03-09 15:29:50 +01:00
Joachim Schöberl
ee7ac2e0a0 fix warnings 2018-03-08 23:47:58 +01:00
Joachim Schöberl
5de403ffd8 py::init constructors 2018-03-08 22:19:11 +01:00
Joachim Schöberl
cf0d3f6682 fix warnings 2018-03-08 21:36:34 +01:00
Christopher Lackner
bdfbf14a39 fix segfault on query non set boundary name in 2D 2018-03-08 14:46:34 +01:00
luz.paz
a10531adb2 Misc. typos
Found via `codespell -q 3`
2018-02-06 14:12:24 -05:00
Christopher Lackner
301ba176e5 Python export of second order trigs 2018-01-23 16:45:20 +01:00
Matthias Hochsteger
0b411e1b07 install mydefs.hpp, some DLL_HEADER
Includes parts of pull request by looooo
https://github.com/NGSolve/netgen/pull/4
2018-01-23 03:03:47 -08:00
luz.paz
58002505bc Typos
Found via `codespell`
2018-01-14 12:18:54 -05:00
Joachim Schöberl
3fffb78a20 more parallel in MeshTopology 2018-01-07 17:33:59 +01:00
Joachim Schöberl
5f2edca91c more parallel in UpdateTopology, optimize Clusters 2018-01-06 18:41:45 +01:00
Joachim Schöberl
19ec4fc9ca more tracing and parallelization 2018-01-04 18:45:07 +01:00
Joachim Schöberl
dca5a01e04 more parallel in topology 2018-01-04 13:00:01 +01:00
Joachim Schöberl
28c7bb27fc include atomic 2018-01-04 12:18:23 +01:00
Joachim Schöberl
789305c3bc more parallelism in netgen-topology 2018-01-04 11:48:45 +01:00
Joachim Schöberl
5469356147 tracer in Netgen 2018-01-04 10:43:34 +01:00
Unknown
afdc1ae85a Misc. typos
More typo
2017-12-09 22:21:40 -05:00
Christopher Lackner
bcf5ea67aa GetGeometry from mesh 2017-12-06 14:16:52 +01:00
Joachim Schöberl
38b7c2b8fa added template instantiation 2017-11-24 07:09:28 +01:00
Joachim Schöberl
7cf05d84a8 AVX512 for element-trafos 2017-11-23 21:26:36 +01:00
Joachim Schöberl
1d02f7f104 geometric search tree with hash-table 2017-11-13 11:58:13 +01:00
Joachim Schöberl
af57dd1b72 improve STL makeatlas: searchtree, templetize searchtree 2017-11-10 13:22:20 +01:00
Joachim Schöberl
d02bb9024e fix triangle generation rule (thx to TDM) 2017-11-07 11:36:54 +01:00
Joachim Schöberl
f1917aa2c4 Merge branch 'save_compressed_mesh' into 'master'
check filename extension when saving a mesh

See merge request !57
2017-11-06 17:03:31 +01:00
Christoph Wintersteiger
ccc092d2c5 save check of file ending 2017-10-30 13:43:01 +01:00
Joachim Schöberl
712e2c3fb4 Segment array with size_t indexing 2017-10-29 11:31:50 +01:00
Christopher Lackner
2835597c21 export CalcLocalH and SetMaxHDomain to Python 2017-10-12 12:55:07 +02:00
Christoph Wintersteiger
20d6a12192 check extension of filename to ensure that the loading process is successful 2017-09-29 14:47:16 +02:00
Joachim Schöberl
aa97817d08 support of 0D-elements in CSG 2017-09-22 17:02:39 +02:00
Joachim Schöberl
ec39a51e92 assign default geometry in the (Python) mesh ctor 2017-09-22 17:02:39 +02:00
Joachim Schöberl
924edbb3ad fixes thanks to etromme 2017-09-14 13:50:29 +02:00
Joachim Schöberl
045a271c2e dshapes were not computed for SIMDs 2017-09-13 10:46:10 +02:00
Joachim Schöberl
cb9816c244 Add gmsh-import, pybind2.2 ctor for Mesh 2017-09-06 18:08:39 +02:00
Joachim Schöberl
e17939a95b Merge branch 'update_pybind11' into 'master'
Update pybind11 to version 2.2.0

See merge request !60
2017-09-02 22:09:34 +02:00
Matthias Hochsteger
1430b89e39 Update pybind11 to version 2.2.0
- Replace PYBIND11_PLUGIN with PYBIND11_MODULE

- Fix warnings about symbol visibility by replacing
  'namespace pybind11' with 'namespace PYBIND11_NAMESPACE'

- Pybind sets the default visibility of its namespace to 'hidden'
  Thus, our export functions like  ExportCSG(py::module &m) also are
  hidden by default. To work around that define DLL_HEADER
  '__attribute__ ((visibility ("default")))
  on GNUC platforms.
2017-09-01 10:16:56 +02:00
Joachim Schöberl
7e83edabf1 order of d'tors for global variables: create VSSolution on demand, which is later 2017-08-28 18:19:20 +02:00
Joachim Schöberl
74c8fa5cf4 little polish of bisect 2017-08-27 14:52:57 +02:00
Matthias Hochsteger
d4a2d4c87b Check if mesh file exists before loading
Also derive NgException from std::exception to print the error message
in Python / on the command line.
2017-08-24 13:59:16 +02:00
Joachim Schöberl
a0485eece0 wasn't worth it 2017-08-17 20:58:08 +02:00
Joachim Schöberl
b20f428eae to make also gcc-6.3 happy 2017-08-17 20:35:35 +02:00
Joachim Schöberl
3955916ac5 atomic fix 2017-08-17 20:27:41 +02:00
Joachim Schöberl
463c564c98 atomic workaround 2017-08-17 20:24:03 +02:00
Joachim Schöberl
4fe9abcc0e atomic workaround 2017-08-17 20:20:30 +02:00
Joachim Schöberl
5f211234d1 thread-safe insertion of surface elements 2017-08-17 20:08:08 +02:00
Christopher Lackner
180ebbda92 delete edges with negative edgenr in mesh.Compress 2017-08-09 14:31:26 +02:00
Joachim Schöberl
043e3403ba use geometry from mesh on export user format 2017-07-24 22:26:18 +02:00
Joachim Schöberl
046f473619 Merge branch 'master' of data.asc.tuwien.ac.at:jschoeberl/netgen 2017-07-24 21:49:59 +02:00
Joachim Schöberl
8377ab058d switch off creation of hexes per default 2017-07-24 21:49:49 +02:00
Bernd Schwarzenbacher
2a37793f72 Add 3 meshingparameters to python interface 2017-07-24 11:00:56 -04:00
Matthias Hochsteger
0fc62e7920 Some DLL_HEADERs for Windows 2017-07-19 11:26:12 -07:00
Joachim Schöberl
f2f3e92125 second order segments available for Python 2017-06-28 07:23:28 +02:00
Joachim Schöberl
ee476e154d set MeshPoint coordinates 2017-06-26 23:26:09 +02:00
Joachim Schöberl
584f4506a9 Merge branch 'par_fixes' into 'master'
Par fixes

See merge request !51
2017-06-21 09:31:12 +02:00
Lukas Kogler
4c0c5aac8c correctly use delete[] instead of delete in python_mesh.cpp 2017-06-20 10:27:26 +02:00
Joachim Schöberl
837e92bb16 set geometry (thx Lukas) 2017-06-12 12:33:20 +02:00
lkogler
1e9e376d2e prettied it all up a bit 2017-06-09 20:56:19 +02:00
Lukas Kogler
3c1596b8a0 Fixed curvedelems+mesh loaded from file via python. Fixed MPI+curvedelems 2017-06-09 20:21:55 +02:00
Lukas Kogler
7e21f0cd9c BC-and Material-names are now working with MPI. 2017-06-08 17:50:37 +02:00
Lukas Kogler
6524c0c170 Merged master 2017-06-06 10:11:41 +02:00
Lukas Kogler
2cc28a960e Removec some cout-output 2017-06-06 09:55:40 +02:00
Joachim Schöberl
e8712aa8ae export Mesh.SecondOrder 2017-05-31 23:44:50 +02:00
Joachim Schöberl
9324121953 smaller int-type for GetNV 2017-05-31 07:54:48 +02:00
Joachim Schöberl
a22e36f182 fix bug for debug output 2017-05-31 07:54:48 +02:00
Joachim Schöberl
feb74d49c2 use static class variable rather then static function variable 2017-05-31 07:54:47 +02:00
Matthias Hochsteger
f6a0b31b96 Cleanup CMake build system
- Use CMAKE_INSTALL_PREFIX instead of INSTALL_DIR
  - Allow finer control of install directories
  - Use compiled TCL code by default
  - Fix RPATH usage on Linux and MacOSX

### Allow finer control of install directories
The following variables can be set to either absolute or relative paths
NG_INSTALL_DIR_PYTHON: Python files
NG_INSTALL_DIR_BIN: Executables
NG_INSTALL_DIR_LIB: Libraries
NG_INSTALL_DIR_INCLUDE: header files
NG_INSTALL_DIR_CMAKE: CMake files
NG_INSTALL_DIR_RES: Resources

### Use compiled TCL code by default
The tcl files contained in Netgen are stored in onetcl.cpp as c-string.
This way it's not necessary to install tcl files or set NETGENDIR

### Fix RPATH usage on Linux and MacOSX
The Netgen installation should be completely relocatable now.

Squashed commit of the following:

commit 201eda5e62726bd87d76beb13c3e5643cd4c7810
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 21:10:08 2017 +0200

    cleanup

commit b4cd46a9d2f390b40c5223c8d9971f576b979644
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 20:47:46 2017 +0200

    fix

commit 6506a834dbee2fd7b6df3b3f3709d0b27344356f
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 20:41:45 2017 +0200

    allow gui test to fail

commit 56c5fc131f61259e6fb67b60f7fff955d2e8d2da
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 20:26:18 2017 +0200

    add python3-tk to docker images

commit 4d1b5aac1d028867339819599708a08f2098bbd6
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 11:22:18 2017 -0700

    windows fix

commit 92b5f8a95491ba3508143d7f1b94359edc0655ce
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 11:08:08 2017 -0700

    fix for windows

commit 3f7bf51434ef3b637b3563930ddb61d04af645cb
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 19:28:13 2017 +0200

    fixes, test for gui

commit ef1d0164a50fadf374e3b1e43a745b5f69a16ad6
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 19:06:55 2017 +0200

    fixes

commit 67645bb896012149c23c851b03287199c21fa129
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 17:24:58 2017 +0200

    netgen config

commit b587b77a282768719cffc366c56d82a1746e0be0
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 16:53:47 2017 +0200

    remove comments

commit 2b34cc78818afa1cf21484bd0976413a91db0851
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 05:03:00 2017 -0700

    fix windows

commit 9e98efa54065624e264eaf1acf74b44ef022a68d
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 13:42:11 2017 +0200

    fixes

commit 394b470a07d73431079f80caa36c7c7042077f40
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 12:24:40 2017 +0200

    fix rpath issue

commit 6787eae384a8592f90598258ccd8207cd499d9fc
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 11:37:05 2017 +0200

    some more fixes with install dir

commit fcf22659c60300e8d39d12e14b21c58a062e739c
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 01:34:06 2017 -0700

    some fixes

commit ede1f0c462978bb70d3b4e2251cb555a592e82e3
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 10:16:34 2017 +0200

    fixes

commit b6a1259876a77f54e419a44f1b44d03d5bb49b82
Merge: c79f9a3 6627b0b
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Wed May 24 09:35:50 2017 +0200

    Merge remote-tracking branch 'origin/master' into cmake_cleanup

commit c79f9a3421d4d2937c31dab4a601ce09d52b0e54
Merge: 99c3550 030ad1d
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 22 17:52:24 2017 +0200

    Merge remote-tracking branch 'origin/master' into cmake_cleanup

commit 99c35500850e08fdc847013bb384169b1483acb4
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Fri May 19 14:37:28 2017 +0200

    fix rpath

commit 8215e9748d9ee225266bc941da1ca252aebd27de
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Thu May 18 13:29:41 2017 +0200

    remove INSTALL_DIR, rename var to NETGEN_INSTALL_DIR_INCLUDE, install libngpy to python package folder

commit 23d028c4cf7572de9e2e277cda8f6b07b6b1d9f9
Merge: 57027c8 f72a247
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Thu May 18 12:03:59 2017 +0200

    Merge remote-tracking branch 'origin/master' into cmake_cleanup

commit 57027c8c706ff755bdf26887884bbdeca129fe8f
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Fri May 12 17:32:05 2017 +0200

    New CMake option: USE_INTERNAL_TCL (ON by default)

    This option uses the tcl code compiled in onetcl.cpp instead of separate
    tcl files by default. When set at configure time, no tcl files will be
    installed anymore.

commit 27ce5b7edd66d64e2453f5045f5ac08c313f7608
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Fri May 12 17:16:52 2017 +0200

    WIP: Cleanup of CMake files

      - Fix RPATH on Linux (TODO: other platforms)
      - New variables to specify install behaviour:
          NG_INSTALL_DIR_BIN
          NG_INSTALL_DIR_LIB
          NG_INSTALL_DIR_CMAKE
          NG_INSTALL_DIR_INCLUDE
2017-05-29 21:41:27 +02:00
Christopher Lackner
3ba7d2c276 add meshsizefilename to python meshingparameters 2017-05-17 16:04:56 +02:00
Matthias Hochsteger
9a7307fb39 Start GUI from Python only if Netgen exe is not running 2017-05-15 18:56:47 +02:00
Joachim Schöberl
b4f3107fef default material name 2017-05-13 10:24:12 +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
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
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
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
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
240a132078 avoid size_t-int narrowing in nginterfacev2 - GetElement 2017-04-01 21:00:12 +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
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
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
c143aafaea Array resize checks for trivially copyable 2017-02-24 22:29:57 +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
Joachim Schöberl
e190943f4f change bc-names 2017-02-09 10:06:34 +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
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