Commit Graph

1101 Commits

Author SHA1 Message Date
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
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
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
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
Christopher Lackner
b0db24fa83 implement meshsurface in basegeometry 2019-10-28 14:41:31 +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
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
37198d0cee Recover correct point type in smoothing2d 2019-10-23 11:08:30 +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
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
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
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
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
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
Matthias Hochsteger
fea75d6ff5 Remove MeshOptimize2d::SelectSurfaceOfPoint() 2019-10-08 12:44:00 +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
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
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
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
34ef87a706 Merge branch 'master' of geras.asc.tuwien.ac.at:jschoeberl/netgen 2019-10-04 13:49:32 +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
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
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
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
Joachim Schöberl
693bc66d49 use STL-searchtree 2019-09-30 18:21:01 +02: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
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
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
Joachim Schöberl
a71bed3a7e Delaunay microtuning 2019-09-27 16:08:10 +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
Matthias Hochsteger
7b1c05f12c Save memory in BTree, count number of leaves and nodes 2019-09-26 14:02:37 +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
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
Joachim Schöberl
abe971f15d export ANALYSE geometry 2019-09-23 11:22:34 +02:00
Christopher Lackner
f64c736c2b dll header vssurfacemeshing 2019-09-22 17:55:43 +02:00
Christopher Lackner
4eb7c1860c allow 2d plainview to be moved using meta key 2019-09-22 14:37:14 +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
61c9e669c3 use Point/Trig/Chart-Id in stl-meshing, more to come 2019-09-21 02:04:49 +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
7c88a6da76 Lock mesh in Mesh::Compress 2019-09-16 13:13:48 +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
Matthias Hochsteger
6c0171f2c0 Change elementsonnode only when applying optimization 2019-09-11 13:06:07 +02:00
Matthias Hochsteger
1d016f2204 Use PointIndex instead of int 2019-09-11 13:02:15 +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
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
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
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
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
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
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
Lukas
2391ae1662 Merge remote-tracking branch 'origin/master' into fix_parmesh 2019-08-28 13:03:13 +02:00
Lukas
bca0f6a2ea Merge remote-tracking branch 'origin/master' into subcomm 2019-08-27 13:32:25 +02:00
Joachim Schöberl
e2680b4139 Merge branch 'fix_mpi_curve' into 'master'
fix mpi mesh curving

See merge request jschoeberl/netgen!216
2019-08-26 12:40:51 +00:00
Joachim Schöberl
009139d448 Merge branch 'cleanup_paralleltop' into 'master'
porperly clean up created mpi-group/comm in paralleltop

See merge request jschoeberl/netgen!212
2019-08-26 12:22:38 +00:00
Lukas
55203ae730 fix mpi mesh curving 2019-08-26 13:16:28 +02:00
Lukas
c18b6cbbe1 sub-communicators as methods of NgMPI_Comm, using ngcore-arrays 2019-08-26 13:13:53 +02:00
Lukas
e7c550adbd fix recently introduced off-by-one bug in parallelmesh, clean up created MPI-types (needs array-pos merge request) 2019-08-26 12:58:51 +02:00
Lukas
1d0886fbec porperly clean up created mpi-group/comm in paralleltop 2019-08-26 12:54:06 +02:00
Joachim Schöberl
2cce200a67 fix Element(i,i,i) ctor 2019-08-26 10:37:38 +02:00
Christopher Lackner
08f9c773b1 we need to implement both sized deallocation functions for older mac
os targets
2019-08-23 11:26:14 +00:00
Christopher Lackner
6c71982951 Range(obj) does respect index type now. If obj has a function Range it
calls the function
2019-08-20 18:16:03 +02:00
Christopher Lackner
0ad54546c2 continue if element deleted in inner loop 2019-08-19 16:58:53 +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
Joachim Schöberl
8973624dfe export right array 2019-08-18 13:25:04 +02:00
Joachim Schöberl
7f6f846eb1 surfelement - indextype 2019-08-18 13:10:58 +02:00
Joachim Schöberl
e89550ec9c polishing improve2, IndirectArray iterator + element access 2019-08-18 12:21:10 +02:00
Joachim Schöberl
afe65337bf Merge branch 'parallel_combine_improve' into 'master'
Parallelize CombineImprove

See merge request jschoeberl/netgen!201
2019-08-15 04:55:15 +00:00
Matthias Hochsteger
ad526ef2bc Parallelize CombineImprove 2019-08-14 17:41:26 +02:00
Joachim Schöberl
fb76ef5c70 Merge branch 'segmentindex_operators' into 'master'
correct increment/decrement operators for segmentindex

