Commit Graph

2483 Commits

Author SHA1 Message Date
Joachim Schoeberl
f105a9b3cc closing curves 2021-08-15 18:01:20 +02:00
Joachim Schoeberl
cd8b27dd73 naming edges in WorkPlane (draft) 2021-08-15 16:27:35 +02:00
Joachim Schoeberl
b041a5fb38 periodic edges 2021-08-15 13:29:28 +02:00
Joachim Schoeberl
eba02368a6 prepare for periodic occ-geometries 2021-08-15 13:14:23 +02:00
Joachim Schoeberl
9d2a436749 changing mesh-dimension from 3 to 2 moves names 2021-08-15 13:13:11 +02:00
Joachim Schoeberl
97447d681f preserve also face and edge properties in Glue 2021-08-14 13:01:40 +02:00
Joachim Schoeberl
880b21745b workplane.circle 2021-08-14 12:50:03 +02:00
Joachim Schoeberl
01b26ef1d3 workplane.circle 2021-08-14 12:47:12 +02:00
Joachim Schoeberl
8823101c77 wires from workplane 2021-08-13 22:39:20 +02:00
Joachim Schöberl
964a3cc06b Merge branch 'master' into 'shirnschall'
# Conflicts:
#   libsrc/occ/python_occ_shapes.cpp
2021-08-13 20:09:39 +00:00
Matthias Hochsteger
fb64f0d873 geometry edges in webgui 2021-08-13 16:46:49 +02:00
shirnschall
3df3bbc948 changed variable name 2021-08-13 16:03:53 +02:00
shirnschall
1c0cfd8965 checking arc and arcto input for invalid function arguments 2021-08-13 16:00:12 +02:00
shirnschall
539798971c removed angle argument from arcto 2021-08-13 14:19:11 +02:00
shirnschall
c9fb364cc0 now using three points to construct arc in 2d 2021-08-13 01:48:29 +02:00
Matthias Hochsteger
ae6b23fffc add functionality to draw occ shapes with webgui 2021-08-12 11:20:07 +02:00
Matthias Hochsteger
a7f836cb9a comment out debug output 2021-08-12 08:31:06 +02:00
shirnschall
2449b4c79c testing GCE2d_MakeArcOfCircle for Arc 2021-08-11 23:02:49 +02:00
Joachim Schoeberl
d658985e69 don't do own Newton for finding OCC u/v parameters (e.g. a problem for parameter domain for a sphere 2021-08-11 21:57:22 +02:00
Joachim Schoeberl
56c59353bb surface normal 2021-08-11 21:54:45 +02:00
Joachim Schoeberl
73f387a7ed UnifySameDomain is good for 2D, needs some more exploration 2021-08-11 11:00:05 +02:00
shirnschall
561dadb877 arc new syntax 2021-08-10 21:18:30 +02:00
Joachim Schoeberl
0de8254ea2 spline-curves, curve tangents 2021-08-10 20:28:49 +02:00
Joachim Schoeberl
d8b1ea33f8 remove internal edges in 2D fuse 2021-08-09 10:59:24 +02:00
shirnschall
a0c99c848a added Revolve(), added Arc() - not yet working correctly 2021-08-08 18:24:38 +02:00
Joachim Schoeberl
ea6f4d0713 Offset in workplane 2021-08-06 21:33:54 +02:00
Joachim Schoeberl
6c8107efc7 WorkPlane from Face 2021-08-06 17:43:01 +02:00
Joachim Schoeberl
3e8664b40e workplane draft 2021-08-06 14:23:17 +02:00
Joachim Schoeberl
4629bccd72 forgot file 2021-08-06 10:45:14 +02:00
Joachim Schoeberl
bebbfc434c split python-occ files, Rotation angle in degrees 2021-08-06 10:41:42 +02:00
Joachim Schoeberl
ecfb7a3873 iterating ListOfShapes gives actual shape-types 2021-08-05 23:52:03 +02:00
Joachim Schoeberl
028c8ce63d compiler fixes for Circle2d 2021-08-05 19:38:21 +02:00
Joachim Schoeberl
87f796c6d9 ListOfShapes, MakeFillet a member function 2021-08-05 19:27:09 +02:00
Joachim Schoeberl
e1cefd14ca X,Y,Z, Pnt, Vec operators 2021-08-04 11:59:06 +02:00
Joachim Schoeberl
a43c3ed28c translation 2021-08-03 14:29:57 +02:00
Joachim Schoeberl
8334dd7378 gp_ax3, transformation 2021-08-03 12:03:59 +02:00
Joachim Schoeberl
5ecb840c9c added pipe 2021-08-02 17:32:51 +02:00
Joachim Schoeberl
e3562c29ef implicitly convert 2-tuples to occ-pnt,vec,dir 2021-08-02 13:04:26 +02:00
Joachim Schoeberl
2422318162 rotation trafo 2021-08-02 09:50:54 +02:00
Joachim Schoeberl
62a0743e4e curves on surfaces 2021-08-01 23:17:39 +02:00
Joachim Schoeberl
b829c9bcc8 occ-triangulation 2021-07-30 09:43:29 +02:00
Joachim Schoeberl
62463b904e little occ code polish 2021-07-30 08:42:35 +02:00
Joachim Schoeberl
751f193d81 replace global_shape_names by global_shape_properties 2021-07-29 16:40:11 +02:00
Joachim Schoeberl
b22ae4f90d don't use optional.value for MacOS < 10.14 2021-07-29 16:01:21 +02:00
Joachim Schoeberl
66de9d4510 global_shape_properties, instead of individual maps 2021-07-29 12:15:03 +02:00
Joachim Schoeberl
8f2e0611e0 allow to set names for all shapes (e.g. edges) 2021-07-28 20:16:32 +02:00
Joachim Schoeberl
f2e8425145 occ features 2021-07-28 08:23:33 +02:00
Joachim Schoeberl
e4e1994a60 wrapping occ features 2021-07-27 23:31:36 +02:00
Joachim Schoeberl
42c6601aae colors from python-occ 2021-07-27 20:59:41 +02:00
Joachim Schoeberl
411a850d41 checking for occ-has-history 2021-07-26 22:50:59 +02:00
Joachim Schoeberl
4da7f6ac72 Global 'Glue' function, preserve more history 2021-07-26 22:35:39 +02:00
Matthias Hochsteger
e502eeee2f test with Ubuntu 20.04, fix occ versions compatibility 2021-07-26 16:59:43 +02:00
Matthias Hochsteger
d01bde60f6 OCC versions compatibility 2021-07-26 16:39:33 +02:00
Joachim Schoeberl
7e0f0326de occ material, copy names from step-loading to global names 2021-07-26 09:10:50 +02:00
Joachim Schoeberl
f3caa7182a occ: setting boundary conditions, and propagating it through intersection 2021-07-25 22:16:43 +02:00
Michael Neunteufel
c0d9f3d95b Meshpnt surfacemesh 2021-07-25 07:47:25 +00:00
Joachim Schoeberl
ca0201b301 OCCGeometry from list of shapes 2021-07-25 01:26:09 +02:00
Joachim Schoeberl
5066fe0fce boolean operations for occ in Python 2021-07-24 22:31:40 +02:00
Joachim Schoeberl
56e848eea9 pywrapping occ 2021-07-24 19:53:30 +02:00
Joachim Schoeberl
54af8014c4 back to trying both occ surface-meshing versions 2021-07-24 16:18:22 +02:00
Joachim Schoeberl
157b246f7f occ: box, cyl 2021-07-24 13:14:21 +02:00
Joachim Schoeberl
d783b71d49 few occ exports 2021-07-24 11:07:39 +02:00
Matthias Hochsteger
82a67b27b9 Merge branch 'parallel_meshing' into test 2021-07-19 14:59:20 +02:00
Matthias Hochsteger
48198d232d Revert "Revert "Merge branch 'parallel_meshing' into 'master'""
This reverts commit 65c5e2d244.
2021-07-19 14:59:12 +02:00
Matthias Hochsteger
cf3963a357 cleanup 2021-07-19 12:08:29 +02:00
Christopher Lackner
300835a446 fix table archive 2021-07-17 13:35:01 +02:00
Christopher Lackner
6f044faaba archive Table 2021-07-17 12:48:59 +02:00
Matthias Hochsteger
8687b540c6 rever PrepareForBlockFillLocalH stuff, copy only relevant part of LocalH tree 2021-07-16 18:49:05 +02:00
Matthias Hochsteger
e5e8882d07 fix identifications, copy whole LocalH tree 2021-07-16 17:18:41 +02:00
Matthias Hochsteger
8e2cd17436 build identifications, set geometry 2021-07-16 11:30:11 +02:00
Matthias Hochsteger
d997ac0bbe copy localh tree (but skip parts outside of bounding box) 2021-07-13 17:19:03 +02:00
Matthias Hochsteger
a89cf0089a Scaling of bounding box (instead of increasing size in all directions) 2021-07-06 17:09:22 +02:00
Matthias Hochsteger
65c5e2d244 Revert "Merge branch 'parallel_meshing' into 'master'"
This reverts commit d20a297cf1, reversing
changes made to fd50131a5b.
2021-06-29 19:38:19 +02:00
Matthias Hochsteger
1c526a5c9e Fix edges after building boundary layer 2021-06-29 17:50:45 +02:00
Matthias Hochsteger
8baccf0a08 some fixes, new test results 2021-06-28 17:48:21 +02:00
Matthias Hochsteger
55ab122f35 Merge remote-tracking branch 'origin/master' into parallel_meshing 2021-06-28 12:10:08 +02:00
Joachim Schoeberl
fd50131a5b constexpr function 2021-06-28 01:35:23 +02:00
Joachim Schoeberl
91506aa71a static constexpr 2021-06-28 01:07:03 +02:00
Joachim Schoeberl
31d5ce8be9 packed archiving 2021-06-27 12:32:51 +02:00
Joachim Schoeberl
54db7941d0 tuning mesh(un)pickling 2021-06-26 12:14:17 +02:00
Joachim Schoeberl
e84d4e90c8 add header for std::byte 2021-06-25 18:58:25 +02:00
Matthias Hochsteger
34629749d6 Merge remote-tracking branch 'origin/master' into parallel_meshing 2021-06-25 17:32:16 +02:00
Joachim Schoeberl
72fb819def missing overloads for archive (byte) 2021-06-24 13:21:43 +02:00
Joachim Schoeberl
f6befbbe08 remove cerr << 'BFGS udate error' 2021-06-24 12:55:39 +02:00
Joachim Schoeberl
b65d3c188f another optional table in Topology 2021-06-24 07:39:09 +02:00
Joachim Schoeberl
971d6bb465 little tuning of mesh pickling 2021-06-24 07:39:09 +02:00
Christopher Lackner
e0f3ce9cf0 fix loading of short mesh file names 2021-06-22 11:57:30 +02:00
Matthias Hochsteger
8be5b7d810 Merge remote-tracking branch 'origin/master' into parallel_meshing 2021-06-22 11:46:36 +02:00
Matthias Hochsteger
872dddbcd7 remove old meshing functions 2021-06-22 11:45:25 +02:00
Matthias Hochsteger
17b5f1c7a4 preserve locked points in all domains 2021-06-22 11:45:01 +02:00
Matthias Hochsteger
c7e9a822cc Don't divide/merge mesh when having only one domain 2021-06-22 11:33:16 +02:00
Matthias Hochsteger
2b8a2356a0 use unique_ptr in MeshingData 2021-06-22 11:16:28 +02:00
Joachim Schoeberl
f24b962df7 fix width per refernce 2021-06-21 15:25:25 +02:00
Joachim Schoeberl
2488bd37ef remove output, fix warning 2021-06-21 15:13:08 +02:00
Joachim Schoeberl
ebf1478048 copy ctor for MatrixFixWidth<W,double> 2021-06-21 13:57:57 +02:00
Joachim Schoeberl
780e72bf81 copyable 2d rules 2021-06-21 08:36:14 +02:00
Joachim Schoeberl
30d708f487 thread-safe CSG crosspoints and edges 2021-06-21 05:22:00 +02:00
Joachim Schoeberl
b51df253fd pickle mesh-load also via ngsolve.Mesh('filename.vol.bin') 2021-06-17 07:58:25 +02:00
Matthias Hochsteger
6237f5542f Build LocalH tree for each domain separately, if not already present before volume meshing 2021-06-16 15:49:23 +02:00
Matthias Hochsteger
5ec753452e fix 2021-06-16 15:36:14 +02:00
Matthias Hochsteger
d0edaa57bb prepare LocalH tree before blockfill sequentially 2021-06-16 15:05:58 +02:00
Matthias Hochsteger
7e344c2247 restructure MeshVolume 2021-06-16 14:04:06 +02:00
Matthias Hochsteger
62edae9b40 some timers 2021-06-16 10:49:31 +02:00
Matthias Hochsteger
8d51db278f debugging header for utility functions 2021-06-16 10:48:38 +02:00
Matthias Hochsteger
4b40a7eb31 backward-compatible Timer interface 2021-06-14 14:55:08 +02:00
Matthias Hochsteger
958bbb1ae0 Set flags correctly when loading Element from Archive 2021-06-14 11:58:46 +02:00
Matthias Hochsteger
a51f8ed307 fix meshing empty meshes 2021-06-14 10:39:57 +02:00
Matthias Hochsteger
b83d73e919 fix meshing of close surfaces (use identifications of master mesh) 2021-06-14 10:39:57 +02:00
Matthias Hochsteger
1cf3d2a21c always merge domains in separate meshes (consistent output) 2021-06-14 10:39:57 +02:00
Matthias Hochsteger
c835767115 Timer in ProcessTask() 2021-06-14 10:39:57 +02:00
Matthias Hochsteger
97623db219 Mesh 3d domains in parallel
To get consistent results, copy the LocalH tree in BlockFillLocalH
2021-06-14 10:39:57 +02:00
Matthias Hochsteger
5e3505b897 faster SwapImprove after delaunay
also new test results
2021-06-14 10:39:57 +02:00
Matthias Hochsteger
0b7f4fecbc timers 2021-06-14 10:39:57 +02:00
Matthias Hochsteger
9b5aa90d38 skip deleted elements when creating tables
-> no need to call Compress() everytime the mesh changes
2021-06-14 10:39:57 +02:00
Matthias Hochsteger
b2af4c1069 set flags properly for new Elements 2021-06-14 10:39:57 +02:00
Joachim Schoeberl
1b5aa71ad6 fix parallel mesh pickling 2021-06-14 10:34:39 +02:00
Joachim Schöberl
44d7207380 Merge branch 'parallel_timing' into 'master'
Thread-safe Timer

