Commit Graph

263 Commits

Author SHA1 Message Date
Matthias Hochsteger
8defe2f864 New function Mesh::FindIllegalTrigs()
Find illegal trigs after surface meshing and use this information in
surface mesh optimization
2019-09-30 14:54:03 +02:00
Joachim Schöberl
b867caf01c parallel main loop in FindOpenElements 2019-09-30 11:05:13 +02:00
Joachim Schöberl
656b0e0539 parallel CreatePoint2ElementTable as method of Mesh 2019-09-30 09:36:15 +02:00
Joachim Schöberl
7019504265 partially parallel Compress 2019-09-30 08:53:32 +02:00
Matthias Hochsteger
4987d12556 SplitImprove for triangles 2019-09-27 20:49:12 +02:00
Joachim Schöberl
71758de667 use surfindex as hash-key in FindOpenSegments 2019-09-24 10:34:36 +02:00
Joachim Schöberl
d995976621 less locks on AddVolumeElement 2019-09-23 21:50:42 +02:00
Joachim Schöberl
fae350929c less locks in mesh.AddPoint/Element 2019-09-23 11:22:50 +02:00
Matthias Hochsteger
7c88a6da76 Lock mesh in Mesh::Compress 2019-09-16 13:13:48 +02:00
Matthias Hochsteger
7e7a1bb98b Avoid parallel call of BuildBoundaryEdges() inside LegalTet() 2019-09-05 13:38:41 +02:00
Matthias Hochsteger
1584da69ae Rename BitArray to NgBitArray 2019-08-28 14:04:05 +02:00
Matthias Hochsteger
579e5d3874 Remove BitArrayChar 2019-08-28 13:49:11 +02:00
Joachim Schöberl
b1d709338a trigger CI 2019-08-18 13:55:57 +02:00
Joachim Schöberl
3d839c2986 trigger CI 2019-08-18 13:50:22 +02:00
Matthias Hochsteger
ad526ef2bc Parallelize CombineImprove 2019-08-14 17:41:26 +02:00
Joachim Schöberl
d215ac1025 T_POINTS are now ngcore::Array 2019-08-10 00:21:37 +02:00
Joachim Schöberl
9118ddc63a preparations to switch T_POINTS to ngcore::Array 2019-08-09 15:30:58 +02:00
Joachim Schöberl
c900e0380b unique ptrs in Mesh 2019-08-09 09:02:50 +02:00
Joachim Schöberl
b03705c37d more use of Index types 2019-08-09 00:23:12 +02:00
Christopher Lackner
70a7a1239e fix loop in mesh compress 2019-08-08 11:03:19 +02:00
Joachim Schöberl
e8960ebae1 use ngscore::Array for surface elements 2019-08-08 08:44:59 +02:00
Joachim Schöberl
79c958cf83 fixing PointIndex::Valid 2019-08-07 21:21:05 +02:00
Joachim Schöberl
1b2e5be954 code cleanup 2019-08-07 08:28:57 +02:00
Joachim Schöberl
b5a7678965 remove timer, PointIndex::INVALID 2019-08-07 07:48:15 +02:00
Joachim Schöberl
20abe6ec37 make number of vertices per level available 2019-07-29 17:46:09 +02:00
Matthias Hochsteger
d89b328979 Get rid of pybind11 include in archive.hpp
Forward-declare pybind11::object and move implementation of
Archive::Shallow() to new header python_ngcore.hpp

All files using the Shallow/Python archive functionality must include
core/python_ngcore.hpp. Missing includes result in link errors, due to
missing instantiations of Archive::Shallow<T>();
2019-07-11 17:09:59 +02:00
Matthias Hochsteger
2d46d21a52 Rename FlatArray to NgFlatArray 2019-07-09 10:40:35 +02:00
Matthias Hochsteger
cb87362f64 Rename Array to NgArray 2019-07-09 10:39:16 +02:00
Michael Neunteufel
10297c1e6c copy numvertices for optimize2dmesh 2019-06-24 19:43:21 +02:00
Michael Neunteufel
88ec68be65 OptimizeMesh2d works now with curved TRIG6 2019-06-24 19:29:38 +02:00
Michael Neunteufel
a925ef4e65 copy also material and cd3 names in meshclass 2019-06-24 12:45:44 +02:00
Joachim Schöberl
18feeba999 Merge branch 'mpi_fix' into 'master'
MPI fix