See merge request jschoeberl/netgen!199
2019-08-14 14:12:35 +00:00
Christopher Lackner
c33feee970 segmentindex is 0 based 2019-08-14 14:00:37 +02:00
Christopher Lackner
b416fead82 correct increment/decrement operators for segmentindex 2019-08-14 13:47:52 +02:00
Matthias Hochsteger
f570f31de9 Export ngcore Arrays 2019-08-12 17:47:50 +02:00
Joachim Schöberl
d215ac1025 T_POINTS are now ngcore::Array 2019-08-10 00:21:37 +02:00
Joachim Schöberl
234d441a90 Range::Modify() 2019-08-09 18:10:21 +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
07a45072c6 Merge branch 'fix_tutorial' into test_tutorials 2019-08-08 11:07:13 +02:00
Christopher Lackner
70a7a1239e fix loop in mesh compress 2019-08-08 11:03:19 +02:00
Christopher Lackner
d7777b10ca add tests for tutorials 2019-08-08 10:12:33 +02:00
Joachim Schöberl
e8960ebae1 use ngscore::Array for surface elements 2019-08-08 08:44:59 +02:00
Joachim Schöberl
a95185a714 Element2d with initializer lists 2019-08-08 07:36:26 +02:00
Joachim Schöberl
4bfe42b305 more PointIndex::BASE 0/1 fixes 2019-08-07 23:32:14 +02:00
Joachim Schöberl
79c958cf83 fixing PointIndex::Valid 2019-08-07 21:21:05 +02:00
Joachim Schöberl
2ccbf18aea initializer 2019-08-07 18:38:24 +02:00
Joachim Schöberl
bcc15fbc30 use PointIndex::INVALID 2019-08-07 18:34:43 +02:00
Joachim Schöberl
88af66d5a0 try with ctor 2019-08-07 18:30:16 +02:00
Joachim Schöberl
1e701d6aac Merge branch 'stlparams_from_python' into 'master'
STLParams from python

See merge request jschoeberl/netgen!188
2019-08-07 15:31:42 +00: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
bbc3661bfe remove timer, PointIndex::INVALID 2019-08-07 07:48:15 +02:00
Christopher Lackner
fd42f24d37 remove any again 2019-08-06 20:03:17 +02:00
Christopher Lackner
9e63ba0943 parse additional kwargs internally as flags to avoid bad_any_cast
There seem to be somehow multiple py::kwargs classes created in
different libraries, because of this the any_cast is failing.
To circumvent this we attach them to the MeshingParameters object
as flags.
2019-08-06 17:38:44 +02:00
Christopher Lackner
b2590bf517 Merge branch 'master' into stlparams_from_python 2019-08-06 10:44:58 +02:00
Christopher Lackner
fc1a3da429 meshingparameter only visible in nglib and const ref to funcs 2019-08-06 10:42:53 +02:00
Joachim Schöberl
318a6092e3 mesingparameter.sloppy is int 2019-08-06 10:20:18 +02:00
Christopher Lackner
218bd4c5d2 start work on stlparam from python, strange bad any cast exception 2019-08-02 16:22:53 +02:00
Joachim Schöberl
a73594b738 modern timers, remove vector allocation 2019-08-02 09:43:27 +02:00
Christopher Lackner
0b0a11c4f5 doarchive should not be virtual on non abstact class CurvedElements 2019-07-30 13:45:08 +02:00
Christopher Lackner
8ae2475085 return default geometry if no geometry is set for mesh 2019-07-30 12:40:22 +02:00
Joachim Schöberl
20abe6ec37 make number of vertices per level available 2019-07-29 17:46:09 +02:00
Christopher Lackner
f1fc7e747d fix default argument for meshinparameters 2019-07-29 07:54:38 +02:00
Christopher Lackner
c22ec2dcc2 meshingparameters from python as in gui 2019-07-29 07:11:57 +02:00
Joachim Schöberl
f7fcc67fc7 little modernization 2019-07-28 23:22:47 +02:00
Joachim Schöberl
168df170ec reuse netrules, implant adfront into meshing class 2019-07-28 21:31:05 +02:00
Joachim Schöberl
321bee9b02 little OCC-meshing cleanup 2019-07-28 20:22:48 +02:00
Christopher Lackner
a989babd21 use CreateMPfromKwargs for mesh.GenerateVolumeMesh as well 2019-07-26 17:07:30 +02:00
Christopher Lackner
67189f15f9 inline CreateMPfromkwargs function 2019-07-26 16:51:54 +02:00
Christopher Lackner
0c828bb195 move implementation of CreateMPFromKwargs to cpp file 2019-07-26 16:34:24 +02:00
Christopher Lackner
091494c6b3 cleanup python export, generate mesh functions not monkeypatched 2019-07-25 23:25:58 +02:00
Matthias Hochsteger
134b6e74eb badmax and perrs are not used, so remove them 2019-07-16 12:15:57 +02:00
Matthias Hochsteger
2cc3908847 typ is hardcoded to 1, so init pf directly as local variable 2019-07-16 12:14:19 +02:00
Christopher Lackner
ee4dce0eab arraymem has deleted copy assignment 2019-07-12 13:32:21 +02:00
Joachim Schöberl
1653f56efc Merge branch 'no_pybind_everywhere' into 'master'
Get rid of pybind11 include in archive.hpp

