Commit Graph

2363 Commits

Author SHA1 Message Date
Christopher Lackner
deab89adf8 add missing NGCORE_API and HashArchive & with const value 2020-08-29 16:19:45 +02:00
Christopher Lackner
55971b3dde HashArchive 2020-08-29 15:38:03 +02:00
Christopher Lackner
f45fbfd811 operator== and better archive for BitArray 2020-08-29 15:37:48 +02:00
Joachim Schöberl
020dd4373d DynamicTable: char-alloc if not trivially constructable 2020-08-29 12:36:45 +02:00
Joachim Schöberl
c8b8b3ddd3 modernize paralleltop 2020-08-29 11:05:02 +02:00
Joachim Schöberl
8840c519d3 Min/Max of FlatArray, DynamicTable::ChangeSize 2020-08-29 11:04:47 +02:00
Joachim Schöberl
73846f23ae remove BaseDynamicTable, everything in template class 2020-08-29 09:58:33 +02:00
Joachim Schöberl
f8dd4be8d6 modernize ParallelTopology 2020-08-29 09:36:46 +02:00
Joachim Schöberl
fcee13be59 modernize paralleltop 2020-08-28 21:28:18 +02:00
Matthias Hochsteger
2a7d6bb55e csg2d - fix overlap detection, test 2020-08-28 18:35:35 +02:00
Matthias Hochsteger
956b06f907 csg2d - fix inside tests 2020-08-28 17:26:43 +02:00
Matthias Hochsteger
1c825ebddf csg2d - better check for spline overlapping 2020-08-28 14:27:01 +02:00
Matthias Hochsteger
f559cdef16 csg2d - better IsInside() check for splines 2020-08-28 14:22:44 +02:00
Matthias Hochsteger
ac87e9b62c csg2d - proper +=/-=/*= operator 2020-08-28 14:22:44 +02:00
Joachim Schöberl
122a933965 parallel enumerate after refinement 2020-08-28 08:57:30 +02:00
Joachim Schöberl
9968037361 move semantics to table, PNums to LineSegments 2020-08-28 08:47:33 +02:00
Joachim Schöberl
78d0479993 can convert to mpi4py - communicator 2020-08-25 18:18:45 +02:00
Matthias Hochsteger
7aab695f04 csg2d - skip degenerated solids 2020-08-25 11:26:06 +02:00
Matthias Hochsteger
89c33f5b28 csg2d GenerateMesh in Python, fix arguments for Rectangle/Circle 2020-08-25 10:59:48 +02:00
Matthias Hochsteger
b14178b352 csg2d - no bc in vertex, handle maxh 2020-08-25 10:29:38 +02:00
Matthias Hochsteger
671566ef31 csg2d interface 2020-08-24 11:35:00 +02:00
Joachim Schöberl
5863136285 MaybeTrue/False for xbool 2020-08-23 18:47:49 +02:00
Joachim Schöberl
e680f23bfa fix for non-parallel 2020-08-21 22:38:35 +02:00
Joachim Schöberl
895280a244 littel parallel polishing 2020-08-21 16:29:33 +02:00
Matthias Hochsteger
c4f2146519 use get_if for variant<>
compiles for Mac <10.13, also more readable
2020-08-21 12:09:31 +02:00
Matthias Hochsteger
e2768981f1 implicit conversion from py::tuple to Point<2> 2020-08-20 18:28:03 +02:00
Matthias Hochsteger
ceb57a7c5c CSG2d interface (Solid2d ctor, EdgeInfo) 2020-08-20 18:27:08 +02:00
Matthias Hochsteger
b9487cc07a Rename Polygon2d to Loop 2020-08-20 18:26:25 +02:00
Matthias Hochsteger
334faad054 pybind11 - automatic conversion of python list to Array<> 2020-08-20 18:25:06 +02:00
Matthias Hochsteger
4dcd20a0c7 initialize bounding box 2020-08-20 16:12:34 +02:00
Matthias Hochsteger
28d4b219fa bugfix in csg2d 2020-08-20 15:07:43 +02:00
Joachim Schöberl
155f2d24ed Merge branch 'csg2d' into 'master'
CSG for 2D

See merge request jschoeberl/netgen!332
2020-08-19 17:40:35 +00:00
Joachim Schöberl
2c6e0e2bec global enumeration of points for pickling (as an option) 2020-08-19 19:28:34 +02:00
Matthias Hochsteger
7cbeca147a fix windows build 2020-08-19 16:25:54 +02:00
Matthias Hochsteger
12b2e073ac CSG for 2D 2020-08-19 16:46:32 +02:00
Joachim Schöberl
5e09626466 parallel pickling with mesh-merging 2020-08-19 14:50:11 +02:00
Joachim Schöberl
9e105c48ea mpi-wrapper 2020-08-17 20:28:00 +02:00
Joachim Schöberl
33626c6669 clear solutiondata object on python-exit 2020-08-17 15:55:32 +02:00
Matthias Hochsteger
a0f70b4d73 SplineSeg3 ctor with custom weight 2020-08-13 19:52:55 +02:00
Joachim Schöberl
0fefe5d32c timers in Netgen 2020-08-10 16:44:14 +02:00
Matthias Hochsteger
72447a51d5 Fix paje trace with MPI and TaskManager 2020-08-10 12:20:17 +02:00
Matthias Hochsteger
87c2901e32 Disable paje trace thread counter by default (halves trace file size) 2020-08-07 15:44:21 +02:00
Matthias Hochsteger
b272614a51 export PajeTrace to Python (with context manager api) 2020-08-07 15:43:52 +02:00
Matthias Hochsteger
f9ff1db7c3 let MPI rank 1 write paje trace file (more timers than rank0) 2020-08-07 15:34:21 +02:00
Matthias Hochsteger
acfe9bb606 Merge traces with MPI 2020-08-07 12:59:22 +02:00
Christopher Lackner
620b90fbee read material names from fnf file 2020-08-06 18:06:26 +02:00
Joachim Schöberl
2e39d07cc8 mpi constants for non-mpi 2020-08-05 18:05:31 +02:00
Joachim Schöberl
3c8f1877c9 more mpi calls from ngcore 2020-08-05 01:11:26 +02:00
Joachim Schöberl
3864eb2e35 use MPI_DATAYPE_NULL thx stefanozampini 2020-08-04 23:50:11 +02:00
Joachim Schöberl
42a01b5c21 use MPI_DATAYPE_NULL thx stefanozampini 2020-08-04 23:36:34 +02:00
Matthias Hochsteger
7dbd9e6b54 CGNS write support 2020-08-04 21:06:56 +02:00
Joachim Schöberl
254257d406 timer in MPI wrappes 2020-08-04 16:30:08 +02:00
Matthias Hochsteger
4682e6915c remove FlatArray for C-Array, use ArrayMem 2020-08-04 12:59:03 +02:00
Joachim Schöberl
698192ed72 FlatArray for C-array 2020-08-03 14:45:32 +02:00
Joachim Schöberl
94bed40761 modernize parallelmesh (Array, mpi_wrapper) 2020-08-03 00:44:28 +02:00
Joachim Schöberl
c0909d69c2 no valid MPI-comm in sequential mode 2020-08-02 11:33:11 +02:00
Joachim Schöberl
ba84439227 NgMPI_Communicator by reference, check for valid mpi-comm 2020-08-02 09:25:44 +02:00
Joachim Schöberl
c074e0c752 reduce duplicated mpi-wrapping 2020-07-31 09:57:19 +02:00
Joachim Schöberl
c5795aade8 too much printing in parallel refinement 2020-07-30 12:31:33 +02:00
Matthias Hochsteger
eb75bc31a6 mpi4py support 2020-07-29 17:23:26 +02:00
Matthias Hochsteger
ae268637cf revert pyramid-specific code in optimizations 2020-07-27 18:06:43 +02:00
Matthias Hochsteger
c0b8b1c0cc Parallel SplitImprove2, update test results
Due to prallelization, the order of splits is changed (sort by
    improvement of badness, like in other optimization passes)
2020-07-27 14:26:45 +02:00
Matthias Hochsteger
0a17a3dbce Merge remote-tracking branch 'origin/master' into splitimprove2 2020-07-27 11:55:08 +02:00
Matthias Hochsteger
3305d1101a Store Netgen version in generated mesh files 2020-07-23 20:12:47 +02:00
Matthias Hochsteger
f73159e35a Set version of Netgen globally (for archives), interface to get version 2020-07-23 20:12:47 +02:00
Matthias Hochsteger
dcc0484be0 install netgen_version.hpp, set version in Archive 2020-07-23 16:25:06 +02:00
Matthias Hochsteger
2f88502729 Remove Segment::bcname, fix Mesh::operator=
Remap the 'string* bcname' members in the FaceDescriptor objects in
Mesh::operator= to the new mesh
2020-07-23 16:24:59 +02:00
Matthias Hochsteger
b689d13efe SplitImprove2 - optimize only bad elements, update results 2020-07-23 13:18:14 +02:00
Matthias Hochsteger
3fae0e029f activate SplitImprove2 by default 2020-07-23 12:26:35 +02:00
Matthias Hochsteger
bb46dd6561 Handle pyramids in smoothing 2020-07-23 12:26:22 +02:00
Matthias Hochsteger
e17de17385 SplitImprove2 - further cleanup, handle Pyramids 2020-07-23 12:26:07 +02:00
Joachim Schöberl
ba5e741ad3 adding pybind11/stl to ngcore (needed for BitArray ctor) 2020-07-22 10:15:48 +02:00
Matthias Hochsteger
df97e45bd1 SplitImprove2 - cleanup, new point at min dist of edges 2020-07-20 18:56:36 +02:00
Matthias Hochsteger
abe37bf12a SplitImprove2 - cleanup, badness calculation, add point only when applying optimization 2020-07-20 12:11:29 +02:00
Matthias Hochsteger
a0a189869e SplitImprove2 optimization path 2020-07-17 18:17:09 +02:00
Christopher Lackner
b37a3e6cf6 comment code for non orthogonal boundarylayers
(not working if multiple surfaces come together)
2020-07-17 18:00:38 +02:00
Matthias Hochsteger
ce8ba71f33 Fix SwapImprove 2020-07-15 17:26:39 +00:00
Matthias Hochsteger
e17aa88cad set signal handlers only if NG_BACKTRACE is set 2020-07-15 16:21:51 +02:00
Matthias Hochsteger
7058732e23 Fix CGNS reader for 2d meshes, cleanup 2020-07-15 13:31:37 +02:00
Christopher Lackner
ec3d7c3ec9 boundarylayer fixes 2020-07-14 21:30:26 +02:00
Christopher Lackner
fb13152004 create occ geometry from TopoDS_Shape and export constructor
this only works if OCC bindings are done using pybind11!
2020-07-13 18:54:55 +02:00
Joachim Schöberl
8926d93e07 GetTangentialSurfaceIndices was missing for extrusion 2020-07-05 11:15:56 +02:00
Christopher Lackner
fdd718739f further work on boundarylayers
better calculation of growthvector, fix bug with addsegment
2020-07-03 19:51:06 +02:00
Matthias Hochsteger
7da5cfd3de translate to NGSolve node type in ReadCGNSFile 2020-07-02 18:26:16 +02:00
Christopher Lackner
88674cd99b add some new quad types for boundarylayer, fix problem
with multiple boundaries at 1 edge
2020-07-01 19:40:44 +02:00
Christopher Lackner
8046b19b60 fix facets for 3d bbnd elements 2020-06-25 18:39:29 +02:00
Joachim Schöberl
1d96e50432 Merge branch 'surface_geom' into 'master'
Surface geom

See merge request jschoeberl/netgen!324
2020-06-24 06:41:55 +00:00
Michael Neunteufel
1a619841b2 Surface geom 2020-06-24 06:41:55 +00:00
Christopher Lackner
177ecc7459 Allow curving of mesh if boundarylayer is flat.
If surfnr is larger than nr of surfaces then do linear interpolation
for PointInBetween and so on.
Some fixes in boundarylayer so that surface numbers are correct.
2020-06-24 06:41:06 +00:00
Christopher Lackner
c3441344fb set material in tensorproduct mesh in 2d as well 2020-06-23 18:52:29 +02:00
Joachim Schöberl
3b5c346e63 proper terms 2020-06-17 19:11:17 +02:00
Christopher Lackner
ac45a5f736 add more information to illegal bc number exception 2020-06-16 13:54:13 +02:00
Christopher Lackner
6a834f13ac fix boundary names for boundarylayer 2020-06-16 13:53:36 +02:00
Matthias Hochsteger
09323b2ac4 Fix AnalyzeEdge() 2020-06-12 14:28:56 +02:00
Matthias Hochsteger
d08e2daa06 Do edge swapping for faces individually with tensor product meshes
If the mesh contains quads, the edge swapping algorithm switches to
generic improve, which introduces quads everywhere. This is not intended
if one domain contains a tensor product mesh.
Thus, call the optimizer for each face if mesh contains quads but mp.quad
is not set.
2020-06-08 10:42:26 +02:00
Matthias Hochsteger
d1c7a16d63 Do linear interpolation of corresponding edge points in SplineGeometry tensor mesh generation
better results for curved domains
2020-06-08 10:41:24 +02:00
Matthias Hochsteger
5bea3bb612 Implement and export SplineGeometry2d::SetDomainTensorMeshing 2020-06-08 10:39:55 +02:00
Matthias Hochsteger
9b28a2df02 OCC - HasErrors() available from v7.2 2020-06-03 11:50:33 +02:00
Joachim Schöberl
1d97367e30 check OCC-Version of HasErrors 2020-06-02 08:51:51 +02:00
Joachim Schöberl
dc15e50956 Added glueing to OCC interface, geom.Glue() from Python 2020-05-31 21:58:21 +02:00
Joachim Schöberl
ad525cbfb9 fix warning 2020-05-26 20:58:24 +02:00
Christopher Lackner
34590f1b9a support already meshed edges/faces in occ mesher 2020-05-26 11:23:33 +02:00
Joachim Schöberl
897cf6f848 output of xbool 2020-05-22 08:16:05 +02:00
Matthias Hochsteger
267e8b33fb cmake - use git to generate version string 2020-05-18 15:55:40 +02:00
Christopher Lackner
97ba90ee40 DLL_HEADER for whole OCCGeometry 2020-05-17 20:24:22 +02:00
Joachim Schöberl
319b6dc600 Merge branch 'boundarylayer' into 'master'
modernize and improve GenerateBoundaryLayer

See merge request jschoeberl/netgen!318
2020-05-13 18:01:34 +00:00
Christopher Lackner
9ffb22c37f fix archive of bitarray 2020-05-07 10:52:09 +02:00
Christopher Lackner
45a4b2c913 pickle bitarrays 2020-05-07 10:03:00 +02:00
Christopher Lackner
97baba04a0 fix growthvector direction 2020-04-25 11:15:36 +02:00
Christopher Lackner
d752ada2bd improve functionality of boundarylayer 2020-04-23 15:44:32 +02:00
Christopher Lackner
7fe4ca9c4f Merge branch 'master' into boundarylayer 2020-04-20 10:38:24 +02:00
Christopher Lackner
9af476c353 template shouldn't have NGCORE_API 2020-04-20 10:26:17 +02:00
Christopher Lackner
27baa178d2 fix new clang warning and add helper function 2020-04-20 10:13:04 +02:00
Christopher Lackner
16ae2df980 std::get for variant not available on mac os < 10.14 2020-04-20 10:09:26 +02:00
Christopher Lackner
58e6e5dc18 modernize and improve GenerateBoundaryLayer 2020-04-19 20:00:06 +02:00
Christopher Lackner
83a48af36a add safety check for FindEdges 2020-04-19 19:26:44 +02:00
Christopher Lackner
b46ec8dc7b fix printing of 1 based arrays 2020-04-18 13:40:19 +02:00
Joachim Schöberl
af25893a77 Merge branch 'mesh_update' into 'master'
export update method for mesh

See merge request jschoeberl/netgen!317
2020-04-07 17:42:40 +00:00
Christopher Lackner
d74061dd23 python str method for arrays 2020-04-06 12:43:42 +02:00
Michael
cb015c95d0 export update method for mesh 2020-03-30 20:44:39 +02:00
Matthias Hochsteger
a52ccd7ce5 Fix build with USE_NUMA=ON 2020-03-25 10:40:12 +01:00
Matthias Hochsteger
b1d65912ec cgns: flip normals of 2d elements 2020-03-19 20:50:32 +01:00
Christopher Lackner
1f78f900dd mesh identify periodic for non tet meshes 2020-03-19 18:12:55 +01:00
Matthias Hochsteger
bff0e67576 CGNS reader: identify equal points in different zones 2020-03-17 17:46:29 +01:00
Christopher Lackner
ff60ca3f55 fix identify periodic 2020-03-17 15:32:42 +01:00
Christopher Lackner
b8d313f056 identify periodic boundaries 2020-03-15 18:02:50 +01:00
Matthias Hochsteger
89cb1e07ff CGNS reader: Fix boundary/material names for MIXED elements 2020-03-12 18:42:58 +01:00
Matthias Hochsteger
a88432cb7f Merge branch 'cgns' into 'master'
CGNS format read support

See merge request jschoeberl/netgen!315
2020-03-11 21:07:08 +00:00
Joachim Schöberl
48e4865fee copy BitArray 2020-03-11 21:34:27 +01:00
Matthias Hochsteger
2615b0911e Fix CGNS code for version < 3.4
Install libhdf5 on ubuntu test (cgns depends on it)
2020-03-11 17:43:36 +01:00
Matthias Hochsteger
603141cf1a Fix CGNS support on Windows 2020-03-11 14:53:08 +00:00
Matthias Hochsteger
db5ad09b79 Initial CGNS format read support 2020-03-11 13:39:40 +01:00
Lukas
672ce3f3f2 Interface can now give curve order of mesh 2020-03-06 10:17:09 +01:00
Matthias Hochsteger
1d62ca31ac DLL_HEADER for BlockAllocator (used in BoxTree) 2020-03-03 11:10:09 +00:00
Matthias Hochsteger
63e414ff0d Add missing header in occgeom.cpp 2020-03-02 17:03:50 +01:00
Joachim Schöberl
c6c91bb348 set edgenames in mesh 2020-02-29 13:56:43 +01:00
Joachim Schöberl
70968e59e8 optimal order reading of names 2020-02-28 20:54:22 +01:00
Christopher Lackner
7d5bd32b36 remove new rule again (old was sufficient) 2020-02-17 17:34:38 +01:00
Christopher Lackner
e007f6310e add new rule for large pyramids if no close ones are found.
Also allow to connect with lower quality class already in pyramid2rls
2020-02-17 16:52:33 +01:00
Matthias Hochsteger
df0b19275b Update rules to match cpp files, regenerate cpp files 2020-02-17 15:21:54 +01:00
Matthias Hochsteger
34ac3b200d HPRefinement: curve new elements only if coarse el was curved 2020-02-11 16:04:13 +01:00
Matthias Hochsteger
dff550a48c Curve new elements in HPRefinement
Use correct check for curvature of TRIGs in VSSolution
2020-02-11 14:42:16 +01:00
Joachim Schöberl
bac288ab56 remove double-click test-output 2020-01-29 18:19:19 +01:00
Matthias Hochsteger
2620f90f32 Redraw(blocking=True) always issues a redraw 2020-01-27 17:05:21 +01:00
Matthias Hochsteger
ce90bd9e83 [cmake] Simplify compile flag handling on Windows
Add options/define flags to ngcore, so they are automatically passed on
to dependencies
2020-01-16 16:38:06 -08:00
Joachim Schöberl
d9a322ed65 Merge branch 'store_ellipsoid_in_mesh' into 'master'
Store Ellipsoid csg surface in mesh files

See merge request jschoeberl/netgen!309
2020-01-15 14:32:47 +00:00
Matthias Hochsteger
4810b4f1b2 Store Ellipsoid csg surface in mesh files 2020-01-15 15:13:08 +01:00
Joachim Schöberl
0209472ef6 csg.AddPoint with names 2020-01-15 11:56:23 +01:00
Joachim Schöberl
3ece315bd0 circumventing compiler bug ? 2020-01-13 21:19:09 +01:00
Joachim Schöberl
d53f28c89b named edges in CSG geometry 2020-01-13 16:41:18 +01:00
Christopher Lackner
30b10c1aaa remove debug cout 2020-01-13 11:17:00 +01:00
Matthias Hochsteger
e26f0f38f4 Handle triangles correctly in BuildEdgeList() 2020-01-10 17:58:37 +01:00
Joachim Schöberl
77d0fbfcd5 compress after 2d optimization 2020-01-08 23:27:59 +01:00
Joachim Schöberl
1aed53427f Merge branch 'snapshot' into 'master'
Snapshot

See merge request jschoeberl/netgen!306
2019-12-15 19:10:31 +00:00
Christopher Lackner
3fc52396b0 Merge branch 'fix_nopython' into 'master'
Fix non-Python builds

See merge request jschoeberl/netgen!307
2019-12-14 19:56:49 +00:00
Matthias Hochsteger
2d97eeaa77 Fix Windows debug build 2019-12-13 15:40:12 -08:00
Matthias Hochsteger
72226e8673 Fix non-Python builds 2019-12-13 11:20:52 +01:00
Matthias Hochsteger
c8901ba46b cleanup in Snapshot() 2019-12-13 10:20:19 +01:00
Matthias Hochsteger
a06189ac4e Redraw after geom2d::Draw() 2019-12-10 17:57:46 +01:00
Christopher Lackner
79b1d22185 some more python Vec and Pnt arithmetic 2019-12-10 14:04:53 +01:00
Matthias Hochsteger
d6095e9364 Move global visual scene from ngpkg.cpp to mvdraw.cpp
... so it is available in Snapshot()
also rename the global variables:
vs -> visual_scene
vscross -> visual_scene_cross
2019-12-10 12:21:29 +01:00
Matthias Hochsteger
245da0ee87 Move Redraw() function from NGSolve to Netgen
- used in Snapshot
2019-12-10 12:21:29 +01:00
Matthias Hochsteger
64b1331c23 Fix build errors on Macos
- Include opengl3 headers
- Remove unneeded Opengl4.5 function call
2019-12-10 12:21:29 +01:00
Matthias Hochsteger
52b3e807a5 New Snapshot function (custom resolution) 2019-12-10 12:21:29 +01:00
Joachim Schöberl
a103896079 printing flags 2019-12-09 16:20:42 +01:00
Joachim Schöberl
64171d203b fix copy ctor HPRefElement 2019-12-06 16:05:08 +01:00
Christopher Lackner
ef501166e6 fix warning about multiple definition of dll_header 2019-12-06 11:51:12 +01:00
Joachim Schöberl
da4053adfa Draw 2D geometry 2019-12-05 14:52:14 +01:00
Joachim Schöberl
e5ead2065b get rid of 10000 segments limit in hp-refinement 2019-12-04 17:33:16 +01:00
Matthias Hochsteger
7f4b96fe11 Fix ctor with LocalHeap in ClosedHashTable
Set mask, round up size to next power of 2
2019-12-02 17:05:50 +01:00
Joachim Schöberl
4658e34f05 Revert "api"
This reverts commit 3207ab1d99
2019-11-29 15:26:20 +00:00
Joachim Schöberl
3207ab1d99 api 2019-11-29 15:02:37 +01:00
Matthias Hochsteger
2eff09cc41 Set geometry in Mesh assignment operator
Sets the geometry in coarsemesh in HPRefinement()
Fixes #22
2019-11-29 12:35:55 +01:00
Matthias Hochsteger
9495d1feae Ignore warning C4910 on Windows
warning C4910: '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation
2019-11-28 15:49:57 +01:00
Matthias Hochsteger
a0921a5e7f Fix Vec<> comparison operator
- Iterate over size of Vec<> (thx Joachim)
- Declare it const (otherwise pybind compares the pointers to the data
    arrays instead)
2019-11-28 11:05:17 +01:00
Matthias Hochsteger
05e6456ec2 Vec3d to Vec<3>, comparison operator for Vec<> 2019-11-27 14:47:24 +01:00
Joachim Schöberl
2b683f70d5 Merge branch 'throw_on_meshing_fail' into 'master'
throw on meshing failure

See merge request jschoeberl/netgen!299
2019-11-26 19:27:30 +00:00
Matthias Hochsteger
f3d9d3ad67 [cmake] Don't link python libraries in unix-conda environment
Conda links python libs statically to python executable
2019-11-26 19:26:18 +00:00
Matthias Hochsteger
9ccb140ffb [python] add color property to FaceDescriptor 2019-11-26 17:50:06 +01:00
Christopher Lackner
303aebc27e throw on meshing failure 2019-11-26 17:08:21 +01:00
Christopher Lackner
de1932227b exception constructor outside of ifdef GNUC 2019-11-25 16:45:12 +01:00
Joachim Schöberl
648794b0bb Exception ctor in cpp to reduce codesize 2019-11-25 07:46:35 +01:00
Christopher Lackner
e84e4f155c fix parsing numlist flag if objects are integers 2019-11-21 17:46:39 +01:00
Matthias Hochsteger
cf84d78fd4 Read solid names of STEP geometries 2019-11-20 15:46:52 +01:00
Matthias Hochsteger
8940bf7c2c Only collect backtrace if NG_BACKTRACE is set 2019-11-20 14:30:23 +01:00
Christopher Lackner
f54c47bac6 if tangent is not defined and not checked this leads to segfault 2019-11-19 10:00:05 +01:00
Christopher Lackner
6303b9d926 some default implementations for basegeometry 2019-11-18 11:14:02 +01:00
Matthias Hochsteger
90fc783e55 Fix visibility warning 2019-11-13 16:07:36 +01:00
Christopher Lackner
a3ae9cc6f9 include optional 2019-11-05 16:19:49 +01:00
Christopher Lackner
b99e37999f fixes for mac and windows 2019-11-05 15:19:54 +01:00
Christopher Lackner
073e215bb6 add closeedge meshsize to base geometry (not used)
closedgefac moved to meshingparameters for this
2019-11-04 19:34:46 +01:00
Christopher Lackner
1b1c4700ad geo GetNormal and ProjectPointEdge with geoinfo pointer 2019-11-04 11:27:01 +01:00
Christopher Lackner
c1ede2a89f Merge branch 'master' into cleanup_geometry 2019-11-02 19:39:00 +01:00
Matthias Hochsteger
262c656bcb Fix overflow in backtrace 2019-10-31 18:40:46 +01:00
Christopher Lackner
6c012675aa project point without geominfo returns new geominfo 2019-10-31 17:08:29 +01:00
Christopher Lackner
1e3ed047db progress for analyse geometry 2019-10-31 15:25:47 +01:00
Christopher Lackner
249d785084 progress bars for find edges, mesh surface,... 2019-10-31 15:17:28 +01:00
Christopher Lackner
fbf6d92895 clean up geometry interface, fix if number of subdivided edges was not correct 2019-10-31 13:34:40 +01:00
Matthias Hochsteger
9fdd28e3b8 Compress mesh in SwapImprove2 2019-10-30 16:09:04 +01:00
Matthias Hochsteger
94d0a5a585 [cmake] Set interface include dir for ngcore 2019-10-30 13:56:49 +01:00
Matthias Hochsteger
17b6c83499 Remove debug output 2019-10-30 09:09:57 +01:00
Joachim Schöberl
608a813295 Merge branch 'rework_splitimprove' into 'master'
Rework on 3D SplitImprove

See merge request jschoeberl/netgen!291
2019-10-29 18:57:55 +00:00
Matthias Hochsteger
3acadc023f Rework on 3D SplitImprove
- Try (expensive) split operation only if badness > 100 (of any adjacent
        tet) and badness > 0.1 * badness_max
- Use FindInnerPoint before BFGS to ensure valid starting point (similar
        as in ImproveMesh() )
- Skip valid tets if goal==OPT_LEGAL (as in sequential version)
2019-10-29 17:58:37 +01:00
Matthias Hochsteger
69a420aacb Don't include python headers in non-python builds 2019-10-29 16:11:03 +01:00
Christopher Lackner
aa580e4025 add timer and little cleanup in not yet used findedges 2019-10-29 11:37:27 +01:00
Christopher Lackner
a76d407979 implement functionality to restrict meshsize in base class
not yet used in any derived geometry
2019-10-28 19:58:35 +01:00
Christopher Lackner
b5936543e9 Merge branch 'master' into refactor_geo_meshing 2019-10-28 18:33:48 +01:00
Christopher Lackner
e221c550ac implement find edges in base geometry 2019-10-28 17:14:55 +01:00
Matthias Hochsteger
66618fa08a Fix mesh curving 2019-10-28 16:26:11 +01:00
Joachim Schöberl
656c8fa29d Merge branch 'installers_with_occt_740' into 'master'
Build and test with OCCT 7.4.0 on Windows and MacOS

See merge request jschoeberl/netgen!288
2019-10-28 14:57:44 +00:00
Joachim Schöberl
576bcf907a Merge branch 'add_missing_delete_operators_macos' into 'master'
Add missing delete operators on MacOS

See merge request jschoeberl/netgen!287
2019-10-28 14:57:33 +00:00
Joachim Schöberl
7bc20691dc Merge branch 'refactor_geo_meshing' into 'master'
Refactor geo meshing

See merge request jschoeberl/netgen!286
2019-10-28 14:57:24 +00:00
Matthias Hochsteger
2a51bf76c1 [testing] Add results for OCC 7.4, skip tests on Ubuntu (with OCC 7.3) 2019-10-28 15:11:42 +01:00
Christopher Lackner
b0db24fa83 implement meshsurface in basegeometry 2019-10-28 14:41:31 +01:00
Matthias Hochsteger
2a68748117 Add missing delete operators on MacOS 2019-10-28 13:57:21 +01:00
Christopher Lackner
5b45c7a972 implement meshing2 functionality for 3d geometries 2019-10-28 13:44:51 +01:00
Christopher Lackner
8f779b815a Merge branch 'master' into refactor_geo_meshing 2019-10-28 13:12:38 +01:00
Joachim Schöberl
d0864b9901 Apple-clang seems to support now the standard thread_local variables 2019-10-28 12:18:23 +01:00
Matthias Hochsteger
63aab9076c parallel SplitImprove 2019-10-28 09:38:53 +01:00
Matthias Hochsteger
ab024c2e6c Sort edges by improvement in SwapImprove2 2019-10-24 18:04:56 +02:00
Matthias Hochsteger
6fb8f90a73 Sort edges by improvement in SwapImprove 2019-10-24 17:40:20 +02:00
Christopher Lackner
54b36c6a40 add virtual method to restrict localh to geometry 2019-10-24 17:34:53 +02:00
Christopher Lackner
36e56e5d6c move some stuff to base geometry 2019-10-24 13:17:00 +02:00
Christopher Lackner
c361d1712d little cleanup in adfront2 2019-10-23 14:44:07 +02:00
Matthias Hochsteger
eaf2bee9e6 Throw Exception if ProjectPointGI is not implemented 2019-10-23 11:26:45 +02:00
Matthias Hochsteger
22a894b8cf Set OCC geometry in GenerateMesh() 2019-10-23 11:26:23 +02:00
Matthias Hochsteger
37198d0cee Recover correct point type in smoothing2d 2019-10-23 11:08:30 +02:00
Matthias Hochsteger
082908a5ec ProjectPointGI for CSG and 2D geometries 2019-10-23 11:08:11 +02:00
Christopher Lackner
2fd255baa7 only use cone (or userdefined points) 2019-10-21 17:20:48 +02:00
Christopher Lackner
ac5f901cef do not get intersecting points, they are added from intersecting lines anyway 2019-10-21 17:03:01 +02:00
Joachim Schöberl
9d0902fb57 Merge branch 'hashvalue_int3' into 'master'
Add a HashValue<INT<3>> for ParallelHashTable

See merge request jschoeberl/netgen!278
2019-10-21 13:46:12 +00:00
Matthias Hochsteger
586f8120ea some Timers in LoadOCC, don't read edge names 2019-10-21 13:38:09 +02:00
Joachim Schöberl
124ee905b2 Merge branch 'test_refactoring_meshing_design' into 'master'
Refactoring of surface meshing classes

See merge request jschoeberl/netgen!279
2019-10-21 08:21:12 +00:00
Bernd Schwarzenbacher
6d34f01d95 Add a HashValue<INT<3>> for ParallelHashTable 2019-10-21 00:12:29 +02:00
Matthias Hochsteger
495a6eddf7 [cmake] Link AppKit to avoid undefined references if OCC is statically linked on MacOS 2019-10-18 16:39:28 +02:00
Matthias Hochsteger
8659e5a3ee some thread-safe STLGeometry projection functions 2019-10-18 13:40:53 +02:00
Matthias Hochsteger
17dfd45609 Merge remote-tracking branch 'origin/master' into test_refactoring_meshing_design 2019-10-18 11:53:05 +02:00
Joachim Schöberl
6b99cf3c21 Merge branch 'delaunay_tree_with_double' into 'master'
Use new delaunay tree with double

See merge request jschoeberl/netgen!277
2019-10-15 08:10:19 +00:00
Matthias Hochsteger
d4d57040f6 Use new delaunay tree with double 2019-10-14 18:26:08 +02:00
Joachim Schöberl
4f5164c73e Merge branch 'parallel_combineimprove2' into 'master'
Parallel 2d CombineImprove()

See merge request jschoeberl/netgen!276
2019-10-14 16:13:31 +00:00
Matthias Hochsteger
c2e658274a Avoid recursive call of signal handler 2019-10-14 18:01:11 +02:00
Matthias Hochsteger
0f26e41f4d 4 Tasks per thread (better load balancing) 2019-10-14 16:33:16 +02:00
Matthias Hochsteger
6ca6a5e791 CombineImprove() 2D: optimize all faces at once 2019-10-14 16:21:24 +02:00
Matthias Hochsteger
0f095281d9 Parallel 2d CombineImprove() (also sort by improvement) 2019-10-14 16:02:11 +02:00
Matthias Hochsteger
5eba73f726 Separate function CombineImproveEdge() 2019-10-14 15:37:36 +02:00
Matthias Hochsteger
294fbb0e6f Loop over edges in CombineImprove() 2019-10-14 14:04:10 +02:00
Matthias Hochsteger
9fd4970614 ParallelFor loops in setup of CombineImprove() 2019-10-14 13:51:25 +02:00
Matthias Hochsteger
19c86a9f3d Move BuildEdgeList to improve2.hpp 2019-10-14 13:50:56 +02:00
Matthias Hochsteger
59c355dbed New Table for elementsonnode 2019-10-14 11:49:23 +02:00
Matthias Hochsteger
c1d42ff1e6 Small cleanup 2019-10-14 11:01:16 +02:00
Matthias Hochsteger
c9e764a32f Catch exceptions in Demangle() 2019-10-14 10:56:27 +02:00
Joachim Schöberl
2bd9acdd9e delete user-vis 2019-10-11 22:23:25 +02:00
Matthias Hochsteger
5fffc28de9 Delete tempels Array during SwapImprove (saves memory) 2019-10-11 15:35:55 +02:00
Matthias Hochsteger
77e536746e Comment out DelaunayTree 2019-10-11 13:47:39 +02:00
Matthias Hochsteger
77d91d144b Special search tree for Delaunay (commented out)
- float instead of double
- Array for leaves instead of HashTable (the values of the tree are
        contiguous integer numbers)
2019-10-11 13:35:52 +02:00
Matthias Hochsteger
268f2466f0 Parallel 2d MeshImprove 2019-10-10 15:44:57 +02:00
Matthias Hochsteger
9f0edf1741 Use new timers 2019-10-10 15:34:41 +02:00
Joachim Schöberl
b65d63cf11 static array 2019-10-10 07:38:32 +02:00
Joachim Schöberl
ca25d6838b use NextUV 2019-10-10 07:38:32 +02:00
Matthias Hochsteger
e6953dc4cb Remove unnecessary call to mesh.CalcSurfacesOfNode() 2019-10-09 10:32:41 +02:00
Matthias Hochsteger
fffe445d53 Merge remote-tracking branch 'origin/master' into parallel_edgeswapping 2019-10-09 10:25:31 +02:00
Matthias Hochsteger
6e5d806d92 Use ParallelFor instead of ParallelForRange
better readability and no performance difference (if using
        NETGEN_LAMBDA_INLINE)
2019-10-09 10:02:02 +02:00
Matthias Hochsteger
95df0ea73e Explicit capture in lambda (due to MSVC compile problems) 2019-10-09 09:29:53 +02:00
Matthias Hochsteger
fe78d9d7b4 Use AsAtomic from ngcore 2019-10-08 20:39:29 +02:00
Matthias Hochsteger
18bdd9df93 Build neighbors list in parallel
Check in new results (part1.stl does not mesh with very_coarse anymore)
2019-10-08 19:26:43 +02:00
Matthias Hochsteger
64a685c2ea CreateSurface2ElementTable for individual faces 2019-10-08 18:35:48 +02:00
Matthias Hochsteger
a651a2d97e EdgeSwapping() - some cleanup and parallelization of table building 2019-10-08 18:35:27 +02:00
Matthias Hochsteger
288bd2c3d8 EdgeSwapping() - all faces at once 2019-10-08 18:12:10 +02:00
Joachim Schöberl
a529dbab56 Merge branch 'reduce_python_output' into 'master'
reduce message and log level in python

See merge request jschoeberl/netgen!273
2019-10-08 15:38:19 +00:00
Matthias Hochsteger
f24a749fb2 Parallel MeshOptimize2d::EdgeSwapping() (individual faces) 2019-10-08 17:29:38 +02:00
Matthias Hochsteger
4d218fa042 Restructure MeshOptimize2d::EdgeSwapping() 2019-10-08 17:08:17 +02:00
Christopher Lackner
b3fb12e962 reduce message and log level in python 2019-10-08 16:51:32 +02:00
Christopher Lackner
27bb2c8e0e unify surface optimization strategy 2019-10-08 16:46:16 +02:00
Christopher Lackner
ee7360ad19 disable check overlap for occ meshsurface 2019-10-08 15:48:08 +02:00
Matthias Hochsteger
865aca0ba0 Implement MeshOptimizeSTLSurface::ProjectPointGI 2019-10-08 14:40:40 +02:00
Matthias Hochsteger
fea75d6ff5 Remove MeshOptimize2d::SelectSurfaceOfPoint() 2019-10-08 12:44:00 +02:00
Matthias Hochsteger
893df3a79f Automatically select correct chart in MeshOptimizeSTLSurface::GetNormalVector 2019-10-08 12:42:06 +02:00
Christopher Lackner
ed087848ef this check is too hard sometimes and prevents some stls from meshing
bone.stl fails on moderate because of this
2019-10-08 12:41:26 +02:00
Matthias Hochsteger
ed5ea4408f Revert "Automatically select correct chart in MeshOptimizeSTLSurface::GetNormalVector"
This reverts commit d4b376024a.
2019-10-08 12:35:58 +02:00
Matthias Hochsteger
d4b376024a Automatically select correct chart in MeshOptimizeSTLSurface::GetNormalVector 2019-10-08 12:34:15 +02:00
Christopher Lackner
e784abb8f7 Merge branch 'master' into test_refactoring_meshing_design 2019-10-08 12:31:24 +02:00
Joachim Schöberl
62e3e790d8 switch OCC meshing to physical space, and optimize FromPlane projection using uv-geominfo 2019-10-07 23:45:39 +02:00
Christopher Lackner
94c17c2f46 modernize code to use handle 2019-10-07 15:17:03 +02:00
Christopher Lackner
c309c9846f store refinement 2019-10-07 15:17:03 +02:00
Christopher Lackner
fa3ae333ce delete trailing whitespaces in new commits 2019-10-07 15:17:03 +02:00
Matthias Hochsteger
4d98a6eb8c STLGeometry::GetNormal only valid with PointGeomInfo 2019-10-07 15:17:03 +02:00
Matthias Hochsteger
c24e00f6d4 Link stl 2019-10-07 15:17:03 +02:00
Matthias Hochsteger
562800babc Clean up STLGeometry 2019-10-07 15:17:03 +02:00
Christopher Lackner
05881c0eb5 refactor a lot of the old code, stl still needs to be done 2019-10-07 15:17:03 +02:00
Christopher Lackner
43cc5e68b1 occ use optimize surface functionality from basegeom 2019-10-07 15:17:03 +02:00
Christopher Lackner
bee097b153 start unify meshing with occ meshing 2019-10-07 15:17:03 +02:00
Christopher Lackner
b0f13a1f20 fix parsing of stl parameters from python 2019-10-07 12:56:12 +02:00
Joachim Schöberl
de06f21bde adding Mesh.AddRegion 2019-10-05 23:02:32 +02:00
Matthias Hochsteger
dbe0aaa1bc Sort table after parallel creation 2019-10-04 15:33:24 +02:00
Joachim Schöberl
48aa301558 Merge branch 'optimize_occ_createlocalh' into 'master'
some optimizations for CalcLocalH in occ mesher

See merge request jschoeberl/netgen!267
2019-10-04 13:05:43 +00:00
Christopher Lackner
01e059ece4 some optimizations for CalcLocalH in occ mesher 2019-10-04 14:55:36 +02:00
Joachim Schöberl
34ef87a706 Merge branch 'master' of geras.asc.tuwien.ac.at:jschoeberl/netgen 2019-10-04 13:49:32 +02:00
Matthias Hochsteger
b4e7816ad6 Merge branch 'fix_opencascade_7_4' into 'master'
fix for opencascade 7.4.0

See merge request jschoeberl/netgen!266
2019-10-04 11:16:29 +00:00
Christopher Lackner
18070c9f03 fix for opencascade 7.4.0 2019-10-04 13:09:18 +02:00
Matthias Hochsteger
04de18d0b4 Check badness quality in tests 2019-10-04 10:25:14 +00:00
Joachim Schöberl
0d9bb4bd97 parallel table build 2019-10-03 20:24:21 +02:00
Joachim Schöberl
0dd913fc20 parallel CheckOverlapping 2019-10-02 23:39:25 +02:00
Joachim Schöberl
f0eae10a24 throw exception on 1D mesh bisection 2019-10-02 22:07:28 +02:00
Matthias Hochsteger
7e3b292bb8 Print inlined functions in stack trace 2019-10-02 15:38:17 +02:00
Matthias Hochsteger
85d7f5e628 Use BoxTree::GetFirstIntersecting in STLChart::ProjectNormal 2019-10-02 11:51:09 +02:00
Christopher Lackner
90c6f0256d curvaturesafety was removed in cleanup commit 2019-10-02 11:16:44 +02:00
Joachim Schöberl
ec05bac903 Merge branch 'cleanup' into 'master'
remove not used file

See merge request jschoeberl/netgen!263
2019-10-01 17:03:27 +00:00
Christopher Lackner
09dbdd7a53 remove not used file 2019-10-01 17:30:52 +02:00
Joachim Schöberl
4c099a7ed3 Merge branch 'print_stack_trace' into 'master'
Print stack trace (only Linux/MacOS)

See merge request jschoeberl/netgen!262
2019-10-01 15:11:16 +00:00
Matthias Hochsteger
9f7b56fd1f Register signal handlers to print stack trace 2019-10-01 16:30:41 +02:00
Matthias Hochsteger
b7c8f76765 Print stack trace on RangeException 2019-10-01 15:30:33 +02:00
Matthias Hochsteger
a3ccb6432c Use Mesh::CreatePoint2ElementTable() in SplitImprove() 2019-10-01 15:15:46 +02:00
Matthias Hochsteger
f42ee7b02d Use Mesh::CreatePoint2ElementTable() in optimizations 2019-10-01 15:12:37 +02:00
Matthias Hochsteger
e99db57b03 Use rdtsc in Timers 2019-10-01 13:18:24 +02:00
Joachim Schöberl
78094016bf Merge branch 'calclocalh_use_point' into 'master'
change CalcLocalH to use Point<D> instead of PointDd

See merge request jschoeberl/netgen!258
2019-10-01 10:59:43 +00:00
Joachim Schöberl
a4c7ea24b5 Merge branch 'use_new_btree' into 'master'
Use new BoxTree, activate search tree in STLBoundary

See merge request jschoeberl/netgen!259
2019-10-01 10:54:42 +00:00
Matthias Hochsteger
8bfccdf1df Use BoxTree::GetFirstIntersecting 2019-10-01 12:34:23 +02:00
Matthias Hochsteger
7ced41e56f Use searchtree in STLBoundary 2019-10-01 12:19:22 +02:00
Christopher Lackner
9797c23351 change CalcLocalH to use Point<D> instead of PointDd 2019-10-01 11:59:17 +02:00
Matthias Hochsteger
ef64a5e7eb Replace BoxTree with BTree 2019-10-01 11:22:30 +02:00
Christopher Lackner
b29e9ac3a1 fix nogui build 2019-10-01 10:09:04 +02:00
Joachim Schöberl
3e01cac707 remove small timers 2019-09-30 19:39:22 +02:00
Joachim Schöberl
fe95433a87 missing timer closing 2019-09-30 19:26:50 +02:00
Matthias Hochsteger
871f70790f Dont throw exception if illegal_trigs table is not built 2019-09-30 18:55:01 +02:00
Christopher Lackner
bef1172b44 only iterate over outer chart if inner chart searchtree 2019-09-30 18:50:43 +02:00
Matthias Hochsteger
94671a176a Use STLTrigId instead of int in SearchTree 2019-09-30 18:43:53 +02:00
Joachim Schöberl
693bc66d49 use STL-searchtree 2019-09-30 18:21:01 +02:00
Joachim Schöberl
dd70e94143 searchtree in STLCharts 2019-09-30 18:14:46 +02:00
Joachim Schöberl
af7d6fea48 Merge branch 'optimize_occ_surf_mesh' into 'master'
only do optimization for occ surface mesh

See merge request jschoeberl/netgen!256
2019-09-30 13:30:55 +00:00
Joachim Schöberl
e4017b84e9 Merge branch 'pointnd_to_point' into 'master'
Pointnd to point

See merge request jschoeberl/netgen!255
2019-09-30 13:30:01 +00:00
Joachim Schöberl
b76b82b293 Merge branch 'split_improve_2d' into 'master'
SplitImprove for triangles

See merge request jschoeberl/netgen!251
2019-09-30 13:29:50 +00:00
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
Matthias Hochsteger
b3c64a0607 Handle CR and other space characters correctly when loading STL files 2019-09-30 13:08:39 +02:00
Christopher Lackner
5eb2ab470e only do optimization for occ surface mesh 2019-09-30 12:02:08 +02:00
Matthias Hochsteger
7becf20ebd Ignore leading whitespaces in STL files
Treat STL files as binary if non-printable characters appear in first
80 bytes
2019-09-30 11:54:04 +02:00
Joachim Schöberl
b867caf01c parallel main loop in FindOpenElements 2019-09-30 11:05:13 +02:00
Christopher Lackner
6bfbaa1179 some more PointNd to Point<N> 2019-09-30 10:50:01 +02:00
Christopher Lackner
e956ca0fdc modernize and change to Point<3> 2019-09-30 10:38:46 +02:00
Christopher Lackner
60223b2a86 more PointNd to Point<N> 2019-09-30 10:36:42 +02:00
Christopher Lackner
030d8c8523 change more PointNd to Point<N> 2019-09-30 10:19:35 +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
Joachim Schöberl
bd589a4cca Merge branch 'SwapImprove2_with_core_table' into 'master'
swapimprove2 with core tables

See merge request jschoeberl/netgen!254
2019-09-30 03:36:59 +00:00
Matthias Hochsteger
8874e41aec SwapImprove2 - delete/add elements instead of replacing them 2019-09-29 21:31:00 +02:00
Joachim Schöberl
bbc36bb54d Merge branch 'pointnd_to_point' into 'master'
change PointNd to Point<N> adfront2

See merge request jschoeberl/netgen!253
2019-09-29 18:49:06 +00:00
Joachim Schöberl
47641c9b2c swapimprove2 with core tables 2019-09-29 20:47:41 +02:00
Joachim Schöberl
eeb63f659f Table with IndexType 2019-09-29 17:44:08 +02:00
Christopher Lackner
bf217b9934 change PointNd to Point<N> adfront2 2019-09-29 16:22:00 +02:00
Christopher Lackner
ca2212879e Change some PointNd to Point<N> functions 2019-09-29 14:54:24 +02:00
Joachim Schöberl
5c4b0e490a little polish 2019-09-29 10:55:20 +02:00
Matthias Hochsteger
4987d12556 SplitImprove for triangles 2019-09-27 20:49:12 +02:00
Joachim Schöberl
28d05d9ae7 Merge branch 'stl_refine_fix' into 'master'
Stl refine fix

See merge request jschoeberl/netgen!249
2019-09-27 15:35:17 +00:00
Joachim Schöberl
3ad1c16fe5 Merge branch 'fix_vec_point_constructor' into 'master'
fix vec constructor from point and make explicit

See merge request jschoeberl/netgen!250
2019-09-27 15:34:36 +00:00
Joachim Schöberl
ce1a94de36 fix hp-ref fix for 3d 2019-09-27 17:29:17 +02:00
Joachim Schöberl
da53a12eba delaunay tuning 2019-09-27 17:14:48 +02:00
Christopher Lackner
4d5fe67d83 fix vec constructor from point and make explicit 2019-09-27 17:01:12 +02:00
Joachim Schöberl
a71bed3a7e Delaunay microtuning 2019-09-27 16:08:10 +02:00
Christopher Lackner
316d8319be Merge branch 'master' into stl_refine_fix 2019-09-27 14:46:32 +02:00
Christopher Lackner
c04da61ddc final check for badsurfacemesh 2019-09-27 14:45:15 +02:00
Christopher Lackner
9b92e754f2 Merge branch 'master' into stl_refine_fix 2019-09-27 14:34:09 +02:00
Joachim Schöberl
3ec73d69ce randomizing in Delaunay 2019-09-27 13:03:34 +02:00
Matthias Hochsteger
6a7030b81a Activate multithreading when meshing from GUI
- Meshing options for parallelization and number of threads
 - RegionTaskManager() to locally start the TaskManager
2019-09-27 11:54:33 +02:00
Matthias Hochsteger
36ada6f90c clock() reports wrong times, use WallTime() instead 2019-09-27 11:54:33 +02:00
Matthias Hochsteger
9ba75145c0 Call constructor after allocation with BlockAllocator 2019-09-27 11:43:50 +02:00
Matthias Hochsteger
483bece790 Use BlockAllocator in BTree 2019-09-27 11:31:00 +02:00
Joachim Schöberl
fa3b84038f delaunay optimizations 2019-09-26 18:28:31 +02:00
Matthias Hochsteger
46116ce723 BTree::GetFirstIntersecting(), some Timers 2019-09-26 16:50:35 +02:00
Matthias Hochsteger
a6d07ed7e4 Fix BTree::GetIntersecting() 2019-09-26 16:00:16 +02:00
Joachim Schöberl
d1705be7a6 searchtree in MakeAtlas 2019-09-26 15:22:06 +02:00
Matthias Hochsteger
7b1c05f12c Save memory in BTree, count number of leaves and nodes 2019-09-26 14:02:37 +02:00
Christopher Lackner
182ee07a5c start fixing 2019-09-26 13:57:55 +02:00
Matthias Hochsteger
b2808109b6 New BoxTree for Delaunay 2019-09-26 12:12:28 +02:00
Matthias Hochsteger
26865d6470 Parallelize SwapImprove() (again) 2019-09-25 14:10:52 +02:00
Matthias Hochsteger
5d4d0f1e39 Add missing DLL_HEADERs 2019-09-24 13:16:26 +02:00
Matthias Hochsteger
4deffe6cbe Button to write selected chart to separate .stlb file 2019-09-24 13:09:49 +02:00
Joachim Schöberl
71758de667 use surfindex as hash-key in FindOpenSegments 2019-09-24 10:34:36 +02:00
Joachim Schöberl
54fa0d81ec little stl cleanup 2019-09-24 10:14:52 +02:00
Joachim Schöberl
0c4b90c4c4 template functions to header 2019-09-24 10:13:35 +02:00
Joachim Schöberl
d995976621 less locks on AddVolumeElement 2019-09-23 21:50:42 +02:00
Joachim Schöberl
f008de5b04 searchtree with BlockAllocator (again) 2019-09-23 20:49:12 +02:00
Joachim Schöberl
fae350929c less locks in mesh.AddPoint/Element 2019-09-23 11:22:50 +02:00
Joachim Schöberl
abe971f15d export ANALYSE geometry 2019-09-23 11:22:34 +02:00
Joachim Schöberl
279a5a2faa use boundary_ht, remove unsued functions 2019-09-23 09:40:35 +02:00
Christopher Lackner
b45d022542 Revert "only use hashtable in stlboundary"
This reverts commit dbbfebcf1a.
2019-09-23 09:30:23 +02:00
Joachim Schöberl
1fb048e399 Merge branch 'draw_stl_to_plain' into 'master'
Draw stl to plain

See merge request jschoeberl/netgen!241
2019-09-22 16:18:49 +00:00
Christopher Lackner
f64c736c2b dll header vssurfacemeshing 2019-09-22 17:55:43 +02:00
Christopher Lackner
dbbfebcf1a only use hashtable in stlboundary 2019-09-22 15:49:06 +02:00
Christopher Lackner
4eb7c1860c allow 2d plainview to be moved using meta key 2019-09-22 14:37:14 +02:00
Joachim Schöberl
c180b37ea8 more STL*Id 2019-09-22 13:15:53 +02:00
Christopher Lackner
d274cf8121 Merge branch 'master' into draw_stl_to_plain 2019-09-22 00:17:09 +02:00
Christopher Lackner
4de79f4ce6 fix stlchartboundary 2019-09-22 00:16:44 +02:00
Christopher Lackner
d080f516cc draw 3d and 2d local coordinates 2019-09-21 22:41:01 +02:00
Christopher Lackner
cd78f0e440 draw stl meshing 2d local coordinates 2019-09-21 22:08:35 +02:00
Joachim Schöberl
6ad36f73cb move BoxTree to headers 2019-09-21 09:45:29 +02:00
Joachim Schöberl
d46453050d fix for recent change 2019-09-21 02:22:20 +02:00
Joachim Schöberl
5332762b96 STLPointId ... 2019-09-21 02:04:50 +02:00
Joachim Schöberl
9b13bde72b more STLPointId ... 2019-09-21 02:04:50 +02:00
Joachim Schöberl
f22cb48832 STLPointId 2019-09-21 02:04:50 +02:00
Joachim Schöberl
61c9e669c3 use Point/Trig/Chart-Id in stl-meshing, more to come 2019-09-21 02:04:49 +02:00
Matthias Hochsteger
8381ce58ba Link stl to interface 2019-09-20 15:26:15 +02:00
Christopher Lackner
681628bd40 remove unnecessary line 2019-09-20 13:45:23 +02:00
Matthias Hochsteger
5724b397d1 Revert "Separate function SwapImproveEdge(), iterate over list of edges instead of elements and edges per element"
This reverts commit c22f44617b.
2019-09-20 12:51:13 +02:00
Matthias Hochsteger
8688c135b2 Revert "Parallelize SwapImprove()"
This reverts commit 8c9d75f5f4.
2019-09-20 12:51:13 +02:00
Matthias Hochsteger
fc1dbc2957 Revert "Change elementsonnode only when applying optimization"
This reverts commit 6c0171f2c0.
2019-09-20 12:51:13 +02:00
Matthias Hochsteger
5cfb449d7a Automatically distinguish between ASCII and binary stl files 2019-09-20 11:55:46 +02:00
Matthias Hochsteger
f6f4976402 Import STL as Mesh 2019-09-20 11:32:20 +02:00
Christopher Lackner
56d256523a use relative mindist instead of absolute
I think this shouldn't be a relative value here.
2019-09-16 15:38:20 +02:00
Matthias Hochsteger
7c88a6da76 Lock mesh in Mesh::Compress 2019-09-16 13:13:48 +02:00
Christopher Lackner
9feb9de9b1 Fix docstring 2019-09-16 12:48:27 +02:00
Matthias Hochsteger
d32d498259 Export Mesh::CalcMinMaxAngle 2019-09-16 12:11:49 +02:00
Joachim Schöberl
e887a2862b Merge branch 'fix_oneside_hpref' into 'master'
Fix oneside hpref

See merge request jschoeberl/netgen!237
2019-09-15 19:33:04 +00:00
Michael Neunteufel
9f79451fe1 clean up 2019-09-13 09:42:05 +02:00
Michael Neunteufel
4b26f39974 export hprefleft/hprefright to python, sort points for segments and check if point is part of correct material 2019-09-13 09:09:56 +02:00
Joachim Schöberl
2c172e46ee Merge branch 'parallel_swapimprove' into 'master'
Parallel SwapImprove()

See merge request jschoeberl/netgen!236
2019-09-12 07:06:39 +00:00
Christopher Lackner
c359832767 fix pyname for non default constructible classes 2019-09-11 15:17:09 +02:00
Matthias Hochsteger
9510670140 Fix number of parameters in EllipticCone 2019-09-11 15:11:10 +02:00
Matthias Hochsteger
6c0171f2c0 Change elementsonnode only when applying optimization 2019-09-11 13:06:07 +02:00
Christopher Lackner
485d9f230b platform independent and readable names for array export suffix 2019-09-11 13:04:50 +02:00
Matthias Hochsteger
1d016f2204 Use PointIndex instead of int 2019-09-11 13:02:15 +02:00
Christopher Lackner
59087f5c2c make array name platform independent 2019-09-11 08:27:04 +02:00
Christopher Lackner
5288af641c array numpy buffer protocol 2019-09-10 23:01:05 +02:00
Matthias Hochsteger
8c9d75f5f4 Parallelize SwapImprove() 2019-09-10 17:52:24 +02:00
Matthias Hochsteger
a70803eecb Fix BuildEdgeList() - create sorted list 2019-09-10 16:59:31 +02:00
Matthias Hochsteger
c22f44617b Separate function SwapImproveEdge(), iterate over list of edges instead of elements and edges per element 2019-09-10 16:58:53 +02:00
Matthias Hochsteger
d95e9afb92 Utility function MeshOptimize3d::BuildEdgeList() 2019-09-10 16:19:04 +02:00
Matthias Hochsteger
88ac5456ab Parallelize SwapImprove2 2019-09-10 11:45:04 +02:00
Matthias Hochsteger
d0586a6366 Separate function to perform SwapImprove2 on one face of an element 2019-09-10 11:45:04 +02:00
Joachim Schöberl
4c1f24d313 Merge branch 'export_taskmanager' into 'master'
Export TaskManager

See merge request jschoeberl/netgen!232
2019-09-09 20:06:32 +00:00
Joachim Schöberl
17a790e71e Merge branch 'init_geominfo_trignum' into 'master'
Initialize geominfo[].trignum in Segment ctor

See merge request jschoeberl/netgen!231
2019-09-09 20:05:16 +00:00
Matthias Hochsteger
66c4c3bf59 use global logging level without spdlog 2019-09-09 17:05:23 +02:00
Matthias Hochsteger
6c69df9fe6 Export TaskManager 2019-09-09 17:05:23 +02:00
Matthias Hochsteger
2bb11f4cb1 Avoid parallel call of BuildBoundaryEdges() inside Mesh::CombineImprove() 2019-09-09 17:02:50 +02:00
Matthias Hochsteger
7bf1563295 Initialize geominfo[].trignum in Segment ctor 2019-09-09 16:31:29 +02:00
Joachim Schöberl
cbd129bf53 disable parallel vertex2element table, needs sorting 2019-09-09 10:55:27 +02:00
Joachim Schöberl
5ffab34d13 fix rangecheck 2019-09-07 10:31:12 +02:00
Joachim Schöberl
be40a4d3f1 array setitem functionality 2019-09-06 17:17:11 +02:00
Matthias Hochsteger
c075cfb9c6 Parallelize ImproveMesh 2019-09-05 14:25:11 +02:00
Matthias Hochsteger
7e7a1bb98b Avoid parallel call of BuildBoundaryEdges() inside LegalTet() 2019-09-05 13:38:41 +02:00
Joachim Schöberl
0fcf99dc56 some native mesh access functions 2019-09-04 15:24:37 +02:00
Joachim Schöberl
3e6f4b9472 use pointindex 2019-09-04 13:46:40 +02:00
Joachim Schöberl
ad4bbd1aa9 new lopp 2019-09-03 07:11:35 +02:00
Christopher Lackner
cd3bf9ead5 quad meshing parameter deprecated, use quad_dominated instead 2019-09-02 16:51:32 +02:00
Joachim Schöberl
71e8c6854c fix table creator 2019-08-30 08:28:08 +02:00
Matthias Hochsteger
6c06f79c8e Fix build error on Windows (wrong usage of Range()) 2019-08-29 19:22:12 -07:00
Matthias Hochsteger
78693fb196 Add Table and HashTable from NGSolve 2019-08-29 16:13:18 +02:00
Christopher Lackner
331c0b9486 fix AOWrapperIterator operator++ 2019-08-29 15:06:05 +02:00
Joachim Schöberl
fcea398d7c Merge branch 'subcomm' into 'master'
sub-communicators as methods of NgMPI_Comm, using ngcore-arrays

See merge request jschoeberl/netgen!215
2019-08-29 09:32:35 +00:00
Joachim Schöberl
7f8dd74a03 Merge branch 'bitarray_ngcore' into 'master'
Bitarray from NGSolve to ngcore

See merge request jschoeberl/netgen!223
2019-08-28 18:57:11 +00:00
Matthias Hochsteger
b27f7f3bb6 Add BitArray from NGSolve
Deprecate method BitArray::Set(), instead use either SetBit() or
SetBitAtomic()
2019-08-28 16:40:21 +02:00
Christopher Lackner
6d874bece8 Merge branch 'add_forgotten_isend' into 'master'
add forgotten isend

See merge request jschoeberl/netgen!221
2019-08-28 14:07:13 +00:00