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
Matthias Hochsteger
7623289c27
Timer to AdFront3::Inside
2021-06-04 11:33:39 +02:00
Matthias Hochsteger
17af3d0091
Timers, cleanup in delaunay
2021-06-04 11:33:39 +02:00
Matthias Hochsteger
39acabe406
split delaunay postprocessing code into smaller funtions
2021-06-04 11:33:34 +02:00
Matthias Hochsteger
3ce5b1958e
Initialize FlatArray members ( thx @mrambausek )
2021-06-02 15:45:36 +02:00
Matthias Hochsteger
32522368b9
Merge branch 'vol_bin_format' into 'master'
...
.vol.bin format using archiver
See merge request jschoeberl/netgen!385
2021-06-02 12:05:47 +00:00
Joachim Schoeberl
6dcc89ad04
some table py-features
2021-06-01 12:57:58 +02:00
Matthias Hochsteger
639bbb2c0a
.vol.bin format (using archiver)
2021-05-31 10:29:45 +02:00
Matthias Hochsteger
0aa63880c4
smaller tasks
2021-05-31 08:23:46 +02:00
Matthias Hochsteger
2c72c20c87
smaller tasks
2021-05-31 08:23:42 +02:00
Matthias Hochsteger
1045f68b97
TableCreator -> CreateSortedTable()
2021-05-31 08:23:35 +02:00
Matthias Hochsteger
073cbec108
remember search starting point in inside/outside marking after delaunay
2021-05-31 08:23:22 +02:00
Matthias Hochsteger
19176daa09
more timers in delaunay
2021-05-31 08:23:16 +02:00
Matthias Hochsteger
e721d250f8
use tuple -> std::tuple
2021-05-31 08:23:09 +02:00
Matthias Hochsteger
eb87741b70
init allocsize in NgArray
2021-05-31 08:23:01 +02:00
Joachim Schoeberl
7c4f1cf53a
minimal export of Table
2021-05-30 22:15:21 +02:00
Joachim Schoeberl
9389ecdf62
rename to GenerateStructuredMesh for not intending to override
2021-05-30 19:41:23 +02:00
Joachim Schoeberl
c3984fcc5b
just use pointer for Array - iterators (on proposal of Matthias R)
2021-05-30 18:58:34 +02:00
Joachim Schoeberl
3258b27410
fix initialization order warning
2021-05-30 18:57:14 +02:00
Matthias Hochsteger
e272f0c704
fix RangeExceptions
2021-05-17 15:35:12 +02:00
Joachim Schöberl
14570f2bfb
Merge branch 'fix_badness_in_combineimprove2d' into 'master'
...
Use sum of badnesses and not average value in CombineImprove in 2D
See merge request jschoeberl/netgen!384
2021-05-14 16:15:03 +00:00
Matthias Hochsteger
f7a08df155
Use sum of badnesses and not average value in CombineImprove in 2D
2021-05-14 17:55:09 +02:00
Matthias Hochsteger
d1ee6efc14
parallel Cluster update
2021-05-12 10:56:34 +02:00
Matthias Hochsteger
db494f4239
more Timers in Mesh
2021-05-12 10:56:21 +02:00
Matthias Hochsteger
5bba076c9e
UpdateTopology - use TasksPerThread(4) -> faster table update
2021-05-12 09:42:38 +02:00
Matthias Hochsteger
99e001fc4c
TABLE -> Table
2021-05-11 18:21:40 +02:00
Matthias Hochsteger
c8406d3b10
replace NgArray and TABLE with Array and Table
2021-05-10 16:30:40 +02:00
Matthias Hochsteger
4b53c63fba
helper functions for table creation
2021-05-10 12:03:20 +02:00
Joachim Schoeberl
955eaa682c
edges/faces on per default
2021-05-06 22:22:14 +02:00
Joachim Schoeberl
5af2413481
disable edge/faces tables for Mesh class
2021-05-06 21:46:56 +02:00
Matthias Hochsteger
786013c857
add dependency for rules file
2021-04-30 18:33:55 +02:00
Matthias Hochsteger
2eb888a8bf
generate .cpp for meshing rules automatically during the build process
2021-04-29 14:30:44 +02:00
Matthias Hochsteger
4592123f68
Merge remote-tracking branch 'origin/master' into rules_files_not_matching_cpp
2021-04-28 11:21:15 +02:00
Matthias Hochsteger
acf2b39680
Fix cross-platform archiving
...
This is a non-backward compatible change for archives on Windows!
2021-04-23 20:06:58 +02:00
Joachim Schoeberl
9033de843b
uniform refinement for quads
2021-04-18 17:53:26 +02:00
Christopher Lackner
0763e4a5d1
fix override warnings
2021-04-17 16:27:30 +02:00
Christopher Lackner
087a830a67
store cumulated angle
2021-04-15 22:48:16 +02:00
Christopher Lackner
6e87ff6ea7
allow spirals with extrusion using zones
2021-04-15 19:02:05 +02:00
Christopher Lackner
4e2d2943f6
fix csg extrusion
2021-04-13 12:11:10 +02:00
Christopher Lackner
7c6296f153
csg splinecurves -> shared_ptr
2021-04-12 15:51:40 +02:00
Joachim Schoeberl
2d9e32ba70
ArrayMem from BaseArray ctor
2021-04-09 21:30:29 +02:00
Matthias Hochsteger
190e22b06d
Find surface element of point: fix local coordinates for TRIG
...
TRIG and TRIG6 are handled differently, see nginterface_v2.cpp:1114
2021-04-09 14:14:04 +02:00
Joachim Schoeberl
d803150b87
red refinement, parent faces (thx Guosheng)
2021-04-09 08:06:30 +02:00
Christopher Lackner
daa0985a41
trace memory free only when array owns memory
2021-04-07 09:58:53 +02:00
Christopher Lackner
4fad6e0631
fix pickling on arm, store long type platform independent
2021-04-01 10:48:13 +02:00
Joachim Schoeberl
096b419f6e
parent edges for red refinement (thx Guosheng)
2021-03-31 07:50:24 +02:00
Matthias Hochsteger
44c10f663a
Boundarylayer 2d interface
2021-03-30 16:55:03 +02:00
Joachim Schoeberl
1f45601387
Array<int> ia(n); ia.Range(2, END-1)
2021-03-29 22:39:57 +02:00
Joachim Schöberl
7b62f39460
Merge branch 'fix_pointsels_in_2dgeom' into 'master'
...
Only add segment end points of 2d geometry to mesh as 0D-elements
See merge request jschoeberl/netgen!373
2021-03-29 19:38:41 +00:00
Christopher Lackner
15380a2618
Revert "more stable boundarylayer, also cut prisms at outside"
...
This reverts commit d2dc84b02c
.
2021-03-29 18:05:09 +02:00
Joachim Schöberl
f63734e4a0
Merge branch 'archive_localh' into 'master'
...
DoArchive for LocalH
See merge request jschoeberl/netgen!375
2021-03-29 12:46:18 +00:00
Christopher Lackner
d2dc84b02c
more stable boundarylayer, also cut prisms at outside
2021-03-29 14:02:00 +02:00
Christopher Lackner
001eaa32b6
DoArchive for LocalH
2021-03-29 13:55:23 +02:00
Christopher Lackner
c27fa6899b
Merge remote-tracking branch 'massimil/mleoni/indexIntegerType'
2021-03-29 11:55:10 +02:00
Matthias Hochsteger
88fd0a9cd3
2d boundary layer - some cleanup, average growth vectors along straight lines
2021-03-26 09:13:11 +01:00
Matthias Hochsteger
57a4d03d23
Merge branch 'fix_csg2d' into 'master'
...
Fix csg2d
See merge request jschoeberl/netgen!374
2021-03-24 11:35:28 +00:00
Matthias Hochsteger
5a0d07ca87
set hpref to 0.0 (fixes random values)
2021-03-24 12:04:21 +01:00
Matthias Hochsteger
b431a07c74
Fix starting point for intersection searching
2021-03-24 12:03:40 +01:00
Matthias Hochsteger
6cdeaf2d40
Only add segment end points of 2d geometry to mesh as 0D-elements
2021-03-24 10:49:46 +01:00
Christopher Lackner
a612444e77
FindElementOfPoint<1> for 2d meshes for curved segments
2021-03-23 15:08:20 +01:00
Massimiliano Leoni
a40544ddc5
Changed integer type of Element::index and Element2d::index
2021-03-23 12:11:32 +01:00
Matthias Hochsteger
bcd86a18fd
FindSurfaceElementOfPoint - use barycentric coordinates of already found volume element
...
Increases robustness for finding curved surface elements
2021-03-17 17:36:41 +01:00
Matthias Hochsteger
69bc02a74d
Increase bounding box for curved elements by 20% in element search tree
2021-03-17 17:35:30 +01:00
Matthias Hochsteger
98770dbf94
2d boundary layers
2021-03-16 18:22:14 +01:00
Matthias Hochsteger
c77da32463
skip fixed points when checking for mixed mesh
2021-03-16 18:09:07 +01:00
Christopher Lackner
0fc488e802
Merge remote-tracking branch 'stefanbruens/salome_upstreamable'
2021-03-15 09:36:01 +01:00
Christopher Lackner
0141546373
Merge remote-tracking branch 'stefanbruens/cleanup_includes'
2021-03-15 09:20:48 +01:00
Stefan Brüns
cf4d9eff33
Modernize code, replace Handle_<X> with Handle(X)
...
Same like c35297a8fb158be47772cb5fc9cee76ca88ff871
2021-03-12 23:13:01 +01:00
Stefan Brüns
3c13e41692
Remove duplicated includes from occgeom.hpp
...
Each of the duplicated header files have an include guard, so including
it twice is just a small waste of processing time.
2021-03-11 23:26:23 +01:00
Stefan Brüns
8abd52a47b
Remove two unused variables
2021-03-10 01:06:11 +01:00
Stefan Brüns
2767672286
Cleanup use of M_PI/PI defines
...
gprim/geom2d.cpp includes mystdlib.h, which already has a fallback define
for M_PI. As geomfuncs.cpp also includes mystdlib.h, use M_PI instead
of a truncated value.
occ/Partition_Loop2d.cxx already gets M_PI from the opencascade headers
(~everything includes Standard_Real.hxx, which includes Standard_math.hxx,
which sets _USE_MATH_DEFINES for Windows and includes math.h).
2021-03-10 00:46:58 +01:00
Stefan Brüns
883baf4189
Remove occconstruction.cpp from list of library sources
...
Since commit 0c3c3f32d1
("occ build visualization mesh") occgeometry.cpp does not contain
any compiled code, and it has not been used at least for 12 years.
As the file includes quite some header files removing it from the sources
should save some compile time.
2021-03-08 02:38:28 +01:00
Stefan Brüns
85e8c09ff6
Fix GetTimeCounter for Aarch64 variants
...
Neither GCC nor Clang define an __arm64__ preprocessor macro, but use
__aarch64__ (MSVC uses _MARM_64). Add a "64" suffix to the define, i.e.
NETGEN_ARCH_ARM64 to make it more obvious in only refers to aarch64, and
to be in line with NETGEN_ARCH_AMD64.
Replace the (Clang specific) __builtin_readcyclecounter with inline
asm:
- The function return cycles (i.e. varies with CPU frequency), not time
- It may return 0, depending on the PMU settings
- It may cause an illegal instruction, in case it is not trapped by the
kernel, e.g. on FreeBSD.
Reading the generic timer/counter CNTVCT_EL0 instead of PMCCNTR_EL0 avoids
these pitfalls. The inline asm works on GCC and Clang, instead of
Clang only for the builtin.
2021-03-03 17:30:33 +01:00
Matthias Hochsteger
3397e3bb9d
Merge branch 'fix_swapimprove' into 'master'
...
Fix SwapImprove
See merge request jschoeberl/netgen!370
2021-03-02 11:08:13 +00:00
Christopher Lackner
f11cb4fcfb
boundarylayers - inner corners at end of layer now possible too
2021-03-02 11:47:40 +01:00
Matthias Hochsteger
d7d12ac53d
Don't swap very bad elements in SwapImprove
...
Changes meshing -> new test results
2021-03-01 10:08:00 +01:00
Matthias Hochsteger
f8aa3d3159
util function NotTooBad() in mesh optimization
2021-03-01 09:33:47 +01:00
Matthias Hochsteger
f5432718c1
Fix ImproveMesh
2021-02-26 12:20:51 +01:00
Joachim Schoeberl
298cbc2523
less printing for face hierarchy
2021-02-22 08:30:00 +01:00
Joachim Schoeberl
5cc42f040d
fixing face refinement (by Guosheng)
2021-02-19 18:20:22 +01:00
Joachim Schoeberl
28c4b78410
mesh bisection with onlyonce option. otherwise, tet-bisection performs three bisection steps to obtain h/2
2021-02-19 15:06:20 +01:00
Matthias Hochsteger
75e6c8217f
Merge branch 'cleanup_dll_header' into 'master'
...
Clean up multiple definitions of DLL_HEADER
See merge request jschoeberl/netgen!369
2021-02-19 09:43:45 +00:00
Joachim Schoeberl
a354bf9e51
bisect face classification by permutation of 5
2021-02-19 10:04:45 +01:00
Joachim Schoeberl
4592bf90a8
subdivided faces are now working (boundary looks good)
2021-02-19 02:12:58 +01:00
Joachim Schoeberl
fede8b4d25
intermediate faces
2021-02-19 01:28:19 +01:00
Matthias Hochsteger
b2fea6dec1
Clean up multiple definitions of DLL_HEADER
...
- define DLL_HEADER only once in mydefs.hpp
- define/use NGLIB_API in nglib.h
- use NGCORE_API_EXPORT for explicit export of symbols
2021-02-18 14:53:38 +01:00
Joachim Schoeberl
979a695f62
fixing warnings
2021-02-18 10:30:01 +01:00
Joachim Schoeberl
d1c9b4b24f
no 'and' in C++ (but ok for gcc and clang ?)
2021-02-18 09:28:09 +01:00
Joachim Schoeberl
c7666ae99f
classify bisect face (thx Guosheng)
2021-02-18 08:43:22 +01:00
Joachim Schoeberl
e9e3d52b45
parent faces
2021-02-17 23:32:15 +01:00
Joachim Schoeberl
87e472b6fc
start face-hierarchy in Netgen
2021-02-17 14:54:14 +01:00
Joachim Schoeberl
2e69b39339
cleanup parent_edges
2021-02-10 19:40:38 +01:00
Joachim Schöberl
39063eb961
Merge branch 'mpi_zdes' into 'master'
...
0d Elements + MPI
See merge request jschoeberl/netgen!367
2021-02-10 13:35:06 +00:00
Joachim Schöberl
993c02b391
Merge branch 'geom2d_dont_need_spline_name' into 'master'
...
Don't need to specify string description of spline type in 2d geom
See merge request jschoeberl/netgen!363
2021-02-10 11:23:15 +00:00
Joachim Schöberl
dd455a7a62
Merge branch 'fix_mpi_curve' into 'master'
...
fix OCC curving with MPI
See merge request jschoeberl/netgen!366
2021-02-10 11:22:35 +00:00
Joachim Schoeberl
b03528e944
third parent edge
2021-02-09 21:14:26 +01:00
Christopher Lackner
0c2430f3dc
add std::any symboltable to Flags to store arbitrary objects
2021-02-08 15:44:15 +01:00
Lukas
0256ce1efc
also send 0d elements when distributing mesh
2021-02-08 12:05:27 +01:00
Lukas
d1bc4fc6ca
fix OCC curving with MPI
2021-02-08 11:36:48 +01:00
Joachim Schoeberl
145007b46a
use the right INT
2021-02-08 10:48:41 +01:00
Joachim Schoeberl
fd878079cb
edge hierarchy in mesh - Topology class, needs mesh.EnableTable('parentedges')
2021-02-08 09:41:23 +01:00
Matthias Hochsteger
6d30186279
allow cd2names in 2d meshes
2021-02-05 17:40:43 +01:00
Christopher Lackner
9e080ee9e0
add boundarylayer closure on pyramids outside
2021-02-05 12:16:41 +01:00
Christopher Lackner
77a7cb66d8
Merge branch 'master' of https://github.com/NGSolve/netgen
2021-02-05 12:10:37 +01:00
Christopher Lackner
1d9281f412
localh as shared_ptr in mesh
2021-02-05 12:10:22 +01:00
Joachim Schoeberl
25011c8407
arm-simd: HSum, tuple support
2021-02-05 11:59:03 +01:00
Joachim Schoeberl
22aee3b3a5
simd-mapping of point elements
2021-02-05 11:42:45 +01:00
Matthias Hochsteger
221d3f5a9a
delete pointelements after parallel mesh send (TODO: send pointelements!)
2021-02-02 18:59:32 +01:00
Matthias Hochsteger
4619525280
allow empty names in mesh file
2021-02-02 18:58:54 +01:00
Michael
5023856432
improve curving trigs with u,v coordinates by better initial guess
2021-02-01 15:29:17 +01:00
Matthias Hochsteger
7739aaedf7
SplineGeometry - also add point elements with empty names to mesh
2021-02-01 11:27:31 +01:00
Joachim Schöberl
9a9828d3af
some more arm-simds
2021-01-31 16:31:47 +01:00
Joachim Schöberl
18f5a933a9
arm-simd working
2021-01-30 21:02:49 +01:00
Joachim Schöberl
f53c069308
prepare SIMD for arm64
2021-01-30 20:05:28 +01:00
Christopher Lackner
18dc32c51a
Add RestrictHLine function in Python
2021-01-26 15:33:21 +01:00
Christopher Lackner
b58c35831d
Don't need to specify string description of spline type in 2d geom
2021-01-26 11:27:46 +01:00
Christopher Lackner
d1d3253408
throw if optimize2d is called without geometry
2021-01-26 11:23:46 +01:00
Joachim Schöberl
5e489319c6
Merge branch 'fix_csg2d' into 'master'
...
Fix CSG2d bugs
See merge request jschoeberl/netgen!362
2021-01-15 14:50:18 +00:00
Matthias Hochsteger
12ebcd0d68
Fix oracle function and intersection bug in csg2d
2021-01-14 17:11:46 +01:00
Matthias Hochsteger
e745d16c6d
manually cut view vector with clipping plane (more accurate, also working when visualizing clipping plane vectors)
2021-01-13 16:48:16 +01:00
Christopher Lackner
b7fab39876
formatting of vector and complex output on click
2021-01-13 13:24:38 +01:00
Matthias Hochsteger
36aa8658b7
Print function names and surface/volume evaluation
2021-01-13 10:58:13 +01:00
Matthias Hochsteger
1502fd705e
some debug messages
2021-01-12 18:08:51 +01:00
Matthias Hochsteger
96b9be9f9c
[WIP] Fix oracle function in csg2d
2021-01-12 18:08:39 +01:00
Matthias Hochsteger
e5d339ed99
Print function value on double click
2021-01-08 08:30:47 +01:00
Joachim Schöberl
ea7f6c1e94
fnma intrinsic for avx512
2020-12-22 13:06:08 +01:00
Joachim Schöberl
c1c10174be
FNMA asm-instruction
2020-12-22 09:37:21 +01:00
Christopher Lackner
7bd454e385
use relative tolerance in identifypoints
2020-12-18 15:58:51 +01:00
Matthias Hochsteger
94ecf8de92
Fix private linking of Python
...
The CMake export of Interface libraries also exports PRIVATE build
settings, which leads to build errors with non-existing include paths and .lib files for binary distributions.
Use the work-around mentioned here to circumvent this behavior:
https://gitlab.kitware.com/cmake/cmake/-/issues/15415#note_849405
2020-12-18 11:05:10 +01:00
Joachim Schöberl
d30accdc1a
Merge branch 'apple_silicon' into 'master'
...
Support for Apple M1
See merge request jschoeberl/netgen!359
2020-12-16 20:47:21 +00:00
Matthias Hochsteger
eb6ac164e7
int64_t for masks
2020-12-16 21:00:12 +01:00
Matthias Hochsteger
d97a9a6594
Alignment for generic SIMD classes
2020-12-16 17:20:18 +01:00
Matthias Hochsteger
e68d8cea9b
workaround for missing intrinsic on GCC 7
2020-12-16 10:58:01 +01:00
Matthias Hochsteger
9c0dbec8c9
Fix SIMD<mask64> ctor and Unpack
2020-12-15 15:31:17 +01:00
Christopher Lackner
bf855efd1b
fix usage of uninitialized value (valgrind)
2020-12-15 15:07:48 +01:00
Matthias Hochsteger
dbe894fea3
Support for Apple M1
2020-12-15 10:43:11 +01:00
Matthias Hochsteger
1b55c51da5
remove AlignedAlloc, use alignas
2020-12-15 09:40:43 +01:00
Matthias Hochsteger
1f3aebcec0
Fix AVX-Operators for int64_t simd (use generic ones)
2020-12-15 09:40:43 +01:00
mhochsteger
f213a7a5b1
fix fabs for AVX on Windows
2020-12-14 15:50:27 +01:00
Matthias Hochsteger
248145bbf0
fix wrong simd operators
2020-12-14 12:47:53 +01:00
Matthias Hochsteger
fc44eb95df
simd - array and variadic ctor
2020-12-11 23:12:34 +01:00
Matthias Hochsteger
2d667a08dc
move (refactored) SIMD headers from ngsolve into ngcore
2020-12-11 20:54:41 +01:00
Christoph Wintersteiger
657360818d
rewrite loop to avoid index correction
2020-12-02 17:51:47 +01:00
Joachim Schöberl
cc85def275
Merge branch 'fix_surf_read' into 'master'
...
Fix .surf file reading.
See merge request jschoeberl/netgen!354
2020-11-30 18:41:56 +00:00
Matthias Hochsteger
1c6051371e
updateSignal for Mesh class
2020-11-27 16:40:17 +01:00
Christopher Lackner
7ae460b2e5
Fix .surf file reading.
...
See https://ngsolve.org/forum/ngspy-forum/1275-bug-surf-file-read-incorrectly
2020-11-27 15:28:48 +01:00
Christopher Lackner
cb0d8295bf
fix hashing of bitarray (uninitialized value in HashArchive & random
...
values at end)
2020-11-25 22:07:07 +01:00
Joachim Schöberl
d0776bd726
Merge branch 'memory_tracing' into 'master'
...
Memory tracing
See merge request jschoeberl/netgen!350
2020-11-25 18:20:29 +00:00
Matthias Hochsteger
fbeb6137eb
Fix SwapImprove2
...
Don't allow swaps if an adjacent element was deleted in the current
optimization pass. Also update test restults.
2020-11-25 17:55:44 +01:00
Matthias Hochsteger
91f127ef71
memory tracer - fix memory accumulation of children
2020-11-25 14:34:29 +01:00
Matthias Hochsteger
b55264e0ee
memory tracing - handle multiple consecutive tracers correctly
2020-11-24 19:20:21 +01:00
Matthias Hochsteger
efdc57885a
memory tracing - store parents array instead of children table
2020-11-24 17:12:39 +01:00
Matthias Hochsteger
916eb09f1e
Merge remote-tracking branch 'origin/master' into memory_tracing
2020-11-24 15:31:00 +01:00
Christopher Lackner
2287c5c0c9
boundarylayers - fix inverted tets
2020-11-24 11:58:26 +01:00
Christopher Lackner
7e78056ade
Boundarylayer grows pyramids if created on interior bnd
2020-11-23 23:48:49 +01:00
Christopher Lackner
922ad16213
if more memory is deallocated than allocated set memtracer to 0 not
...
negative values
2020-11-21 22:32:41 +01:00
Christopher Lackner
a69cdc9000
mem tracing compile time option, simplify by MemoryTracer as member
2020-11-21 15:49:07 +01:00
Christopher Lackner
a394ffedef
Merge branch 'master' into memory_tracing
2020-11-19 23:05:33 +01:00
Christopher Lackner
e7b9baa93b
remove another reference of resized array
2020-11-19 22:53:14 +01:00
Christopher Lackner
3440a43e99
don't use (maybe invalidated) reference after array resize
2020-11-19 22:36:30 +01:00
Joachim Schöberl
79542999f5
Merge branch 'boundarylayers' into 'master'
...
Boundarylayers
See merge request jschoeberl/netgen!349
2020-11-19 20:26:13 +00:00
Joachim Schöberl
f5771dca1e
fix for 2D curves with same sub-domain on both sides
2020-11-19 20:07:09 +01:00
Matthias Hochsteger
87623981a6
export PajeTrace.WriteMemoryChart() to python
2020-11-19 19:29:04 +01:00
Matthias Hochsteger
f0152baacf
mem tracing - TraceMemorySwap helper function
2020-11-19 17:35:29 +01:00
Matthias Hochsteger
6f98123e98
mem tracing - use topological sorting, some fixes
2020-11-19 16:16:39 +01:00
Matthias Hochsteger
b00c56a012
mem tracing - set name for tempmesh in delaunay
2020-11-19 14:58:16 +01:00
Matthias Hochsteger
a17066a387
html chart for peak memory consumption, some Array tracing fixes
2020-11-19 14:57:45 +01:00
Matthias Hochsteger
f143995f27
clean up memory tracing
2020-11-18 21:45:00 +01:00
Matthias Hochsteger
1a93fb3fa5
first attempt on memory tracing
2020-11-18 20:20:35 +01:00
Christopher Lackner
609cbbcadf
rewrite create boundarylayer function (now more efficient and stable
...
and easier)
2020-11-17 18:43:39 +01:00
Christopher Lackner
0d48924392
Merge branch 'use_segmentindex' into boundarylayers
2020-11-17 15:25:19 +01:00
Christopher Lackner
ee430a6e1e
use segmentindex as index for mesh.segments array
2020-11-17 15:24:44 +01:00
Matthias Hochsteger
22d6303c5c
bugfix in csg2d
...
handle degenerate quadratic equation in intersection of spline and
segment correctly
2020-11-13 16:14:30 +01:00
Christopher Lackner
0d339a7443
Merge branch 'master' into boundarylayers
2020-11-13 13:24:01 +01:00
Matthias Hochsteger
de76069283
CSG2d bugfix
...
Fixes bug in IsInside(p) test for splines if p lies on an edge of the surrounding triangle.
Do a fast check using (new) function IsCloseToTrig() instead of IsInsideTrig().
2020-11-11 16:03:09 +01:00
Christopher Lackner
7beb82af04
Merge branch 'master' into boundarylayers
2020-11-11 12:09:59 +01:00
Joachim Schöberl
f97601bca2
Merge branch 'hpref_surface_geom' into 'master'
...
add hp refinement possibility for surface geometry
See merge request jschoeberl/netgen!344
2020-11-06 11:21:19 +00:00
Joachim Schöberl
7351067722
Merge branch 'map_segment_si' into 'master'
...
map segment si as well, not only surface element index
See merge request jschoeberl/netgen!346
2020-11-06 11:20:06 +00:00
Matthias Hochsteger
6199c7f66b
csg2d interface
2020-11-05 14:59:58 +01:00
Matthias Hochsteger
8b14f399c1
csg2d - fix bug in getNonIntersectionVertex()
...
If a loop has no non-intersecting vertex, a new one is inserted
-> set all vertex properties correctly (info, spline)
2020-11-03 18:43:23 +01:00
Matthias Hochsteger
45059fa7af
csg2d - fix CleanupResult
...
Check for more edge properties (maxh, bc etc.) before removing
"intermediate" and unnecessary vertices
2020-11-03 18:43:23 +01:00
Christopher Lackner
37ae505d5a
map segment si as well, not only surface element index
2020-11-03 17:32:07 +01:00
Christopher Lackner
3dec7c447e
map segment si as well, not only surface element index
2020-11-03 17:29:58 +01:00
Christopher Lackner
9578e4a41d
add project to boundary in boundarylayer and correctly treat inverse boundaries
2020-11-03 12:28:13 +01:00
Joachim Schöberl
b855b419da
Merge branch 'save_load_bbbnd' into 'master'
...
Save load bbbnd
See merge request jschoeberl/netgen!345
2020-11-02 09:43:04 +00:00
Michael
10c0fd350a
save/load pointelements
2020-10-30 15:28:00 +01:00
Michael
31c72299c4
add hp refinement possibility for surface geometry
2020-10-30 14:10:52 +01:00
Matthias Hochsteger
47632a06aa
fix index error in cgns import
2020-10-27 14:54:25 +01:00
Joachim Schöberl
f51ad8eed5
Merge branch 'fix_bisect_quad' into 'master'
...
add GeomInfo for bisecting quads
See merge request jschoeberl/netgen!343
2020-10-27 10:38:38 +00:00
Michael
4a1d3cdcb2
save/load mesh bbbnd
2020-10-27 07:57:17 +01:00
Michael
a3391519f0
add GeomInfo for bisecting quads
2020-10-27 07:54:26 +01:00
Joachim Schöberl
cddfb4a0b5
fixing delaunay2d point search, non-parallel for small meshes
2020-10-26 11:20:12 +01:00
Joachim Schöberl
de83f0ca14
Delaunay2d also for small sub-domains
2020-10-25 16:31:47 +01:00