See merge request jschoeberl/netgen!175
2019-07-12 06:48:15 +00: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
ea9fab8c77 Remove limit of max 100 PointGeomInfos, add move assignment to ArrayMem 2019-07-11 13:21:47 +00:00
Matthias Hochsteger
b848bdc237 Fix MPI build 2019-07-10 12:33:01 +02:00
Matthias Hochsteger
c5acbacadb Rename ArrayMem to NgArrayMem 2019-07-09 18:00:12 +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
Matthias Hochsteger
4aadd29dfc [cmake] Fix libraries privately 2019-06-30 00:54:31 +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
e0f290676f new timers 2019-06-03 10:42:57 +02:00
Joachim Schöberl
bc836f87ef facet curving using GeomInfo, adding overrides 2019-06-03 10:42:57 +02:00
Christopher Lackner
0a08450bfa move testout to ngcore 2019-05-28 13:51:53 +02:00
Christopher Lackner
c7a71148f4 export function to get volume elements adjacent to surface element 2019-05-22 00:25:18 +02:00
Lukas
89a34b865f completely reset topology on master after distributing mesh 2019-04-29 16:44:07 +02:00
Christopher Lackner
0c6b36dca6 remove meshtopology default copy ctor (is deleted anyway) 2019-04-29 13:10:52 +02:00
Matthias Hochsteger
dc4b1c05b9 Handle numbers in correct order (first index, then number of points) 2019-04-26 09:27:29 +02:00
Joachim Schöberl
3de07c25ab little fix for distributing 2d meshes 2019-04-25 22:51:15 +02:00
Matthias Hochsteger
09f6a08f73 Merge branch 'mpi_fix' into 'master'
fix ReceiveParallelMesh

See merge request jschoeberl/netgen!156
2019-04-24 09:05:10 +00:00
Joachim Schöberl
f070ac4daf remove detail timers 2019-04-20 10:25:28 +02:00
Lukas
a85b33e345 fix vol el NP for 2-dim meshes 2019-04-19 13:51:37 +02:00
Matthias Hochsteger
db19a44fe8 Merge branch 'fix_uninitialized_values' into 'master'
fix uninitialized values

See merge request jschoeberl/netgen!153
2019-04-17 14:45:53 +00:00
Lukas Kogler
fbe660f775 Receive Mesh from python as static method 2019-04-17 12:25:12 +02:00
Lukas Kogler
5423242cd8 fix uninitialized values 2019-04-17 12:24:23 +02:00
Matthias Hochsteger
d6f1cf2bda [cmake] Don't install object libraries on Windows
Works around following issue with CMake 3.14:
> CMake error : install(EXPORT "netgen-targets" ...) includes target "mesh" which requires target "gprim" that is not in the export set.
2019-04-16 12:39:56 -07: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
Joachim Schöberl
e220a252d1 fixes for tet10 and trig6 elements (is_curved, clipping-plane vis) 2019-04-14 07:55:38 +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
Christopher Lackner
a6825d18ca build jacobi pols even if mesh is unpickled and buildcurvedelements is
never called
2019-04-06 13:40:37 +02:00
Joachim Schöberl
f6a290e44f modernize ComputeNVertices 2019-03-30 14:02:38 +01:00
Matthias Hochsteger
fefddf14cc DLL_HEADER for meshing functions 2019-03-25 14:01:06 +01:00
Joachim Schöberl
dab8c827fe Constructor for Trafo by rotation along an arbitrary axes, combine trafos 2019-03-25 12:33:16 +01:00
Lukas
05518ea796 fix index 1/0 typo 2019-03-20 17:06:57 +01:00
Lukas
9c4cfb7864 use mesh-communicator in another place 2019-02-28 17:48:18 +01:00
Lukas
fc7381e587 topology does not build faces/edges befire distributing 2019-02-28 17:48:18 +01:00
Matthias Hochsteger
10ef58b54b Merge branch 'fix_curve_mpi' into 'master'
fix rank/ntasks in curvedelems