See merge request jschoeberl/netgen!150
2019-04-16 11:36:20 +00:00
Lukas
a386ca46d9 delete local memory after redistributing mesh on master. GetElementOfPoint behaves correctly for empty meshes 2019-04-15 17:49:45 +02:00
Christopher Lackner
3b605c9a14 archive numvertices so that secondorder mesh is pickled correctly 2019-04-11 13:57:14 +02:00
Joachim Schöberl
2794dda996 copy mesh from py 2019-04-10 14:13:34 +02:00
Joachim Schöberl
f6a290e44f modernize ComputeNVertices 2019-03-30 14:02:38 +01:00
Lukas
9c4cfb7864 use mesh-communicator in another place 2019-02-28 17:48:18 +01:00
Lukas
965a6cc387 archive co-dim 3 names 2019-02-26 11:18:11 +01:00
Joachim Schöberl
734e96c87c get rid of ng_comm 2019-02-12 22:11:55 +01:00
Joachim Schöberl
9b8f273b14 mpiwrapper 2019-02-11 22:12:29 +01:00
Michael Neunteufel
e8f6ca5c1b merge master 2019-02-11 09:16:22 +01:00
Michael Neunteufel
9d7c851bd9 (hopefully) fixed point in quad for the last time 2019-02-11 09:11:57 +01:00
Christopher Lackner
d5f1076e17 read tet10, pyramid13, prism15 and hex20 from gmsh 2019-02-06 19:13:51 +01:00
Joachim Schöberl
e42f81b5d5 take care of tolerance in searchtree 2019-02-05 09:02:31 +01:00
Lukas
0f4ca1c7a7 Fewer ifdefs for MPI. More consistent use of mpi_interface instead of direct MPI calls. 2019-01-30 12:09:40 +01:00
Lukas
c7fb6c7e4a Add a global communicator. The mesh now has a communicator. 2019-01-29 16:10:02 +01:00
Christopher Lackner
f88cc77cfe move SymbolTable to ngcore 2019-01-02 18:21:52 +01:00
Christopher Lackner
829defd3eb archive now support python exported objects 2018-12-20 17:01:27 +01:00
Christopher Lackner
099acc9fa1 pickling for all geometry types 2018-12-14 12:01:58 +01:00
Joachim Schöberl
cdd871282e Merge branch 'archive_mesh_curving' into 'master'
pickle curving of mesh

