Commit Graph

1932 Commits

Author SHA1 Message Date
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
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