See merge request jschoeberl/netgen!140
2019-02-28 16:11:17 +00:00
Lukas
c1256c3ffd fix typo 2019-02-28 16:46:37 +01:00
Lukas
16421b4be3 fix rank/ntasks in curvedelems 2019-02-28 16:25:31 +01:00
Lukas
7346495135 no stack arrays for names 2019-02-28 12:06:30 +01:00
Lukas
039e6d753f simplify distributing names (and also distribute co-dim 2/3 names) 2019-02-26 11:18:42 +01:00
Lukas
965a6cc387 archive co-dim 3 names 2019-02-26 11:18:11 +01:00
Lukas
a2f81d0337 Fix MPI + empty bc/mat-names. (But that should not happen..) 2019-02-25 16:38:21 +01:00
Lukas
4637854c9b When loading a netgen-mesh, take geometry-info from mesh-file over global geometry. 2019-02-25 16:28:31 +01:00
Lukas
55b0fe17d7 use mesh communicator for rank/size 2019-02-25 16:21:04 +01:00
Joachim Schöberl
179c3bb02f don't store partition in element (most times waste of mem) 2019-02-15 21:01:00 +01:00
Joachim Schöberl
fa3f89d337 use std::vector for binding PointIndex, avoid map 2019-02-15 21:00:59 +01:00
Christopher Lackner
eaf08e5c6f import mesh from other file format from python 2019-02-13 22:39:31 +01:00
Joachim Schöberl
67c24a044c get rid of ng_comm 2019-02-12 22:27:58 +01:00
Joachim Schöberl
734e96c87c get rid of ng_comm 2019-02-12 22:11:55 +01:00
Matthias Hochsteger
bc21e34125 Mesh is MPI-local by default 2019-02-12 16:30:18 +01:00
Matthias Hochsteger
c274126487 Don't allow MPI-parallel GUI 2019-02-12 15:04:34 +01:00
Joachim Schöberl
c6d49734fb default ctor for NgMPI_Comm 2019-02-12 08:03:20 +01:00
Joachim Schöberl
e9f352d8f3 order of export 2019-02-11 23:59:32 +01:00
Joachim Schöberl
9b8f273b14 mpiwrapper 2019-02-11 22:12:29 +01:00
Joachim Schöberl
7aa5c536a8 timers 2019-02-11 21:38:05 +01:00
Joachim Schöberl
9ced2f561f mpi_wrapper 2019-02-11 21:37:28 +01:00
Michael Neunteufel
e8f6ca5c1b merge master 2019-02-11 09:16:22 +01:00
Michael Neunteufel
ba26ddd834 Merge remote-tracking branch 'gitlab/master' into get_surface_point 2019-02-11 09:12:09 +01:00
Michael Neunteufel
9d7c851bd9 (hopefully) fixed point in quad for the last time 2019-02-11 09:11:57 +01:00
Joachim Schöberl
9500f8d8f2 handle 2 ranks case 2019-02-08 22:12:00 +01:00
Joachim Schöberl
8a165ef8f1 subcomms 2019-02-08 20:24:54 +01:00
Joachim Schöberl
bab9d41b1b why was SubComm that complicated ? 2019-02-08 17:20:13 +01:00
Joachim Schöberl
f661e4a30d distribute 2019-02-08 14:22:43 +01:00
Joachim Schöberl
bf9cffa8de Merge branch 'getrefinementlevel' into 'master'
Getrefinementlevel

See merge request jschoeberl/netgen!106
2019-02-07 15:10:38 +00:00
Christopher Lackner
d5f1076e17 read tet10, pyramid13, prism15 and hex20 from gmsh 2019-02-06 19:13:51 +01:00
Joachim Schöberl
bb64612179 Merge branch 'typo' into 'master'
Typo and cout

See merge request jschoeberl/netgen!126
2019-02-06 14:09:13 +00:00
Lukas
8a711031cc replace cout by PrintMessage 2019-02-06 14:35:32 +01:00
Joachim Schöberl
e42f81b5d5 take care of tolerance in searchtree 2019-02-05 09:02:31 +01:00
Lukas
665acf811d fix typo 2019-02-04 13:12:31 +01:00
Joachim Schöberl
1303e92379 modernize Delaunay 2019-02-03 06:20:52 +01:00
Joachim Schöberl
cc732689c2 start modernizing delaunay 2019-02-02 16:24:30 +01:00
Lukas
e880bff515 DLL_HEADER for ng_comm 2019-02-01 16:12:30 +01:00
Joachim Schöberl
17a457c1fc timers 2019-01-31 18:41:20 +01:00
Lukas
214b5c452d Wrap MPI-communicator on netgen side 2019-01-30 21:03:28 +01:00
Lukas
bc77c763ae remove couts 2019-01-30 20:53:03 +01:00