Joachim Schoeberl
b6b20be30b
IVec with HTArray
2024-07-16 19:20:07 +02:00
Joachim Schoeberl
e075d32f14
fix unused warning
2024-07-16 16:50:28 +02:00
Joachim Schoeberl
bac10cf1fb
go back to C-array (since tests fail)
2024-07-16 16:11:20 +02:00
Joachim Schoeberl
7968ae4588
use std::array in IVec (for 0-size handling)
2024-07-16 13:48:17 +02:00
Joachim Schoeberl
54d59cff1e
fix warnings
2024-07-16 13:03:49 +02:00
Joachim Schoeberl
20e0b3efa5
replace const string& by string_view in Flags and SymbolTable
2024-07-16 12:44:04 +02:00
Joachim Schoeberl
63986a4e5f
throw range exception via function call -> reduces code size
2024-07-16 10:18:16 +02:00
Joachim Schoeberl
304ce7364a
mpi-send of 0D-elements
2024-07-14 20:38:36 +02:00
Joachim Schoeberl
f1e06f0a6d
pickling 0D-elements
2024-07-12 18:21:46 +02:00
Matthias Hochsteger
da743467fb
Fix reading face_colors and face_transparencies for faces without attached geometry surface
2024-07-10 10:36:03 +02:00
Matthias Hochsteger
78832cb7c5
Fix building with mpi wrapper but without python support
2024-07-08 11:48:27 +02:00
Matthias Hochsteger
d987051f2b
Fix building without Python
2024-07-04 17:26:47 +02:00
Matthias Hochsteger
000a312dc2
Use same color for shifted faces in boundary layer generation
2024-07-04 15:00:50 +02:00
Christopher Lackner
3974191ffa
correctly check for degenerated edges
2024-06-27 21:00:52 +02:00
Matthias Hochsteger
a2d9455627
Fix compiling with cuda and active mem-tracer
2024-06-27 11:29:26 +02:00
Lackner, Christopher
32f291c66e
Merge branch 'binary_brep' into 'master'
...
allow reading of binary brep files
See merge request ngsolve/netgen!654
2024-06-24 18:28:10 +02:00
Joachim Schoeberl
f9d7d3a4fd
store newest vertex from bisection
2024-06-24 15:30:08 +02:00
Christopher Lackner
3709ea8f94
allow reading of binary brep files
2024-06-21 15:16:47 +02:00
Matthias Hochsteger
af5e003790
Fix GIL issue (see previous commit for details)
2024-06-21 11:51:12 +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
Matthias Hochsteger
c2f42f2f16
Backward compatibility for occ geometry loading (from mesh file)
2024-06-20 18:05:43 +02:00
Christopher Lackner
eff5e946f7
fix export of submesh faces
2024-06-20 11:12:01 +02:00
Joachim Schoeberl
cc3f27e514
comment occ.Mirror
2024-06-11 08:06:25 +02:00
Matthias Hochsteger
f5c9b87ee7
Fix build issue with gcc on AVX512
2024-06-10 10:48:33 +02:00
Matthias Hochsteger
eb98f59bc0
Add ng_mpi_native.hpp
2024-06-06 15:46:19 +02:00
Christopher Lackner
236f14553c
fix project on edge in MapSurfacemesh if no trafo is given
2024-06-03 17:19:41 +02:00
Matthias Hochsteger
571cbbe4df
Optional identification_name argument in Face::Offset to apply CLOSE_SURFACE identifications
2024-06-03 12:37:26 +02:00
Joachim Schoeberl
6d1c87f214
Offset - face with propagate properties
2024-06-02 15:56:10 +02:00
Joachim Schoeberl
f938b64397
Offset-wire
2024-06-02 10:50:22 +02:00
Joachim Schoeberl
82472c7905
undo std::ignore
2024-05-31 18:42:17 +02:00
Joachim Schoeberl
9a2dd3b63e
avoid warnings
2024-05-31 18:19:57 +02:00
Christopher Lackner
3bb804eeaf
add dict constructor of flags for implicit convertion back
2024-05-31 13:23:53 +02:00
Christopher Lackner
3029b5422a
allow nested flags from nested python dictionaries
2024-05-31 12:55:59 +02:00
Matthias Hochsteger
0e0ea2d5f8
Wrap more MPI functions
2024-05-31 10:17:01 +02:00
Matthias Hochsteger
fefea90133
Fix pyodide build
2024-05-29 20:32:32 +02:00
Matthias Hochsteger
f70200e5aa
Don't include MPI cxx symbols properly
2024-05-28 13:55:27 +02:00
Matthias Hochsteger
1e7624c7f5
Get rid of mpi4py compile-time dependency, disable MPI wrapper by default
2024-05-28 11:43:15 +02:00
Lisandro Dalcin
246dfd734d
mpi4py: Support limited API and ABI compatibility
2024-05-27 14:26:21 +03:00
Christopher Lackner
e404ce737b
export localh set/get from mesh
2024-05-24 08:30:24 +02:00
Matthias Hochsteger
eaa797d7f6
Wrap MPI_Comm_c2f
2024-05-23 10:37:42 +02:00
Matthias Hochsteger
1dc353d3c5
Remove output while generating fieldlines
2024-05-21 16:10:13 +02:00
Matthias Hochsteger
2072f70f7f
Fix building without MPI
2024-05-16 11:03:44 +02:00
Matthias Hochsteger
05c01ee884
Fix segfault when using more than 32 colors in colormap
2024-05-16 10:49:11 +02:00
Matthias Hochsteger
184a6ba4c5
Fix MPI code in paje trace
2024-05-16 09:35:58 +02:00
Matthias Hochsteger
f2ea9cde4c
Fix MPI code in paje trace
2024-05-16 09:18:07 +02:00
Matthias Hochsteger
a018931437
Utility function to check if MPI was loaded
2024-05-14 22:17:42 +02:00
Matthias Hochsteger
a80ae826c6
Remove MyMPI helper class
2024-05-14 22:02:08 +02:00
Matthias Hochsteger
5e6f2ee045
Fix mesh generation from GUI when building with MPI
2024-05-14 21:56:50 +02:00
Christopher Lackner
12aaaf1e6c
do not EdgeSwap with quads
2024-05-14 13:57:01 +02:00
Matthias Hochsteger
19731869d3
Utility header to convert to native mpi handles
2024-05-13 18:10:56 +02:00
Hochsteger, Matthias
335b926f8b
Runtime MPI wrapper
2024-05-13 13:43:53 +02:00
Schöberl, Joachim
08eec4460c
Merge branch 'uzerbinati/curved' into 'master'
...
Added ``curved'' field for Datalayout of Element and Elements2D
See merge request ngsolve/netgen!649
2024-05-06 18:31:46 +02:00
Joachim Schoeberl
19fcfc7f44
SetLevel returns old level
2024-05-05 21:41:05 +02:00
Joachim Schoeberl
bb2989e1c5
add 'items' to Flags, for same behavior as dict
2024-05-05 21:40:47 +02:00
Umberto Zerbinati
cdb5b74f53
Added ``curved'' field for Datalayout of Element and Elements2D
...
Signed-off-by: Umberto Zerbinati <zerbinati@maths.ox.ac.uk>
2024-05-02 12:28:06 +01:00
Joachim Schoeberl
331e47830e
fix warning by throwing
2024-04-27 15:13:17 +02:00
Christopher Lackner
f808a2bb64
Propagate maxh to children only in occgeom constructor
...
Allows resetting maxh to larger values again:
```
from netgen.occ import *
from ngsolve import *
b1 = Box((-1,-1,-1), (1,1,1))
b1.faces.Max(X).maxh = 0.1
b1.faces.Max(X).maxh = 0.2
geo = OCCGeometry(b1)
mesh = Mesh(geo.GenerateMesh(maxh=0.5))
Draw(mesh)
```
Needed for example in meshing app. Before it was not possible to set
maxh to larger value again.
2024-04-26 09:55:53 +02:00
Joachim Schoeberl
eef79e64f2
added DLL_HEADER
2024-04-19 09:46:02 +02:00
Joachim Schoeberl
65006d3436
hp/macro-refinement hierarchy routed through Python
2024-04-18 11:58:50 +02:00
Joachim Schoeberl
8045611375
added missing dll-header
2024-04-13 08:32:16 +02:00
Joachim Schoeberl
ce8eca4099
include cassertk
2024-04-12 09:55:38 +02:00
Joachim Schoeberl
a393a315d0
makePyTuple from BaseArrayObject
2024-04-04 15:20:17 +02:00
Hochsteger, Matthias
6e2eae70ad
Merge branch 'fix_blayer_meshopt' into 'master'
...
Fix blayer meshoptimization
See merge request ngsolve/netgen!647
2024-04-02 23:25:10 +02:00
Christopher Lackner
9b9ad1fd82
function to reset occ global shape properties
2024-04-02 22:46:55 +02:00
Matthias Hochsteger
78a3d24fde
Do bad element Optimization only when requested
2024-04-02 21:59:27 +02:00
Matthias Hochsteger
ff505f1e41
Add range check in table
2024-04-02 21:58:58 +02:00
Matthias Hochsteger
db500f3cae
Make /bigobj a public build flag again
2024-03-28 09:51:36 +01:00
Schöberl, Joachim
ea380ecb47
Merge branch 'explicit_edge_partition' into 'master'
...
[occ] allow giving explicit edge partition
See merge request ngsolve/netgen!645
2024-03-27 21:08:24 +01:00
Matthias Hochsteger
d8beec758e
Fix Mesh::operator=
...
- assign pointelements
- sometimes region names were not copied correctly
- add some basic pytests for Mesh.Copy()
2024-03-27 21:03:45 +01:00
Christopher Lackner
bfcd77ff9c
[occ] allow giving explicit edge partition
2024-03-27 14:55:29 +01:00
xiaodaxia
7c72410c84
no exporting compile options of ngcore
2024-03-27 11:32:17 +08:00
Matthias Hochsteger
7b54f95a27
Utility function to extract a subregion of the mesh
2024-03-25 18:02:33 +01:00
Matthias Hochsteger
29c6b8e06f
Fix Mesh::operator=
...
bcnames are now stored in FaceDescriptor (as string members, no
pointers), so the name mapping must be applied to materials/bcnames
(depending on the mesh dimension).
2024-03-25 18:00:29 +01:00
Matthias Hochsteger
afb2f2f0ea
Opencascade 7.8.0 compatibility
2024-03-25 10:19:25 +01:00
Matthias Hochsteger
e5513d9417
Print "Remove Illegal Elements" only when having illegal elements
2024-03-22 15:43:40 +01:00
Hochsteger, Matthias
b090bd1937
Propagate -fabi-version=xx when compiling with GCC
2024-03-20 18:30:17 +01:00
Christopher Lackner
11e8914dd8
face points need to have geominfo for face meshing (thx MrSmile)
2024-03-18 08:58:40 +01:00
Hochsteger, Matthias
d0ba2934df
Consistent penalty for illegal tets
2024-03-11 21:10:56 +01:00
Joachim Schoeberl
43b707bcfb
wrap inertia of occ-shape to Python
2024-03-07 12:39:56 +01:00
Hochsteger, Matthias
6b89d2cf62
Compatibility with Opencascade 7.8
2024-03-06 16:29:11 +01:00
Lackner, Christopher
a5c11df37e
Merge branch 'remove_search_tree_in_face_mapping' into 'master'
...
Remove search tree in face mapping
See merge request ngsolve/netgen!640
2024-03-06 15:22:28 +01:00
Christopher Lackner
5f0276179f
fix primary face computation in identification
2024-03-06 12:12:34 +01:00
Matthias Hochsteger
7e4f171b16
Remove search tree in face mapping
2024-03-06 11:20:20 +01:00
Christopher Lackner
bb7a3fe692
show properties in topology view in netgen gui
2024-03-05 14:38:25 +01:00
Christopher Lackner
1a213a1588
fix identifications write and load to step
2024-03-04 21:57:54 +01:00
Christopher Lackner
37df61b233
don't segfault on internal or external orientations in occ viewer
2024-03-04 19:49:40 +01:00
Matthias Hochsteger
4417b17d12
Fix order of members in MeshOptimize3d
2024-03-01 20:35:49 +01:00
Matthias Hochsteger
b8aa568626
Utility function to generate OCC shape triangulation -> always use same parameters
2024-02-29 17:19:47 +01:00
Matthias Hochsteger
13867ef1a0
Extra optimization steps for bad elements
2024-02-28 10:07:57 +01:00
Matthias Hochsteger
6be1c57999
Call CalcTotalBad only if testout is active
2024-02-23 18:26:07 +01:00
Matthias Hochsteger
0d481b1104
Use badness stored in Element
2024-02-23 18:20:14 +01:00
Matthias Hochsteger
d3ea87bd1e
Store mesh and goal im MeshOptimize3d
2024-02-23 17:42:06 +01:00
Matthias Hochsteger
23c6b96b47
Move RemoveIllegalElements to MeshVolume()
2024-02-23 17:39:43 +01:00
Matthias Hochsteger
e5b544e02b
Don't optimize when goal==OPT_LEGAL and all affected elements are legal
2024-02-23 17:01:40 +01:00
Joachim Schoeberl
4ff7a2261b
use IMeshTools in SetLocalMeshSize
2024-02-21 21:42:34 +01:00
Joachim Schoeberl
a65e61c95e
OCC generation of visualization mesh using IMeshTools_Parameters
2024-02-21 20:00:59 +01:00
Joachim Schoeberl
b959676534
check for infinite shape
2024-02-21 15:14:33 +01:00
Joachim Schoeberl
4f0b15ef55
use FlatArray for edges and faces in mesh interface V2
2024-02-21 08:41:17 +01:00
Joachim Schoeberl
6813c519b6
feature check macro for transition from INT to IVec
2024-02-20 08:47:20 +01:00
Matthias Hochsteger
4e31878f89
Utility function to split faces when they have more than two adjacent domains
2024-02-14 09:46:39 +01:00
Christopher Lackner
8e94de7a73
fix isendpoint check in boundarylayer code
2024-02-13 13:01:42 +01:00
Schöberl, Joachim
07fb5d698e
Merge branch 'throw_if_unbounded_domain' into 'master'
...
throw exception if surface triangulation cannot be built by occ
See merge request ngsolve/netgen!630
2024-02-13 10:07:53 +01:00
Christopher Lackner
803eb73d2d
allow internal edges on boundarylayer (for sphere, ellipsoid)
2024-02-13 09:35:44 +01:00
Christopher Lackner
ddc50aa651
throw exception if surface triangulation cannot be built by occ
2024-02-13 09:33:12 +01:00
Matthias Hochsteger
cee5d55b7d
Fix dangling reference in ZRefinement
2024-02-12 07:12:17 -08:00
Hochsteger, Matthias
dfaf270670
Remove windows.h include where possible.
2024-02-12 11:57:54 +01:00
Joachim Schoeberl
18262a526d
replace INT by IVec (cgns)
2024-02-12 07:44:26 +01:00
Joachim Schoeberl
c87aea14eb
rename INT to IVec (avoiding windows name conflict)
2024-02-12 07:36:26 +01:00
Schöberl, Joachim
b88535621f
Removewinheader
2024-02-11 11:02:18 +01:00
Joachim Schoeberl
97de13cf30
remove include<windows.h> from cpp-files
2024-02-10 20:55:45 +01:00
Joachim Schoeberl
e9ee45024c
include windows.h back to mystdlib
2024-02-10 20:52:45 +01:00
Joachim Schoeberl
3a2e3fa901
includes in vsocc
2024-02-10 10:15:11 +01:00
Joachim Schoeberl
e8a9131b31
include win first
2024-02-10 10:09:29 +01:00
Joachim Schoeberl
6622829e8f
windows include in visual
2024-02-10 10:05:00 +01:00
Joachim Schoeberl
61f34fc4ad
converting back: no win include in python-occ
2024-02-10 10:02:55 +01:00
Joachim Schoeberl
7d45d47260
no extra win include
2024-02-10 09:57:37 +01:00
Joachim Schoeberl
df7ea2b685
don't globally include ngcore
2024-02-10 09:55:16 +01:00
Joachim Schoeberl
beed254a7d
windows include in python_occ
2024-02-10 09:51:19 +01:00
Joachim Schoeberl
97709fca23
windows include in python_occ_shapes
2024-02-10 09:46:53 +01:00
Joachim Schoeberl
996d2809c9
no windows specfic includes globally
2024-02-10 09:21:09 +01:00
Christopher Lackner
000424f001
offset should always be called no a finished line
2024-02-08 15:08:49 +01:00
Christopher Lackner
0fab0ec1eb
dont reverse wire in offset
...
This works with this change:
```
MoveTo(0,0).LineTo(1,1).Finish().Offset(0.2).Face()
```
2024-02-08 14:57:56 +01:00
Christopher Lackner
282c3e5c0a
fix glued point in sphere (was removed by compress)
2024-02-07 15:05:03 +01:00
Joachim Schoeberl
adbdf194e0
fix Powell-Sabin split
2024-02-06 21:41:15 +01:00
Christopher Lackner
45362b588b
dont curve faces with boundarylayers
2024-01-31 15:13:20 +01:00
Christopher Lackner
e155700bc3
throw if surface is extruded that is not named (if map surface-> new
...
mat is given)
2024-01-31 12:27:03 +01:00
Matthias Hochsteger
6533663b7f
Fix Workplane.Offset for straight lines
2024-01-30 17:41:46 +01:00
Matthias Hochsteger
0c885db5a4
Consider draw_surfaces bitarray when drawing surface vectors
2024-01-25 16:00:45 +01:00
Matthias Hochsteger
2024a67c74
occ shapes _webgui_data - export color alpha values
...
Also
- don't create ShapeProperties objects for faces with default values
- use default name/color from ShapeProperties
2024-01-22 11:00:46 +01:00
Joachim Schoeberl
d7ffc68a30
add GetBackTrace to checksame
2024-01-19 08:07:57 +01:00
Joachim Schoeberl
eb90c6ed3b
use list instead of map to keep order
2024-01-18 19:43:08 +01:00
Joachim Schoeberl
5a4b89c1ed
merge hp face-refinement with limiting fac2
2024-01-16 12:54:06 +01:00
Schöberl, Joachim
3dc0383f3f
Merge branch 'uz/splits' into 'master'
...
Expsosing splits in Netgen and Powell-Sabin split
See merge request ngsolve/netgen!623
2024-01-16 12:51:18 +01:00
Joachim Schoeberl
cb7759cd0b
line number in NETGEN_CHECK_SAME macro
2024-01-16 12:43:23 +01:00
Joachim Schoeberl
6c3fcf0188
Alfeld split uses sub-division factor 1/3
2024-01-16 12:42:42 +01:00
Joachim Schoeberl
29f0a5d647
simple signal without smart pointers
2024-01-16 10:17:19 +01:00
Umberto Zerbinati
87c4e543ad
Introduced fac2 to fix issue with face splits
2024-01-15 23:54:44 +00:00
Umberto Zerbinati
d2bba6cb3c
Merging master
2024-01-15 22:50:49 +00:00
Umberto Zerbinati
00747fb947
Powell Sabin splits
2024-01-15 22:43:18 +00:00
Joachim Schoeberl
696620828f
don't restrict refinement parameter in HPRefinement (more user responsibility)
2024-01-15 21:42:27 +01:00
Umberto Zerbinati
890f59b8b4
Exposed Alfeld splits
2024-01-15 11:42:00 +00:00
Lackner, Christopher
ed7d1dfdaf
Merge branch 'tolerance_occ_edge_projection' into 'master'
...
add tolerance to occ-edge projection
See merge request ngsolve/netgen!622
2024-01-15 11:50:07 +01:00
Joachim Schoeberl
c0d394ebf5
introduce 'shallow_archive' member
2024-01-15 08:16:14 +01:00
Joachim Schoeberl
6b346926ec
if constexpr
2024-01-14 04:52:19 +01:00
Joachim Schoeberl
1ff8c97b1d
fix has_shared_from_this any_cast
2024-01-14 04:33:55 +01:00
Joachim Schoeberl
2d2503bbbb
auto-shallow shared_ptr with enable_shared_from_this
2024-01-13 21:15:55 +01:00
Christopher Lackner
48eb4fed07
add tolerance to occ-edge projection
2024-01-10 16:31:05 +01:00
Joachim Schoeberl
54287bbfbb
wrap static variable into function
2024-01-09 10:21:06 +01:00
Joachim Schoeberl
fda7cfa2bc
function-pointer instead of std::function, no unique-ptr around type_register
2024-01-09 10:01:11 +01:00
Joachim Schoeberl
8362349bb8
fix metis warnings
2024-01-06 18:19:11 +01:00