See merge request jschoeberl/netgen!105
2018-12-13 17:08:31 +00:00
Christopher Lackner
7bfc48e8f3 start ngcore, archive in there 2018-11-29 18:35:30 +01:00
Christopher Lackner
ec129f6962 fix mesh pickling (if there is no geometry/no curving) 2018-11-22 19:11:49 +01:00
Christopher Lackner
a3d7be7e79 pickle curving of mesh 2018-11-22 16:23:23 +01:00
Christopher Lackner
c52cc71a7b seg.cd2i is not set, seg.edgenr is used everywhere else 2018-11-16 11:43:19 +01:00
Matthias Hochsteger
b0129d0473 [bugfix] Set element index in CloseSurface() 2018-10-22 17:18:58 +02:00
Michael Neunteufel
1cdc814f4e added BBBND material names 2018-08-07 11:09:03 +02:00
Lukas
29cfd7533c Periodic Mesh somewhat working in 2 and 3 dimensions. 2018-07-19 17:33:26 +02:00
Joachim Schöberl
d9219e6f05 picking geometry with mesh (CSG only by now) 2018-05-12 09:16:02 +02:00
Joachim Schöberl
66ef426c79 Curve mesh functionality over Ngx_Mesh 2018-05-01 21:20:54 +02:00
Joachim Schöberl
0b0616eee8 bug fix table archive 2018-04-28 10:34:46 +02:00
Joachim Schöberl
bda771f86f more archive 2018-04-28 03:42:04 +02:00
Joachim Schöberl
f85b51496f persistent archiving of pointers 2018-04-27 22:34:25 +02:00
Joachim Schöberl
633376972f archiving the mesh 2018-04-27 08:36:22 +02: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
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
789305c3bc more parallelism in netgen-topology 2018-01-04 11:48:45 +01:00
Unknown
afdc1ae85a Misc. typos
More typo
2017-12-09 22:21:40 -05:00
Joachim Schöberl
af57dd1b72 improve STL makeatlas: searchtree, templetize searchtree 2017-11-10 13:22:20 +01:00
Christoph Wintersteiger
ccc092d2c5 save check of file ending 2017-10-30 13:43:01 +01: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
a0485eece0 wasn't worth it 2017-08-17 20:58:08 +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
feb74d49c2 use static class variable rather then static function variable 2017-05-31 07:54:47 +02:00
Joachim Schöberl
b4f3107fef default material name 2017-05-13 10:24:12 +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
e6b853e995 hashtables roundup to power of 2, optimize bisect 2017-04-11 09:01:36 +02:00
Joachim Schöberl
701d6a2369 inline GetCD2NamePtr 2017-04-03 18:15:34 +02: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
Alexander Schlüter
60768cf9c5 use tolerance in GetElementOfPoint when using a search tree 2017-01-12 21:09:07 +01:00
Michael Neunteufel
3e9ad94307 point out of quad fix 2017-01-02 11:06:36 +01:00
Joachim Schöberl
d6b16870fa PointIndex::BASE = 0 and STL, PointIndices 2016-12-12 11:47:46 +01:00
Joachim Schöberl
be1e6e160b PointIndex::BASE = 0 working for CSG 2016-12-11 20:17:07 +01:00
Michael Neunteufel
f65651ce0e bug fix PointContainedIn2DElement 2016-11-27 19:25:25 +01:00
Joachim Schöberl
0edd570990 parallel clusters 2016-11-20 19:55:17 +01:00
Christopher Lackner
767b819e5d python cd2 functionality, mesh scaling 2016-10-28 16:49:50 +02:00
Christopher Lackner
a6ea18d07d fix bboundary condition numbering 2016-10-17 17:31:09 +02:00
Christopher Lackner
b8bf194fcf some changes 2016-10-11 14:10:36 +02:00
Christopher Lackner
6134717796 setting bboundary names 2016-10-05 19:48:18 +02:00
Christopher Lackner
a4fe0c1c41 first push 2016-10-04 19:30:57 +02:00
Joachim Schöberl
e009a8b687 started task-manager in netgen (topology) 2016-08-18 00:49:47 +02:00
Joachim Schöberl
7bdde3ef85 orient tets for fem-tp 2016-05-15 19:18:27 +02:00
Joachim Schöberl
a53149131e order elements (for TP) 2016-05-13 12:06:20 +02:00
Joachim Schöberl
0e32696492 Merge branch 'bernd/tet_splitting' into 'master'
Tet splitting

`Refinement - Split to Tets` works now for me with this change.
I'm unsure, if this introduces any other bugs.

