Commit Graph

4664 Commits

Author SHA1 Message Date
Matthias Hochsteger
52f21d6811 Merge branch 'StefanBruens-fix_aarch64_gettimecounter' 2021-03-15 08:17:42 +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
4c134567fd Merge remote-tracking branch 'origin/master' 2021-03-02 09:39:12 +01:00
Matthias Hochsteger
bfa88c88eb No write check on install dir with USE_SUPERBUILD=OFF 2021-03-02 09:29:09 +01:00
Matthias Hochsteger
3cbab4e225 No write check on install dir with USE_SUPERBUILD=OFF 2021-03-02 09:27:14 +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
2919ceb7cd Merge branch 'any_flags' into 'master'
add std::any symboltable to Flags to store arbitrary objects

See merge request jschoeberl/netgen!368
2021-02-08 15:20:11 +00: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
Joachim Schöberl
40f3d3ee4d Merge branch 'improve_curving_start' into 'master'
improve curving trigs with u,v coordinates by better initial guess

See merge request jschoeberl/netgen!365
2021-02-01 14:44:02 +00: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