See merge request jschoeberl/netgen!392
2021-06-11 17:03:57 +00:00
Matthias Hochsteger
b9f7b1e5a5 Register OCCGeometry for archiver 2021-06-11 15:23:21 +02:00
Matthias Hochsteger
1de1a1800e Fix template argument deduction for Timer, remove ThreadRegionTimer 2021-06-11 15:19:30 +02:00
Matthias Hochsteger
6f7543c7dc Timer - convenience constructors to disable tracing and/or timing
Examples:
Timer t0("name");
Timer t1("name", NoTracing);
Timer t2("name", NoTiming);
Timer t3("name", NoTracing, NoTiming);
Timer t4("name", NoTiming, NoTracing);
2021-06-11 10:08:06 +02:00
Matthias Hochsteger
c5639a5706 Thread-safe Timer
- use template arguments instead of run-time variable 'priority'
 - change in paje interface for tracing
2021-06-11 09:52:58 +02:00
Matthias Hochsteger
a11294baf0 inline GetThreadI() (except on Windows, no dllexport for thread_local variables supported) 2021-06-11 09:51:23 +02:00
Joachim Schoeberl
6c73222f20 more ParallelFor in Topology 2021-06-10 21:52:22 +02:00
Joachim Schöberl
d922d3abdd Merge branch 'small_improvements' into 'master'
Small improvements