See merge request !3
2016-05-10 13:38:49 +02:00
Bernd Schwarzenbacher
00e9160821 Use different approach for fixing tet splitting
Revert changes in GetSurfaceElementsOfFace
2016-05-09 15:33:58 +02:00
Joachim Schöberl
3226d8c2c2 find point in quad surface-element 2016-05-09 12:54:08 +02:00
Bernd Schwarzenbacher
c5e2ce2d37 Change for functioning tet splitting 2016-05-06 14:31:36 +02:00
Joachim Schöberl
055031ce0d store geometry with mesh, if available 2016-05-06 07:30:59 +02:00
Joachim Schöberl
9dc8aa9ffb fix materials in SaveMesh 2016-03-22 13:00:20 +01:00
Joachim Schöberl
346e3db54d parallel update 2016-02-28 05:24:26 +01:00
Joachim Schöberl
b3591f829a python - element has material name 2016-02-26 20:30:40 +01:00
Matthias Hochsteger
1b4f596446 get rid of OpenMP 2016-02-22 18:44:00 +01:00
Joachim Schöberl
d0ba57fd3a non-constant Jacobians for non-simplicials 2016-02-16 07:34:08 +01:00
Joachim Schöberl
c98a55ab11 merge ttk branch to master 2016-02-08 15:53:16 +01:00
Joachim Schöberl
e2edc088da thread-safe point-search 2015-11-27 13:09:15 +01:00
Joachim Schoeberl
b7e5abbbac set/get material names 2015-09-01 19:21:52 +02:00
Joachim Schöberl
52f65188e8 bcnames for python - facedescriptor 2015-09-01 10:50:15 +02:00
Joachim Schoeberl
76de59ccec disable non-save global buffering 2015-08-26 14:00:08 +02:00
Joachim Schoeberl
8c6cf8ded4 mesh has geometry-ptr 2015-08-26 13:56:06 +02:00
Joachim Schoeberl
3f0c07ce15 store 'is_curved' flag in mesh elements 2015-06-12 13:45:42 +02:00
Joachim Schoeberl
82435b59c4 store is_curved in 2D elements 2015-04-27 11:18:22 +02:00
Joachim Schoeberl
69429c6e09 occ meshing, lock in block-allocator 2015-01-20 17:41:16 +00:00
Joachim Schoeberl
8e8e390f2e 2d Delaunay, array-iterators 2014-12-02 13:23:36 +00:00
Joachim Schoeberl
36803ec256 mesh interface, deallocation 2014-10-19 13:53:57 +00:00
Joachim Schoeberl
7804ece54b python export 2014-08-31 12:12:31 +00:00
Joachim Schoeberl
e2cf4ea591 closed modules 2014-08-30 00:15:59 +00:00
Joachim Schoeberl
4de47bdbeb fixed some warnings 2014-08-15 14:46:26 +00:00
Joachim Schoeberl
22222d4cbc second order mesh merge 2014-04-28 07:07:36 +00:00
Joachim Schoeberl
f86bbbc827 meshes in 1D, visualization 2013-05-27 13:01:58 +00:00
Joachim Schoeberl
15a1e07092 thread-save build-searchtree 2013-04-02 20:29:05 +00:00
Joachim Schoeberl
22d054bc89 fix mem-leaks, autoptr geometry 2013-02-26 13:00:06 +00:00
Joachim Schoeberl
81a3f3ff8a bcnames - string as reference 2012-11-09 07:27:26 +00:00
Joachim Schoeberl
c7fb4b676f improvements for STL meshing 2012-10-22 13:13:57 +00:00
Joachim Schoeberl
9f8155d305 tet10 fix 2012-09-21 07:59:29 +00:00
Joachim Schoeberl
6a1e8f7e97 parallel topology + curved elements 2012-08-20 14:10:23 +00:00
Joachim Schoeberl
faad040fb0 parallel command processing 2012-07-05 11:05:33 +00:00
Joachim Schoeberl
fc81f592f5 parallel tuning 2012-06-21 14:19:25 +00:00
Joachim Schoeberl
f51a58296a small mesh load improvement 2012-02-12 02:58:02 +00:00
Joachim Schoeberl
d705856ed0 performance optimization 2012-02-12 02:21:34 +00:00
Joachim Schoeberl
1312e1d1da pointsearch in 2D 2011-08-11 16:13:35 +00:00
Joachim Schoeberl
9c4f4221ec non-global variable mparam 2011-07-25 11:33:19 +00:00
Joachim Schoeberl
a582fc6231 on the way to thread-save meshing 2011-07-25 08:40:23 +00:00
Joachim Schoeberl
a64aa8226e parallelization 2011-06-30 12:49:38 +00:00
Joachim Schoeberl
4b249a738f fix warnings, parallel 2011-05-13 11:41:53 +00:00
Joachim Schoeberl
b1bd297775 don't invert 2011-04-19 16:04:07 +00:00
Joachim Schoeberl
49378768b4 reset surface element linked list when deleting surface elements 2011-01-31 18:22:44 +00:00
Joachim Schoeberl
834937c671 delaunay meshing 2010-09-23 14:07:12 +00:00
Christoph Lehrenfeld
168782c54f eltype-check-bug-fix due to armin 2010-09-02 13:45:05 +00:00
Joachim Schoeberl
0fb00f2197 remove empty lines 2010-04-09 08:01:13 +00:00
Joachim Schoeberl
8902ef38d0 fixes with curved prisms 2010-02-22 19:28:00 +00:00
Joachim Schoeberl
83e8b1ec53 mesh optimization improvements 2009-11-16 08:18:00 +00:00
Joachim Schoeberl
1600d09c53 bug fix for surface-element lists 2009-10-08 15:36:46 +00:00
Joachim Schoeberl
dd50309393 bug fix for surface-element lists 2009-10-08 15:34:57 +00:00
Philippose Rajan
0d1f18749d * Temporarily fixed bug: array "facedecoding" gets corrupted after converting a mesh to second order, subsequently causing a crash on using the function "GetSurfaceElementsOfFace"
-- Corrected by uncommenting a previous approach used to obtain the surface elements of a face, and commenting out the currently used code till further clarification
2009-10-04 15:15:57 +00:00