Commit Graph

241 Commits

Author SHA1 Message Date
Joachim Schoeberl
a2ea0c407a more general ClosedHashTable, e.g. hash for tuples 2024-12-29 15:42:21 +01:00
Joachim Schoeberl
a5ce9915d1 compare PointIndex only with PointIndex 2024-12-28 22:58:44 +01:00
Joachim Schoeberl
75032f9905 operators +/- for PointIndex 2024-12-28 21:26:05 +01:00
Joachim Schoeberl
2291221719 fixes for PointIndex::BASE=0 2024-12-28 00:11:26 +01:00
Joachim Schoeberl
ceddf31f87 PointIndex 2024-12-27 18:05:04 +01:00
Joachim Schoeberl
cb8c7850ba fix (false) warnings 2024-07-20 10:25:45 +02:00
Matthias Hochsteger
163135981e Fix GIL issues in GenerateMesh() functions
Functions with a python typed argument (kwargs in this case) cannot use
  py::call_guard<py::gil_scoped_release>()
because it means, the GIL is not held when the function returns (and
cleans up arguments/temporary variables).

Thus, remove the global call guard and create a local variable
  py::gil_scoped_release gil_release;
after arguments are processed and before meshing starts.

This local variable is destroyed before the function returns
(acquiring the GIL again).
2024-06-21 11:36:37 +02:00
Joachim Schoeberl
c87aea14eb rename INT to IVec (avoiding windows name conflict) 2024-02-12 07:36:26 +01:00
Matthias Hochsteger
960fe8a342 Reset MeshTopology before 2d optimize 2023-09-18 13:58:43 +02:00
Christopher Lackner
95ca834605 move namespaces in meshing.hpp into headers 2023-09-04 13:43:47 +02:00
Hochsteger, Matthias
90729810d4 Archive with nondefault constructor 2023-08-28 10:02:22 +02:00
Joachim Schoeberl
e1f7935f0b fixing warnings 2023-08-05 12:01:01 +02:00
luz paz
3230021dec Fix typos
Found via `codespell`
2022-09-08 11:08:25 -04:00
Matthias Hochsteger
b694b4667a rework build system, separate gui and non-gui code
move fieldlines code to meshing dir

move visualization function pointers to meshing directory

DLL_HEADER -> NGGUI_API in visualization lib

move soldata.hpp to meshing

update occ, no freetype necessary anymore
2022-05-05 14:39:31 +02:00
luz paz
4033fac1b3 Fix various typos
Found via `codespell -q 3 -S ./external_dependencies/pybind11 -L alledges,allright,ane,anormal,ans,apoints,ba,boxs,cancle,childs,co-ordinate,co-ordinates,daty,enty,filld,hel,identifyable,ist,linz,lod,ned,nd,selt,statics,suround,thev,thist,thisy,timere,upto,wel`
2022-03-25 18:22:05 -04:00
mhochsteger@cerbsim.com
cf59f297a7 use std::filesystem::path 2022-02-23 11:56:00 +01:00
Matthias Hochsteger
8e38334b9a Merge branch 'add_csg_solid_maxh' into 'master'
Add maxh property to Solid2d

See merge request jschoeberl/netgen!464
2021-12-22 10:55:32 +00:00
Joachim Schoeberl
1c36ff9868 increase meshsize boundingbox in 2D 2021-11-30 18:39:12 +01:00
Matthias Rambausek
e30daf4232 solid2d gets its own maxh parameter such that maxh is also respected inside the domain 2021-11-18 09:25:17 +01:00
Christopher Lackner
bd29763b16 Add std::any to py::object caster for archive registered types 2021-09-28 22:34:11 +02:00
Christopher Lackner
9d48602a2a Add NetgenGeometry.RestrictH function 2021-09-08 22:12:45 +02:00
Matthias Hochsteger
f53dad83ae layer property for Solid2d 2021-09-01 14:38:45 +02:00
Christopher Lackner
aca46c49c8 add SetDomainLayer for geom2d 2021-09-01 14:34:30 +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
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
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 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
Matthias Hochsteger
7739aaedf7 SplineGeometry - also add point elements with empty names to mesh 2021-02-01 11:27:31 +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
Matthias Hochsteger
12ebcd0d68 Fix oracle function and intersection bug in csg2d 2021-01-14 17:11:46 +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
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
f5771dca1e fix for 2D curves with same sub-domain on both sides 2020-11-19 20:07:09 +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
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
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
Joachim Schöberl
de83f0ca14 Delaunay2d also for small sub-domains 2020-10-25 16:31:47 +01:00
Joachim Schöberl
25342f7c3f speeding up many small domains 2020-10-22 12:04:32 +02:00
Christopher Lackner
9a39b81615 fix set csg2d pinfo 2020-10-19 17:34:11 +02:00
Christopher Lackner
39be1fd3c9 add PointInfo for csg2d for maxh and name in points 2020-10-19 16:32:42 +02:00
Matthias Hochsteger
9d5661fdc5 Fix maxh issue for splines 2020-10-19 13:19:25 +02:00
Matthias Hochsteger
2b5d00b259 csg2d - add points as 0d-elements to mesh 2020-10-19 10:41:44 +02:00
Joachim Schöberl
c842de7c3d Merge branch 'optimize_calcpartition' into 'master'
optimize CalcPartition() and PartitionBoundary()

See merge request jschoeberl/netgen!340
2020-10-17 05:44:33 +00:00
Matthias Hochsteger
dab18a1c8a optimize CalcPartition() and PartitionBoundary()
new test results (2d meshing behaviour is changed with this commit)
2020-10-16 18:48:22 +02:00