See merge request jschoeberl/netgen!390
2021-06-10 10:43:13 +00:00
Matthias Hochsteger
2a17451c96 consistent criterion for conformance optimization in SwapImprove
Only small effect on output Meshes
2021-06-10 11:04:41 +02:00
Matthias Hochsteger
8df49eee2a Reduce sizeof(MeshPoint) from 48 to 40 bytes 2021-06-10 10:15:55 +02:00
Matthias Hochsteger
3f93ccd3bd remove static array in ruler3 (prepare for parallel meshing) 2021-06-10 09:56:42 +02:00
Matthias Hochsteger
80d648c005 parallel evaluation of localh in ImproveMesh() 2021-06-10 09:55:30 +02:00
Matthias Hochsteger
b677ef5e22 Fix RangeException (prepare for local optimizations, with partially filled elementsonpoint table) 2021-06-10 09:53:42 +02:00
Matthias Hochsteger
6cdfefcc82 Use CreateTable for coloring table 2021-06-10 09:51:56 +02:00
Matthias Hochsteger
c734a27621 TABLE -> Table in PointFunction 2021-06-10 09:45:14 +02:00
Matthias Hochsteger
873de8149c thread-safe delaunay 2021-06-10 09:42:04 +02:00
Matthias Hochsteger
eee7a6d211 initialize childs in GradingBox also in default ctor 2021-06-10 09:39:23 +02:00
Matthias Hochsteger
a96a1e4624 separate memtracer.hpp 2021-06-10 09:38:00 +02:00
Matthias Hochsteger
0b90d24d81 fix tolerance in specpoints check (compare Dist2() with sqr(1e-8*geomsize) ) 2021-06-08 20:03:07 +02:00
Matthias Hochsteger
d6ca80d50e Fix SplineSeg ctor 2021-06-08 19:28:53 +02:00
Joachim Schoeberl
abb2e43ccb optimize parallel load 2021-06-08 19:08:14 +02:00
Christopher Lackner
aceb2fac32 Merge branch 'revolution_boundaryconditions' into 'master'
Revolution boundaryconditions

