Schöberl, Joachim
69f990d8bf
Merge branch 'fix_meshing_bug' into 'master'
...
Fix meshing bug (close surface on boundary)
See merge request ngsolve/netgen!508
2022-07-06 16:27:03 +02:00
Matthias Hochsteger
47de18a508
Avoid loading geometry from mesh file twice
...
Ng_LoadMesh() tries to read the geometry from the mesh file. If it was
read before by Mesh::Load(), the preloaded geometry is replaced by
ng_geometry (which might be garbage)
This is a mere workaround, not a clean solution (Mesh::Load() should
handle everything, including MPI distribution of geometry)
2022-07-06 14:07:17 +02:00
Matthias Hochsteger
99e463146f
Fix meshing bug (close surface on boundary)
2022-07-05 12:12:13 +02:00
Matthias Hochsteger
7eb76b67c7
DLL_HEADER for Mesh::SetLocalH
2022-06-21 01:53:58 -07:00
Matthias Hochsteger
c6a4f90915
fix FillCloseSurface for multiple identifications
2022-06-09 15:32:41 +02:00
Christopher Lackner
c71d142738
fix double segments in getedgetangent of boundarylayer
2022-06-09 15:32:41 +02:00
Christopher Lackner
a3408b537a
fixes for boundarylayer edge tangent computation and some more
2022-06-09 15:32:41 +02:00
von Wahl, Henry
c9776a7c86
add some DLL_HEADER
2022-05-20 20:26:43 +02:00
Christopher Lackner
95be76d8ee
surface color to mesh from geometry
2022-05-10 18:18:29 +02:00
Joachim Schoeberl
bac77b1f58
define ng_tcl_volatile, ...
2022-05-07 19:54:43 +02:00
Joachim Schoeberl
1a634c1957
Tcl_FreeProc + volatile/static/dynamic constants of correct type
2022-05-07 19:45:38 +02:00
Joachim Schoeberl
03332c1146
define type Tcl_FreeProc
2022-05-07 19:40:16 +02:00
Joachim Schoeberl
4f09633b80
remove old mpi-wrapper
2022-05-06 18:21:44 +02:00
Christopher Lackner
9b44069e54
fix tuple creation in return color
2022-05-06 17:47:50 +02:00
Christopher Lackner
c61753d89d
FD color gives 3-tuple, transparency as separate property
2022-05-06 17:14:10 +02:00
Joachim Schoeberl
cad2391e34
unify MPI
2022-05-06 16:39:06 +02:00
Matthias Hochsteger
165947295e
move ngtcl.hpp interface to meshing/visual_interface.hpp
2022-05-06 12:23:50 +02:00
Matthias Hochsteger
22e57a1159
Don't load gui libraries when importing netgen
2022-05-06 10:59:59 +02: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
Matthias Hochsteger
233dba2408
handle multiple closesurface identifications correctly
2022-05-05 11:21:48 +02:00
Joachim Schoeberl
aa00749f97
fix some deprecated
2022-04-29 13:05:38 +02:00
Joachim Schoeberl
ab7f1be9ab
fix topology for deprecated functions
2022-04-29 12:23:26 +02:00
Joachim Schoeberl
f082d89326
fix deprecaed in clusters
2022-04-29 12:06:05 +02:00
Joachim Schoeberl
712f6d4c87
no deprecated call in header
2022-04-29 07:20:52 +02:00
Joachim Schoeberl
bac314a666
fix range-check exception for 0-sized array
2022-04-26 23:26:19 +02:00
Joachim Schoeberl
41bd58dd31
paralleltop also in sequential version - only tye type
2022-04-26 23:10:49 +02:00
Joachim Schoeberl
cf6c69ed69
paralleltop also in sequential version - only tye type
2022-04-26 23:04:11 +02:00
Joachim Schoeberl
ab5b653133
paralleltop also in sequential version - only tye type
2022-04-26 22:58:02 +02:00
Joachim Schoeberl
76c0c52bed
paralleltop also in sequential version
2022-04-26 22:45:08 +02:00
Joachim Schoeberl
fd77d17e2b
MPI unification
2022-04-26 22:07:31 +02:00
Joachim Schoeberl
eef95eed52
more mpi from ngcore
2022-04-26 16:28:52 +02:00
Joachim Schoeberl
e0b6562b99
polish topology
2022-04-22 22:39:06 +02:00
Joachim Schoeberl
2ee9dbeafd
little cleanup
2022-04-21 17:59:23 +02:00
Joachim Schoeberl
1afcb30102
less copying
2022-04-21 17:16:26 +02:00
Joachim Schoeberl
054386388e
less hash-table searching in buildedges
2022-04-21 16:25:52 +02:00
Joachim Schoeberl
0605097bdc
Topology: use non-copying access functions, take care of 0/1 - based indexing
2022-04-21 12:28:56 +02:00
Joachim Schoeberl
6fd99a5a29
some modernization of Topology
2022-04-21 11:37:38 +02:00
Christopher Lackner
27a6d29187
fix occ closesurfaces ending in a larger plane
2022-04-20 17:18:44 +02:00
Matthias Hochsteger
39cc7ae0a3
remove (outdated and untested) sequential optimization code
2022-04-15 10:36:20 +02:00
Matthias Hochsteger
63133b5058
return before building boundary edges
2022-04-15 10:30:38 +02:00
Matthias Hochsteger
7e8a547a91
fine grained parallelization when meshing multiple domains
2022-04-15 10:28:13 +02:00
Matthias Hochsteger
a7a5067830
Call FindOpenElements before each optimization step
2022-04-14 17:40:22 +02:00
Matthias Hochsteger
9cc6fc933d
evalute localh in multiple points and take average
...
- also apply combine improve (2d) in both directions
- new test results
2022-04-13 12:44:45 +02:00
Joachim Schoeberl
9f9ad8fa2e
return mesh.Coordinates returns py::array
2022-04-12 07:21:14 +02:00
Joachim Schoeberl
c29e93dd2b
mesh point coordinates as numpy - array
2022-04-12 07:05:40 +02:00
Christopher Lackner
8c7d69c1d1
setnextmayortimestamp in mesh.ZRefine
2022-04-11 13:05:14 +02:00
Christopher Lackner
0135559dd6
find edges by searching for segments in both directions
2022-04-11 13:04:56 +02:00
Christopher Lackner
a5ba7075e4
explicitly specify projection boundaries
2022-04-11 13:04:38 +02:00
Christopher Lackner
f95e039c22
fix boundarylayer growth type
2022-04-11 13:04:21 +02:00
Christopher Lackner
32cb8d546e
Restrict growth vector only taking boundary of domain into account
...
Else it will restrict too much
2022-04-08 14:01:01 +02:00
mhochsteger@cerbsim.com
88f74fd6f2
boundarylayer - limit height
2022-03-31 21:12:43 +02:00
Christopher Lackner
d36b3d8b4e
[occ] inner point of surface -> surface mesh
2022-03-30 12:47:07 +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
Matthias Hochsteger
dcda14e6e7
fix occ identifications
2022-03-24 16:54:40 +01:00
Matthias Hochsteger
08f2835d8a
DLL_HEADER
2022-03-23 16:44:49 +01:00
Joachim Schoeberl
aa206c7bae
debug output with less priority
2022-03-18 08:21:03 +01:00
Joachim Schoeberl
7791840a4a
little mpi cleanup, meshing+distribution in one call
2022-03-15 09:13:09 +01:00
Christopher Lackner
842780feec
if only 1 locahl tree is set use the global one on all layers
2022-03-14 14:20:31 +01:00
mhochsteger@cerbsim.com
154302605f
separate localh trees for different layers
...
currenlty used in OCC geometries generated with
shape = netgen.occ.Compound(list_of_shapes, separate_layers=True)
2022-03-10 19:04:46 +01:00
Christopher Lackner
eea8054af6
add flag grow edges to python export of BoundaryLayers
2022-03-10 12:07:07 +01:00
mhochsteger@cerbsim.com
b76ea76219
restructure BoundaryLayer code
2022-03-09 13:15:48 +01:00
mhochsteger@cerbsim.com
1e6ab35f4d
Fix return value of ProjectPointGI
2022-03-07 21:08:04 +01:00
mhochsteger@cerbsim.com
262fec4601
CombineImprove2D - project only for edge points
2022-03-07 20:59:24 +01:00
mhochsteger@cerbsim.com
0a99c169b6
fix missing return value
2022-03-07 20:59:24 +01:00
Christopher Lackner
21b263a0ba
[occ] fix boundarylayer + curve
2022-03-07 17:25:41 +01:00
mhochsteger@cerbsim.com
8dd4c0c9e3
boundarylayer - calculate edge tangents on the fly
2022-03-07 17:24:36 +01:00
mhochsteger@cerbsim.com
97b9dae812
preserve Geometry after generating boundary layer
2022-03-07 16:04:21 +01:00
Matthias Hochsteger
8b8900e21d
Merge branch 'boundarylayer_updates' into 'master'
...
Boundarylayer updates
See merge request jschoeberl/netgen!488
2022-03-07 12:53:51 +00:00
Christopher Lackner
2ffd3b6589
fix edge interpolation of growthvectors in boundarylayer
...
(now without geometry)
2022-03-07 12:17:05 +01:00
mhochsteger@cerbsim.com
8e861d1773
generic implementation of InterpolateSurfaceGrowthVectors
2022-03-04 16:32:15 +01:00
mhochsteger@cerbsim.com
f0b10d696e
preserve volume elements in DivideMesh()
2022-03-04 15:46:29 +01:00
mhochsteger@cerbsim.com
d2348a7651
optimize occ surfaces individually again, update test results
2022-03-02 15:42:44 +01:00
Matthias Hochsteger
c6c8f52878
Merge branch 'fix_parallel_optimize2d' into 'master'
...
Fix parallel optimize2d
See merge request jschoeberl/netgen!487
2022-03-02 14:11:21 +00:00
mhochsteger@cerbsim.com
43382d4be8
fix parallel surface optimization with occ
2022-03-02 14:58:39 +01:00
mhochsteger@cerbsim.com
4e8fe77098
fix some warnings
2022-03-02 14:14:38 +01:00
Christopher Lackner
9730a383fd
geo vertices as pointelements not locked points
2022-03-02 11:34:02 +01:00
mhochsteger@cerbsim.com
36440970fb
boundarylayer - some more fixes on growth vector interpolation
2022-03-01 21:21:09 +01:00
Christopher Lackner
e8c9d8e1fc
really interpolate only tangential part...
2022-03-01 14:56:01 +01:00
Christopher Lackner
13a0b78e26
interpolate only tangential part of growth vector
2022-03-01 14:34:18 +01:00
Christopher Lackner
016b1692e2
fix point type of geo vertices (FIXEDPOINT) -> locked points
2022-03-01 13:23:06 +01:00
mhochsteger@cerbsim.com
bcedbfd189
Interpolate growth vectors only with OCC geometry
2022-02-28 21:34:18 +01:00
Christopher Lackner
3a86103392
interpolate tangential part of growth vector along edge
2022-02-28 17:41:18 +01:00
mhochsteger@cerbsim.com
dabb3b9dbf
Interpolate growth vectors on surfaces
...
also:
- clean up delaunay2d code (Use Point<2>, remove comments)
- implement CalcWeights() used to interpolate data from boundary points
to surface points
2022-02-28 17:41:18 +01:00
Christopher Lackner
2d70263cda
boundarylayers - don't project on not-in-surface-direction
2022-02-25 12:08:24 +01:00
Christopher Lackner
d6770fda0c
allow quad dominated meshing of faces
2022-02-25 10:50:51 +01:00
mhochsteger@cerbsim.com
0379b737eb
copy hglob, hmin, maxhdomain in Mesh::operator=
2022-02-25 10:00:41 +01:00
mhochsteger@cerbsim.com
7f5b288c51
fix GenerateBoundaryLayer for new OCC meshes with single segments (not one segment per adjacent face)
2022-02-24 19:28:34 +01:00
mhochsteger@cerbsim.com
231c6870d9
respect localh in CombineImprove()
2022-02-23 21:23:41 +01:00
mhochsteger@cerbsim.com
922a0c5c86
fix 2d edge swapping
2022-02-23 21:23:37 +01:00
Joachim Schöberl
afa018049b
Merge branch 'use_filesystem_path' into 'master'
...
use std::filesystem::path
See merge request jschoeberl/netgen!480
2022-02-23 13:34:23 +00:00
Christopher Lackner
ea7e980c8d
[occ] ZRefinement
2022-02-23 12:22:19 +01:00
mhochsteger@cerbsim.com
cf59f297a7
use std::filesystem::path
2022-02-23 11:56:00 +01:00
Joachim Schoeberl
1a44d665bb
returns mesh-data as Array (rather than std::vector)
2022-02-21 13:06:00 +01:00
mhochsteger@cerbsim.com
775b97f6b3
utility functions for webgui
2022-02-18 20:11:58 +01:00
mhochsteger@cerbsim.com
daa2c69714
fix parsing cd3names
2022-02-16 19:52:49 +01:00
mhochsteger@cerbsim.com
15efa3a8b7
DLL_HEADER for LocalH
2022-02-15 20:39:24 +01:00
Joachim Schöberl
cf8a6639a3
Merge branch 'fix_parallel_surfaceopt' into 'master'
...
fix parallel surface optimization
See merge request jschoeberl/netgen!476
2022-02-15 19:18:22 +00:00
mhochsteger@cerbsim.com
a68cd9f89a
fix parallel surface optimization
...
update test results
2022-02-15 19:09:53 +01:00
Christopher Lackner
4ebaefd10a
add meshing parameter giveuptolopenquads
2022-02-15 09:38:20 +01:00
Christopher Lackner
c856f9ae6e
Merge branch 'master' into free_pyramids
2022-02-15 09:15:11 +01:00
Christopher Lackner
e2040ae953
[occ] also keep color in merge if already set from shape
2022-02-14 18:24:02 +01:00
Christopher Lackner
3ee29a1ace
[occ] overwrite shape property name only if not already set in merge
2022-02-14 18:07:00 +01:00
Joachim Schoeberl
6b28275b88
double conversion on C++ side
2022-02-13 19:02:51 +01:00
Joachim Schoeberl
ff8708d76b
preallocate memory
2022-02-13 17:29:53 +01:00
Joachim Schoeberl
5d624e3078
reading via meshio
2022-02-13 16:31:55 +01:00
Christopher Lackner
e86585c715
allow free pyramids
2022-02-09 19:27:24 +01:00
mhochsteger@cerbsim.com
7a10afc720
clean up cd3names in mesh dtor
2022-02-09 09:41:05 +01:00
Christopher Lackner
3ab8808fa3
do not restrict mesh size on identified edges
2022-01-19 15:05:41 +01:00
mhochsteger@cerbsim.com
fd258a611f
bugfix in FillCloseSurface
...
- don't add prisms/hexes outside of current domain
- invert them when necessary
2022-01-19 15:05:25 +01:00
mhochsteger@cerbsim.com
5f202fd4ea
clear geom data in OCCGeometry::BuildFMap() (fixes broken meshing after Heal())
2022-01-17 10:02:11 +01:00
mhochsteger@cerbsim.com
439415bffe
fix OCC meshing with nglib
2022-01-14 11:47:22 +01:00
mhochsteger@cerbsim.com
2a77e9635a
Use 10000 edge divide factor again for OCC
2022-01-14 11:47:08 +01:00
mhochsteger@cerbsim.com
00e6d1d077
occ - fix bug in edge identification
2021-12-20 10:42:26 +01:00
mhochsteger@cerbsim.com
d467621edd
change interface for identifications
2021-12-16 20:54:19 +01:00
mhochsteger@cerbsim.com
b7448ce2c1
fix PropagateIdentifications after Glue
2021-12-16 18:35:43 +01:00
mhochsteger@cerbsim.com
bf261d533f
keep direction of identifications
2021-12-16 10:04:33 +01:00
mhochsteger@cerbsim.com
de813df0c2
add prisms for between closesurface identifications explicitly (no attached faces/edges needed as in prism mesh rules)
...
not active yet (still buggy for CSG)
2021-12-16 10:04:17 +01:00
mhochsteger@cerbsim.com
329364e8e2
occ - set domin/domout for edges in 2d meshes
2021-12-07 14:52:06 +01:00
mhochsteger@cerbsim.com
b8b802de6b
allow implicit convertion int->identifications type
2021-12-06 10:59:09 +01:00
mhochsteger@cerbsim.com
f5b7e27e5d
save FaceDescriptors in mesh file
2021-12-03 14:54:39 +01:00
mhochsteger@cerbsim.com
c0d6f1588d
occ - closesurface identification (prisms)
2021-11-30 20:26:26 +01:00
mhochsteger@cerbsim.com
1818ffd152
occ - fix meshing in parameter space, fix edge curve parameters
2021-11-29 16:04:26 +01:00
mhochsteger@cerbsim.com
06031e665a
set default bcname to valid string pointer, some occ tests
2021-11-29 11:13:40 +01:00
mhochsteger@cerbsim.com
9537ccdb7a
occ - allow closed edges in identified faces
2021-11-28 19:59:14 +01:00
Matthias Hochsteger
16b88e8e67
OCC Mesher Cleanup
2021-11-28 15:14:41 +00:00
Christopher Lackner
3c4fe43fcc
Fix loading of short mesh file names
2021-11-18 08:48:09 +01:00
mhochsteger@cerbsim.com
e0afa0a916
Use TextOutArchive to store OCCGeometry in mesh files
2021-11-11 10:04:39 +01:00
mhochsteger@cerbsim.com
17458889aa
Change interface of LoadFromMeshFile
...
Fetch the first (geometry identification) token only once (and not on each try to load a different type)
2021-11-10 18:37:24 +01:00
Joachim Schoeberl
478aaf7788
little polish
2021-11-07 00:16:57 +01:00
Joachim Schoeberl
50398c18c4
simplify edge/face-id types (just an int)
2021-11-06 15:52:35 +01:00
Joachim Schoeberl
bd564931f8
strings in FaceDescriptor (instead of ptrs)
2021-11-06 12:22:44 +01:00
Matthias Hochsteger
dc57935468
include gzsteram.h only where needed
2021-10-21 10:25:40 +02:00
Joachim Schoeberl
0b7d8d5a9b
fix Mirror for second-order meshes
2021-10-17 18:59:49 +02:00
Joachim Schoeberl
c20480c662
too fast with segment mapping
2021-10-15 22:10:57 +02:00
Joachim Schoeberl
95301e11ba
mesh.SecondOrder : fix Segment mapping
2021-10-15 18:52:20 +02:00
Joachim Schoeberl
f38d258d15
Mirror mesh: invert surface elements, update num vertices
2021-10-15 09:00:26 +02:00
Joachim Schoeberl
6aa2d07f9e
fix warning
2021-10-11 14:56:53 +02:00
Michael Neunteufel
ea9c0cf524
enable meshing parameters for OptimizeMesh2d
2021-10-08 09:50:53 +02:00
Matthias Hochsteger
41d9fbf258
DLL_HEADER in Element2d
2021-10-07 02:30:23 -07:00
Christopher Lackner
b4bf1172bc
fix length of occ dim2 boundaries
2021-10-04 15:52:56 +02:00
Christopher Lackner
e6a6ab89e6
write transparency in mesh file and also read it if avail
...
The indexing is a little weird but consistent to before so leave it
like this
2021-10-04 09:27:33 +02:00
Christopher Lackner
ec96feb7f4
occ colors also in netgen gui, also allow transparency
2021-10-03 12:58:33 +02:00
Christopher Lackner
bd29763b16
Add std::any to py::object caster for archive registered types
2021-09-28 22:34:11 +02:00
mhochsteger@cerbsim.com
6dfc78ca42
fix GetElementOfPoint (again)
...
- clearer code structure with helper functions FindElementXd
- fix broken search in 2d meshes (bug from last commit)
2021-09-23 18:38:48 +02:00
mhochsteger@cerbsim.com
00855acfec
fix GetSurfaceElementOfPoint
...
only call GetElementOfPoint, if there are volume elements (otherwise we get an endless loop of mutual function calls here...)
2021-09-23 09:15:04 +02:00
Christopher Lackner
6bbaa6bc69
fix GetSurfaceElementOfPoint with indices
2021-09-22 17:52:04 +02:00
mhochsteger@cerbsim.com
286f63f002
Restructure code in GetElementOfPoint
2021-09-22 17:06:20 +02:00
Joachim Schoeberl
375eb541e9
remove test-output
2021-09-21 14:39:35 +02:00
Joachim Schoeberl
781ea7103e
FaceDescriptor array to Python
2021-09-10 12:42:41 +02:00
Joachim Schoeberl
9b3578740f
a hex has 12 edges, doesn't it?
2021-09-09 11:49:48 +02:00