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
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
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
Christopher Lackner
ec3d7c3ec9
boundarylayer fixes
2020-07-14 21:30:26 +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
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
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
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
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
267e8b33fb
cmake - use git to generate version string
2020-05-18 15:55:40 +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
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
Michael
cb015c95d0
export update method for mesh
2020-03-30 20:44:39 +02:00
Christopher Lackner
1f78f900dd
mesh identify periodic for non tet meshes
2020-03-19 18:12:55 +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
db5ad09b79
Initial CGNS format read support
2020-03-11 13:39:40 +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
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
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
Matthias Hochsteger
2d97eeaa77
Fix Windows debug build
2019-12-13 15:40:12 -08:00
Christopher Lackner
79b1d22185
some more python Vec and Pnt arithmetic
2019-12-10 14:04:53 +01:00
Joachim Schöberl
64171d203b
fix copy ctor HPRefElement
2019-12-06 16:05:08 +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
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
05e6456ec2
Vec3d to Vec<3>, comparison operator for Vec<>
2019-11-27 14:47:24 +01: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
6303b9d926
some default implementations for basegeometry
2019-11-18 11:14:02 +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
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