See merge request jschoeberl/netgen!388
2021-06-08 13:01:14 +00:00
Christopher Lackner
bc0b5d538c Merge branch 'revolution_splinegeo_sharedptr' into 'master'
Revolution should keep shared_ptr to splinegeo2d

See merge request jschoeberl/netgen!387
2021-06-08 13:01:06 +00:00
Christopher Lackner
b8ab3a47a7 Give bcname and maxh to revolution by adding it to spline 2021-06-08 14:35:58 +02:00
Joachim Schoeberl
c0534c5e0a partition array also in sequential version 2021-06-08 14:33:32 +02:00
Joachim Schoeberl
d7452c34f9 sequential dummy 2021-06-08 14:09:12 +02:00
Joachim Schoeberl
aa3f778d06 separat metis-partitioning call, pickling partition number of mesh elements 2021-06-08 13:48:27 +02:00
Christopher Lackner
12a5d14967 Revolution should keep shared_ptr to splinegeo2d 2021-06-08 11:56:57 +02:00
Matthias Hochsteger
ca6d6e8ca7 revert mistakenly commited code 2021-06-04 20:04:10 +02:00
Matthias Hochsteger
bb43f669e6 Don't skip deleted elements when building point2element table 2021-06-04 19:57:21 +02:00
Matthias Hochsteger
ba148e8b3b cleanup, more parallel 2021-06-04 16:23:18 +02:00
Matthias Hochsteger
9ddf2424e2 rewrite of DelaunayRemoveTwoTriaTets (much faster now) 2021-06-04 16:03:50 +02:00
Matthias Hochsteger
a2cc102849 delaunay - stay consistent with code on master 2021-06-04 13:32:34 +02:00
Matthias Hochsteger
6c37ce33b0 CreatePoint2ElementTable with optional points bitarray 2021-06-04 13:32:30 +02:00