ngsolve 6.2.2506.post74.dev0__cp314-cp314-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of ngsolve might be problematic. Click here for more details.
- netgen/include/analytic_integrals.hpp +10 -0
- netgen/include/arnoldi.hpp +55 -0
- netgen/include/bandmatrix.hpp +334 -0
- netgen/include/basematrix.hpp +957 -0
- netgen/include/basevector.hpp +1268 -0
- netgen/include/bdbequations.hpp +2805 -0
- netgen/include/bdbintegrator.hpp +1660 -0
- netgen/include/bem_diffops.hpp +475 -0
- netgen/include/bessel.hpp +1064 -0
- netgen/include/bilinearform.hpp +963 -0
- netgen/include/bla.hpp +29 -0
- netgen/include/blockalloc.hpp +95 -0
- netgen/include/blockjacobi.hpp +328 -0
- netgen/include/bspline.hpp +116 -0
- netgen/include/calcinverse.hpp +141 -0
- netgen/include/cg.hpp +368 -0
- netgen/include/chebyshev.hpp +44 -0
- netgen/include/cholesky.hpp +720 -0
- netgen/include/clapack.h +7254 -0
- netgen/include/code_generation.hpp +296 -0
- netgen/include/coefficient.hpp +2033 -0
- netgen/include/coefficient_impl.hpp +19 -0
- netgen/include/coefficient_stdmath.hpp +167 -0
- netgen/include/commutingAMG.hpp +106 -0
- netgen/include/comp.hpp +79 -0
- netgen/include/compatibility.hpp +41 -0
- netgen/include/complex_wrapper.hpp +73 -0
- netgen/include/compressedfespace.hpp +110 -0
- netgen/include/contact.hpp +235 -0
- netgen/include/diagonalmatrix.hpp +154 -0
- netgen/include/differentialoperator.hpp +276 -0
- netgen/include/diffop.hpp +1286 -0
- netgen/include/diffop_impl.hpp +328 -0
- netgen/include/diffopwithfactor.hpp +123 -0
- netgen/include/discontinuous.hpp +84 -0
- netgen/include/dump.hpp +949 -0
- netgen/include/ectypes.hpp +121 -0
- netgen/include/eigen.hpp +60 -0
- netgen/include/eigensystem.hpp +18 -0
- netgen/include/elasticity_equations.hpp +595 -0
- netgen/include/elementbyelement.hpp +195 -0
- netgen/include/elementtopology.hpp +1760 -0
- netgen/include/elementtransformation.hpp +339 -0
- netgen/include/evalfunc.hpp +405 -0
- netgen/include/expr.hpp +1686 -0
- netgen/include/facetfe.hpp +175 -0
- netgen/include/facetfespace.hpp +180 -0
- netgen/include/facethofe.hpp +111 -0
- netgen/include/facetsurffespace.hpp +112 -0
- netgen/include/fe_interfaces.hpp +32 -0
- netgen/include/fem.hpp +87 -0
- netgen/include/fesconvert.hpp +14 -0
- netgen/include/fespace.hpp +1449 -0
- netgen/include/finiteelement.hpp +286 -0
- netgen/include/globalinterfacespace.hpp +77 -0
- netgen/include/globalspace.hpp +115 -0
- netgen/include/gridfunction.hpp +525 -0
- netgen/include/h1amg.hpp +124 -0
- netgen/include/h1hofe.hpp +188 -0
- netgen/include/h1hofe_impl.hpp +1262 -0
- netgen/include/h1hofefo.hpp +148 -0
- netgen/include/h1hofefo_impl.hpp +185 -0
- netgen/include/h1hofespace.hpp +167 -0
- netgen/include/h1lofe.hpp +1240 -0
- netgen/include/h1lumping.hpp +41 -0
- netgen/include/hcurl_equations.hpp +1381 -0
- netgen/include/hcurlcurlfe.hpp +2241 -0
- netgen/include/hcurlcurlfespace.hpp +78 -0
- netgen/include/hcurlfe.hpp +259 -0
- netgen/include/hcurlfe_utils.hpp +107 -0
- netgen/include/hcurlhdiv_dshape.hpp +857 -0
- netgen/include/hcurlhdivfes.hpp +308 -0
- netgen/include/hcurlhofe.hpp +175 -0
- netgen/include/hcurlhofe_impl.hpp +1871 -0
- netgen/include/hcurlhofespace.hpp +193 -0
- netgen/include/hcurllofe.hpp +1146 -0
- netgen/include/hdiv_equations.hpp +880 -0
- netgen/include/hdivdivfe.hpp +2923 -0
- netgen/include/hdivdivsurfacespace.hpp +76 -0
- netgen/include/hdivfe.hpp +206 -0
- netgen/include/hdivfe_utils.hpp +717 -0
- netgen/include/hdivfes.hpp +75 -0
- netgen/include/hdivhofe.hpp +447 -0
- netgen/include/hdivhofe_impl.hpp +1107 -0
- netgen/include/hdivhofefo.hpp +229 -0
- netgen/include/hdivhofespace.hpp +177 -0
- netgen/include/hdivhosurfacefespace.hpp +106 -0
- netgen/include/hdivlofe.hpp +773 -0
- netgen/include/hidden.hpp +74 -0
- netgen/include/householder.hpp +181 -0
- netgen/include/hypre_ams_precond.hpp +123 -0
- netgen/include/hypre_precond.hpp +73 -0
- netgen/include/integrator.hpp +2012 -0
- netgen/include/integratorcf.hpp +253 -0
- netgen/include/interpolate.hpp +49 -0
- netgen/include/intrule.hpp +2542 -0
- netgen/include/intrules_SauterSchwab.hpp +25 -0
- netgen/include/irspace.hpp +49 -0
- netgen/include/jacobi.hpp +153 -0
- netgen/include/kernels.hpp +762 -0
- netgen/include/l2hofe.hpp +194 -0
- netgen/include/l2hofe_impl.hpp +564 -0
- netgen/include/l2hofefo.hpp +542 -0
- netgen/include/l2hofespace.hpp +344 -0
- netgen/include/la.hpp +38 -0
- netgen/include/linearform.hpp +266 -0
- netgen/include/matrix.hpp +2140 -0
- netgen/include/memusage.hpp +41 -0
- netgen/include/meshaccess.hpp +1359 -0
- netgen/include/mgpre.hpp +204 -0
- netgen/include/mp_coefficient.hpp +145 -0
- netgen/include/mptools.hpp +2281 -0
- netgen/include/multigrid.hpp +42 -0
- netgen/include/multivector.hpp +447 -0
- netgen/include/mumpsinverse.hpp +187 -0
- netgen/include/mycomplex.hpp +361 -0
- netgen/include/ng_lapack.hpp +1661 -0
- netgen/include/ngblas.hpp +1232 -0
- netgen/include/ngs_defines.hpp +30 -0
- netgen/include/ngs_stdcpp_include.hpp +106 -0
- netgen/include/ngs_utils.hpp +121 -0
- netgen/include/ngsobject.hpp +1019 -0
- netgen/include/ngsstream.hpp +113 -0
- netgen/include/ngstd.hpp +72 -0
- netgen/include/nodalhofe.hpp +96 -0
- netgen/include/nodalhofe_impl.hpp +141 -0
- netgen/include/normalfacetfe.hpp +223 -0
- netgen/include/normalfacetfespace.hpp +98 -0
- netgen/include/normalfacetsurfacefespace.hpp +84 -0
- netgen/include/order.hpp +251 -0
- netgen/include/parallel_matrices.hpp +222 -0
- netgen/include/paralleldofs.hpp +340 -0
- netgen/include/parallelngs.hpp +23 -0
- netgen/include/parallelvector.hpp +269 -0
- netgen/include/pardisoinverse.hpp +200 -0
- netgen/include/periodic.hpp +129 -0
- netgen/include/plateaufespace.hpp +25 -0
- netgen/include/pml.hpp +275 -0
- netgen/include/pmltrafo.hpp +631 -0
- netgen/include/postproc.hpp +142 -0
- netgen/include/potentialtools.hpp +22 -0
- netgen/include/precomp.hpp +60 -0
- netgen/include/preconditioner.hpp +602 -0
- netgen/include/prolongation.hpp +377 -0
- netgen/include/python_comp.hpp +107 -0
- netgen/include/python_fem.hpp +89 -0
- netgen/include/python_linalg.hpp +58 -0
- netgen/include/python_ngstd.hpp +386 -0
- netgen/include/recursive_pol.hpp +4896 -0
- netgen/include/recursive_pol_tet.hpp +395 -0
- netgen/include/recursive_pol_trig.hpp +492 -0
- netgen/include/reorderedfespace.hpp +81 -0
- netgen/include/sample_sort.hpp +105 -0
- netgen/include/scalarfe.hpp +335 -0
- netgen/include/shapefunction_utils.hpp +113 -0
- netgen/include/simd_complex.hpp +329 -0
- netgen/include/smoother.hpp +253 -0
- netgen/include/solve.hpp +89 -0
- netgen/include/sparsecholesky.hpp +313 -0
- netgen/include/sparsematrix.hpp +1038 -0
- netgen/include/sparsematrix_dyn.hpp +90 -0
- netgen/include/sparsematrix_impl.hpp +1013 -0
- netgen/include/special_matrix.hpp +463 -0
- netgen/include/specialelement.hpp +125 -0
- netgen/include/statushandler.hpp +33 -0
- netgen/include/stringops.hpp +12 -0
- netgen/include/superluinverse.hpp +136 -0
- netgen/include/symbolicintegrator.hpp +850 -0
- netgen/include/symmetricmatrix.hpp +144 -0
- netgen/include/tangentialfacetfe.hpp +224 -0
- netgen/include/tangentialfacetfespace.hpp +91 -0
- netgen/include/tensor.hpp +522 -0
- netgen/include/tensorcoefficient.hpp +446 -0
- netgen/include/tensorproductintegrator.hpp +113 -0
- netgen/include/thcurlfe.hpp +128 -0
- netgen/include/thcurlfe_impl.hpp +380 -0
- netgen/include/thdivfe.hpp +80 -0
- netgen/include/thdivfe_impl.hpp +492 -0
- netgen/include/tpdiffop.hpp +461 -0
- netgen/include/tpfes.hpp +133 -0
- netgen/include/tpintrule.hpp +224 -0
- netgen/include/triangular.hpp +465 -0
- netgen/include/tscalarfe.hpp +245 -0
- netgen/include/tscalarfe_impl.hpp +1029 -0
- netgen/include/umfpackinverse.hpp +148 -0
- netgen/include/vector.hpp +1273 -0
- netgen/include/voxelcoefficientfunction.hpp +41 -0
- netgen/include/vtkoutput.hpp +198 -0
- netgen/include/vvector.hpp +208 -0
- netgen/include/webgui.hpp +92 -0
- netgen/lib/libngsolve.lib +0 -0
- netgen/libngsolve.dll +0 -0
- netgen/ngscxx.bat +4 -0
- netgen/ngsld.bat +6 -0
- ngsolve/TensorProductTools.py +210 -0
- ngsolve/__console.py +94 -0
- ngsolve/__expr.py +181 -0
- ngsolve/__init__.py +148 -0
- ngsolve/_scikit_build_core_dependencies.py +30 -0
- ngsolve/bvp.py +78 -0
- ngsolve/cmake/NGSolveConfig.cmake +102 -0
- ngsolve/cmake/ngsolve-targets-release.cmake +19 -0
- ngsolve/cmake/ngsolve-targets.cmake +164 -0
- ngsolve/config/__init__.py +1 -0
- ngsolve/config/__main__.py +4 -0
- ngsolve/config/config.py +60 -0
- ngsolve/demos/TensorProduct/__init__.py +0 -0
- ngsolve/demos/TensorProduct/tp_dg_1d_1d.py +80 -0
- ngsolve/demos/TensorProduct/tp_dg_1d_2d.py +73 -0
- ngsolve/demos/TensorProduct/tp_dg_2d_1d.py +72 -0
- ngsolve/demos/TensorProduct/tp_dg_2d_2d.py +66 -0
- ngsolve/demos/__init__.py +0 -0
- ngsolve/demos/howto/__init__.py +0 -0
- ngsolve/demos/howto/hhj.py +44 -0
- ngsolve/demos/howto/hybrid_dg.py +53 -0
- ngsolve/demos/howto/mixed.py +30 -0
- ngsolve/demos/howto/nonlin.py +29 -0
- ngsolve/demos/howto/pickling.py +26 -0
- ngsolve/demos/howto/pml.py +31 -0
- ngsolve/demos/howto/taskmanager.py +20 -0
- ngsolve/demos/howto/tdnns.py +47 -0
- ngsolve/demos/howto/timeDG-skeleton.py +45 -0
- ngsolve/demos/howto/timeDG.py +38 -0
- ngsolve/demos/howto/timeDGlap.py +42 -0
- ngsolve/demos/howto/timeDGwave.py +61 -0
- ngsolve/demos/intro/__init__.py +0 -0
- ngsolve/demos/intro/adaptive.py +123 -0
- ngsolve/demos/intro/cmagnet.py +59 -0
- ngsolve/demos/intro/elasticity.py +76 -0
- ngsolve/demos/intro/navierstokes.py +74 -0
- ngsolve/demos/intro/poisson.ipynb +170 -0
- ngsolve/demos/intro/poisson.py +41 -0
- ngsolve/demos/mpi/__init__.py +0 -0
- ngsolve/demos/mpi/mpi_cmagnet.py +87 -0
- ngsolve/demos/mpi/mpi_navierstokes.py +117 -0
- ngsolve/demos/mpi/mpi_poisson.py +89 -0
- ngsolve/demos/mpi/mpi_timeDG.py +82 -0
- ngsolve/directsolvers.py +26 -0
- ngsolve/eigenvalues.py +364 -0
- ngsolve/internal.py +89 -0
- ngsolve/krylovspace.py +1013 -0
- ngsolve/meshes.py +748 -0
- ngsolve/ngs2petsc.py +310 -0
- ngsolve/ngscxx.py +42 -0
- ngsolve/ngslib.lib +0 -0
- ngsolve/ngslib.pyd +0 -0
- ngsolve/nonlinearsolvers.py +203 -0
- ngsolve/preconditioners.py +11 -0
- ngsolve/solve_implementation.py +168 -0
- ngsolve/solvers.py +7 -0
- ngsolve/timestepping.py +185 -0
- ngsolve/timing.py +108 -0
- ngsolve/utils.py +167 -0
- ngsolve/webgui.py +670 -0
- ngsolve-6.2.2506.post74.dev0.data/data/Scripts/ngsolve.tcl +648 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/beam.geo +17 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/beam.vol +240 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/chip.in2d +41 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/chip.vol +614 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/coil.geo +12 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/coil.vol +2560 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/coilshield.geo +24 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/coilshield.vol +3179 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/cube.geo +19 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/cube.vol +1832 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/d10_DGdoubleglazing.pde +50 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/d11_chip_nitsche.pde +40 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/d1_square.pde +43 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/d2_chip.pde +35 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/d3_helmholtz.pde +22 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/d4_cube.pde +46 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/d5_beam.pde +74 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/d6_shaft.pde +73 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/d7_coil.pde +50 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/d8_coilshield.pde +49 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/d9_hybridDG.pde +72 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/doubleglazing.in2d +27 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/doubleglazing.vol +737 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/piezo2d40round4.vol.gz +0 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/shaft.geo +73 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/shaft.vol +4291 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/square.in2d +17 -0
- ngsolve-6.2.2506.post74.dev0.data/data/share/ngsolve/square.vol +149 -0
- ngsolve-6.2.2506.post74.dev0.dist-info/METADATA +14 -0
- ngsolve-6.2.2506.post74.dev0.dist-info/RECORD +288 -0
- ngsolve-6.2.2506.post74.dev0.dist-info/WHEEL +5 -0
- ngsolve-6.2.2506.post74.dev0.dist-info/licenses/LICENSE +504 -0
- ngsolve-6.2.2506.post74.dev0.dist-info/top_level.txt +2 -0
ngsolve/bvp.py
ADDED
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
|
|
2
|
+
def BVP(bf, lf, gf, \
|
|
3
|
+
pre=None, pre_flags={}, \
|
|
4
|
+
solver=None, solver_flags={},
|
|
5
|
+
maxsteps=200, tol=1e-8, print=True, inverse="umfpack",
|
|
6
|
+
needsassembling=True):
|
|
7
|
+
"""
|
|
8
|
+
Solve a linear boundary value problem A(u,v) = f(v)
|
|
9
|
+
|
|
10
|
+
Parameters
|
|
11
|
+
----------
|
|
12
|
+
|
|
13
|
+
bf : BilinearForm
|
|
14
|
+
provides the matrix.
|
|
15
|
+
|
|
16
|
+
lf : LinearForm
|
|
17
|
+
provides the right hand side.
|
|
18
|
+
|
|
19
|
+
gf : GridFunction
|
|
20
|
+
provides the solution vector
|
|
21
|
+
|
|
22
|
+
pre : Basematrix or class or string = None
|
|
23
|
+
used if an iterative solver is used
|
|
24
|
+
can be one of
|
|
25
|
+
* a preconditioner object
|
|
26
|
+
* a preconditioner class
|
|
27
|
+
* a preconditioner class name
|
|
28
|
+
|
|
29
|
+
pre_flags : dictionary = { }
|
|
30
|
+
flags used to create preconditioner
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
"""
|
|
34
|
+
from ngsolve import Projector, Preconditioner
|
|
35
|
+
from ngsolve.krylovspace import CG
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
if isinstance(pre,type):
|
|
39
|
+
pre = pre(bf, **pre_flags)
|
|
40
|
+
if not needsassembling:
|
|
41
|
+
pre.Update()
|
|
42
|
+
|
|
43
|
+
if isinstance(pre,str):
|
|
44
|
+
pre = Preconditioner(bf, pre, **pre_flags)
|
|
45
|
+
if not needsassembling:
|
|
46
|
+
pre.Update()
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
if needsassembling:
|
|
50
|
+
bf.Assemble()
|
|
51
|
+
lf.Assemble()
|
|
52
|
+
|
|
53
|
+
r = lf.vec.CreateVector()
|
|
54
|
+
r.data = lf.vec
|
|
55
|
+
|
|
56
|
+
if bf.condense:
|
|
57
|
+
r.data += bf.harmonic_extension_trans * r
|
|
58
|
+
|
|
59
|
+
# zero local dofs
|
|
60
|
+
innerbits = gf.space.FreeDofs(False) & ~gf.space.FreeDofs(True)
|
|
61
|
+
Projector(innerbits, False).Project(gf.vec)
|
|
62
|
+
|
|
63
|
+
if solver:
|
|
64
|
+
inv = solver(mat=bf.mat, pre=pre, **solver_flags)
|
|
65
|
+
r.data -= bf.mat * gf.vec
|
|
66
|
+
gf.vec.data += inv * r
|
|
67
|
+
|
|
68
|
+
elif pre:
|
|
69
|
+
CG(mat = bf.mat, rhs = r, pre=pre, sol=gf.vec, tol=tol, maxsteps=maxsteps, initialize=False, printrates=print)
|
|
70
|
+
else:
|
|
71
|
+
inv = bf.mat.Inverse(gf.space.FreeDofs(bf.condense), inverse=inverse)
|
|
72
|
+
r.data -= bf.mat * gf.vec
|
|
73
|
+
gf.vec.data += inv * r
|
|
74
|
+
|
|
75
|
+
if bf.condense:
|
|
76
|
+
gf.vec.data += bf.harmonic_extension * gf.vec
|
|
77
|
+
gf.vec.data += bf.inner_solve * r
|
|
78
|
+
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
set(PACKAGE_VERSION "6.2.2506-74-gd430159c1")
|
|
2
|
+
find_package(Netgen CONFIG REQUIRED HINTS
|
|
3
|
+
${CMAKE_CURRENT_LIST_DIR}
|
|
4
|
+
${CMAKE_CURRENT_LIST_DIR}/..
|
|
5
|
+
${CMAKE_CURRENT_LIST_DIR}/../netgen
|
|
6
|
+
)
|
|
7
|
+
|
|
8
|
+
get_filename_component(NGSOLVE_DIR "${NETGEN_DIR}" ABSOLUTE)
|
|
9
|
+
|
|
10
|
+
get_filename_component(NGSOLVE_INSTALL_DIR "${CMAKE_CURRENT_LIST_DIR}/../../" ABSOLUTE)
|
|
11
|
+
get_filename_component(NGSOLVE_INCLUDE_DIR "${NETGEN_INCLUDE_DIR}" ABSOLUTE)
|
|
12
|
+
get_filename_component(NGSOLVE_BINARY_DIR "${NETGEN_BINARY_DIR}" ABSOLUTE)
|
|
13
|
+
get_filename_component(NGSOLVE_LIBRARY_DIR "${NETGEN_LIBRARY_DIR}" ABSOLUTE)
|
|
14
|
+
get_filename_component(NGSOLVE_PYTHON_DIR "${NETGEN_PYTHON_DIR}" ABSOLUTE)
|
|
15
|
+
get_filename_component(NGSOLVE_RESOURCE_DIR "${NETGEN_RESOURCE_DIR}" ABSOLUTE)
|
|
16
|
+
|
|
17
|
+
set(NGSOLVE_CXX_COMPILER "C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.44.35207/bin/Hostx64/x64/cl.exe")
|
|
18
|
+
set(NGSOLVE_CMAKE_BUILD_TYPE "Release")
|
|
19
|
+
|
|
20
|
+
set(NGSOLVE_CMAKE_THREAD_LIBS_INIT "")
|
|
21
|
+
set(NGSOLVE_MKL_LIBRARIES "C:/gitlabci/tools/builds/3zsqG5ns/0/ngsolve/venv_ngs/Library/lib/mkl_rt.lib")
|
|
22
|
+
set(NGSOLVE_PYBIND_INCLUDE_DIR "")
|
|
23
|
+
set(NGSOLVE_PYTHON_INCLUDE_DIRS "C:/Python314/Include")
|
|
24
|
+
set(NGSOLVE_PYTHON_LIBRARIES "C:/Python314/libs/python314.lib")
|
|
25
|
+
set(NGSOLVE_PYTHON_PACKAGES_INSTALL_DIR "")
|
|
26
|
+
set(NGSOLVE_TCL_INCLUDE_PATH "C:/gitlabci/tools/builds/3zsqG5ns/0/ngsolve/netgen/_skbuild/win-amd64-3.14/cmake-build/dependencies/src/project_tcl/generic")
|
|
27
|
+
set(NGSOLVE_TCL_LIBRARY "C:/Python314/tcl/tclstub86.lib")
|
|
28
|
+
set(NGSOLVE_TK_DND_LIBRARY "")
|
|
29
|
+
set(NGSOLVE_TK_INCLUDE_PATH "C:/gitlabci/tools/builds/3zsqG5ns/0/ngsolve/netgen/_skbuild/win-amd64-3.14/cmake-build/dependencies/src/project_tk/generic")
|
|
30
|
+
set(NGSOLVE_TK_LIBRARY "C:/Python314/tcl/tkstub86.lib")
|
|
31
|
+
set(NGSOLVE_X11_X11_LIB "")
|
|
32
|
+
set(NGSOLVE_X11_Xmu_LIB "")
|
|
33
|
+
set(NGSOLVE_ZLIB_INCLUDE_DIRS "C:/gitlabci/tools/builds/3zsqG5ns/0/ngsolve/netgen/_skbuild/win-amd64-3.14/cmake-build/dependencies/zlib/include")
|
|
34
|
+
set(NGSOLVE_ZLIB_LIBRARIES "C:/gitlabci/tools/builds/3zsqG5ns/0/ngsolve/netgen/_skbuild/win-amd64-3.14/cmake-build/dependencies/zlib/lib/zlibstatic.lib")
|
|
35
|
+
|
|
36
|
+
set(NGSOLVE_INTEL_MIC OFF)
|
|
37
|
+
set(NGSOLVE_USE_CCACHE ON)
|
|
38
|
+
set(NGSOLVE_USE_CUDA OFF)
|
|
39
|
+
set(NGSOLVE_USE_GUI ON)
|
|
40
|
+
set(NGSOLVE_USE_LAPACK ON)
|
|
41
|
+
set(NGSOLVE_USE_MKL ON)
|
|
42
|
+
set(NGSOLVE_USE_MPI OFF)
|
|
43
|
+
set(NGSOLVE_USE_MUMPS OFF)
|
|
44
|
+
set(NGSOLVE_USE_NUMA )
|
|
45
|
+
set(NGSOLVE_USE_PARDISO OFF)
|
|
46
|
+
set(NGSOLVE_USE_PYTHON ON)
|
|
47
|
+
set(NGSOLVE_USE_UMFPACK OFF)
|
|
48
|
+
set(NGSOLVE_USE_VT )
|
|
49
|
+
set(NGSOLVE_USE_VTUNE OFF)
|
|
50
|
+
set(NGSOLVE_MAX_SYS_DIM 3)
|
|
51
|
+
|
|
52
|
+
set(NGSOLVE_COMPILE_FLAGS " /DHAVE_NETGEN_SOURCES /DUSE_TIMEOFDAY /DTCL /DLAPACK /DUSE_PARDISO /DNGS_PYTHON /DNETGEN_PYTHON /DNG_PYTHON /DPYBIND11_SIMPLE_GIL_MANAGEMENT /D_WIN32_WINNT=0x1000 /DWNT /DWNT_WINDOW /DNOMINMAX /DMSVC_EXPRESS /D_CRT_SECURE_NO_WARNINGS /DHAVE_STRUCT_TIMESPEC /DWIN32" CACHE STRING "Preprocessor definitions of ngscxx")
|
|
53
|
+
set(NGSOLVE_LINK_FLAGS " -LC:/gitlabci/tools/builds/3zsqG5ns/0/ngsolve/venv_ngs/Library/lib -l_rt /LIBPATH:\"%NGSCXX_DIR%/lib\" nglib.lib ngcore.lib libngsolve.lib /LIBPATH:\"%PYTHON_LIBDIR%\"" CACHE STRING "Link flags set in ngsld")
|
|
54
|
+
set(NGSOLVE_INCLUDE_DIRS C:/gitlabci/tools/builds/3zsqG5ns/0/ngsolve/venv_ngs/Library/include;C:/Python314/Include CACHE STRING "Include dirs set in ngscxx")
|
|
55
|
+
|
|
56
|
+
set(NGSOLVE_INSTALL_DIR_PYTHON .)
|
|
57
|
+
set(NGSOLVE_INSTALL_DIR_BIN netgen)
|
|
58
|
+
set(NGSOLVE_INSTALL_DIR_LIB netgen/lib)
|
|
59
|
+
set(NGSOLVE_INSTALL_DIR_INCLUDE netgen/include)
|
|
60
|
+
set(NGSOLVE_INSTALL_DIR_CMAKE ngsolve/cmake)
|
|
61
|
+
set(NGSOLVE_INSTALL_DIR_RES share)
|
|
62
|
+
|
|
63
|
+
include(${CMAKE_CURRENT_LIST_DIR}/ngsolve-targets.cmake)
|
|
64
|
+
|
|
65
|
+
if(WIN32)
|
|
66
|
+
# Libraries like ngstd, ngbla etc. are only dummy libs on Windows (there is only one library libngsolve.dll)
|
|
67
|
+
# make sure that all those dummy libs link ngsolve when used with CMake
|
|
68
|
+
target_link_libraries(ngstd INTERFACE ngsolve)
|
|
69
|
+
endif(WIN32)
|
|
70
|
+
|
|
71
|
+
if(NGSOLVE_USE_PYTHON)
|
|
72
|
+
function(add_ngsolve_python_module target)
|
|
73
|
+
if(NOT CMAKE_BUILD_TYPE)
|
|
74
|
+
message(STATUS "Setting build type to NGSolve build type: ${NGSOLVE_CMAKE_BUILD_TYPE}")
|
|
75
|
+
set(CMAKE_BUILD_TYPE ${NGSOLVE_CMAKE_BUILD_TYPE} PARENT_SCOPE)
|
|
76
|
+
endif()
|
|
77
|
+
add_library(${target} SHARED ${ARGN})
|
|
78
|
+
|
|
79
|
+
find_package(PythonInterp 3 REQUIRED)
|
|
80
|
+
find_package(PythonLibs 3 REQUIRED)
|
|
81
|
+
target_include_directories(${target} PRIVATE ${PYTHON_INCLUDE_DIR})
|
|
82
|
+
|
|
83
|
+
if(NETGEN_BUILD_FOR_CONDA AND NOT WIN32)
|
|
84
|
+
if(APPLE)
|
|
85
|
+
target_link_options(${target} PUBLIC -undefined dynamic_lookup)
|
|
86
|
+
endif(APPLE)
|
|
87
|
+
else(NETGEN_BUILD_FOR_CONDA AND NOT WIN32)
|
|
88
|
+
target_link_libraries(${target} PUBLIC ${PYTHON_LIBRARY})
|
|
89
|
+
endif(NETGEN_BUILD_FOR_CONDA AND NOT WIN32)
|
|
90
|
+
|
|
91
|
+
set_target_properties(${target} PROPERTIES PREFIX "" CXX_STANDARD 17)
|
|
92
|
+
target_link_libraries(${target} PUBLIC ngsolve)
|
|
93
|
+
|
|
94
|
+
if(WIN32)
|
|
95
|
+
set_target_properties( ${target} PROPERTIES SUFFIX ".pyd" )
|
|
96
|
+
else(WIN32)
|
|
97
|
+
set_target_properties(${target} PROPERTIES SUFFIX ".so")
|
|
98
|
+
endif(WIN32)
|
|
99
|
+
|
|
100
|
+
set_target_properties(${target} PROPERTIES INSTALL_RPATH "${NGSOLVE_LIBRARY_DIR}")
|
|
101
|
+
endfunction()
|
|
102
|
+
endif(NGSOLVE_USE_PYTHON)
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
#----------------------------------------------------------------
|
|
2
|
+
# Generated CMake target import file for configuration "Release".
|
|
3
|
+
#----------------------------------------------------------------
|
|
4
|
+
|
|
5
|
+
# Commands may need to know the format version.
|
|
6
|
+
set(CMAKE_IMPORT_FILE_VERSION 1)
|
|
7
|
+
|
|
8
|
+
# Import target "ngsolve" for configuration "Release"
|
|
9
|
+
set_property(TARGET ngsolve APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
|
|
10
|
+
set_target_properties(ngsolve PROPERTIES
|
|
11
|
+
IMPORTED_IMPLIB_RELEASE "${_IMPORT_PREFIX}/netgen/lib/libngsolve.lib"
|
|
12
|
+
IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/netgen/libngsolve.dll"
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
list(APPEND _cmake_import_check_targets ngsolve )
|
|
16
|
+
list(APPEND _cmake_import_check_files_for_ngsolve "${_IMPORT_PREFIX}/netgen/lib/libngsolve.lib" "${_IMPORT_PREFIX}/netgen/libngsolve.dll" )
|
|
17
|
+
|
|
18
|
+
# Commands beyond this point should not need to know the version.
|
|
19
|
+
set(CMAKE_IMPORT_FILE_VERSION)
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
# Generated by CMake
|
|
2
|
+
|
|
3
|
+
if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.8)
|
|
4
|
+
message(FATAL_ERROR "CMake >= 2.8.0 required")
|
|
5
|
+
endif()
|
|
6
|
+
if(CMAKE_VERSION VERSION_LESS "2.8.3")
|
|
7
|
+
message(FATAL_ERROR "CMake >= 2.8.3 required")
|
|
8
|
+
endif()
|
|
9
|
+
cmake_policy(PUSH)
|
|
10
|
+
cmake_policy(VERSION 2.8.3...3.25)
|
|
11
|
+
#----------------------------------------------------------------
|
|
12
|
+
# Generated CMake target import file.
|
|
13
|
+
#----------------------------------------------------------------
|
|
14
|
+
|
|
15
|
+
# Commands may need to know the format version.
|
|
16
|
+
set(CMAKE_IMPORT_FILE_VERSION 1)
|
|
17
|
+
|
|
18
|
+
# Protect against multiple inclusion, which would fail when already imported targets are added once more.
|
|
19
|
+
set(_cmake_targets_defined "")
|
|
20
|
+
set(_cmake_targets_not_defined "")
|
|
21
|
+
set(_cmake_expected_targets "")
|
|
22
|
+
foreach(_cmake_expected_target IN ITEMS netgen_libs ngs_lapack ngstd ngbla ngla ngfem ngsbem ngcomp ngsolve)
|
|
23
|
+
list(APPEND _cmake_expected_targets "${_cmake_expected_target}")
|
|
24
|
+
if(TARGET "${_cmake_expected_target}")
|
|
25
|
+
list(APPEND _cmake_targets_defined "${_cmake_expected_target}")
|
|
26
|
+
else()
|
|
27
|
+
list(APPEND _cmake_targets_not_defined "${_cmake_expected_target}")
|
|
28
|
+
endif()
|
|
29
|
+
endforeach()
|
|
30
|
+
unset(_cmake_expected_target)
|
|
31
|
+
if(_cmake_targets_defined STREQUAL _cmake_expected_targets)
|
|
32
|
+
unset(_cmake_targets_defined)
|
|
33
|
+
unset(_cmake_targets_not_defined)
|
|
34
|
+
unset(_cmake_expected_targets)
|
|
35
|
+
unset(CMAKE_IMPORT_FILE_VERSION)
|
|
36
|
+
cmake_policy(POP)
|
|
37
|
+
return()
|
|
38
|
+
endif()
|
|
39
|
+
if(NOT _cmake_targets_defined STREQUAL "")
|
|
40
|
+
string(REPLACE ";" ", " _cmake_targets_defined_text "${_cmake_targets_defined}")
|
|
41
|
+
string(REPLACE ";" ", " _cmake_targets_not_defined_text "${_cmake_targets_not_defined}")
|
|
42
|
+
message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_cmake_targets_defined_text}\nTargets not yet defined: ${_cmake_targets_not_defined_text}\n")
|
|
43
|
+
endif()
|
|
44
|
+
unset(_cmake_targets_defined)
|
|
45
|
+
unset(_cmake_targets_not_defined)
|
|
46
|
+
unset(_cmake_expected_targets)
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
# Compute the installation prefix relative to this file.
|
|
50
|
+
get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
|
51
|
+
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
|
|
52
|
+
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
|
|
53
|
+
if(_IMPORT_PREFIX STREQUAL "/")
|
|
54
|
+
set(_IMPORT_PREFIX "")
|
|
55
|
+
endif()
|
|
56
|
+
|
|
57
|
+
# Create imported target netgen_libs
|
|
58
|
+
add_library(netgen_libs INTERFACE IMPORTED)
|
|
59
|
+
|
|
60
|
+
set_target_properties(netgen_libs PROPERTIES
|
|
61
|
+
INTERFACE_LINK_LIBRARIES "nglib;ngcore"
|
|
62
|
+
)
|
|
63
|
+
|
|
64
|
+
# Create imported target ngs_lapack
|
|
65
|
+
add_library(ngs_lapack INTERFACE IMPORTED)
|
|
66
|
+
|
|
67
|
+
set_target_properties(ngs_lapack PROPERTIES
|
|
68
|
+
INTERFACE_INCLUDE_DIRECTORIES "C:/gitlabci/tools/builds/3zsqG5ns/0/ngsolve/venv_ngs/Library/include"
|
|
69
|
+
INTERFACE_LINK_LIBRARIES "C:/gitlabci/tools/builds/3zsqG5ns/0/ngsolve/venv_ngs/Library/lib/mkl_rt.lib"
|
|
70
|
+
)
|
|
71
|
+
|
|
72
|
+
# Create imported target ngstd
|
|
73
|
+
add_library(ngstd INTERFACE IMPORTED)
|
|
74
|
+
|
|
75
|
+
set_target_properties(ngstd PROPERTIES
|
|
76
|
+
INTERFACE_COMPILE_DEFINITIONS "HAVE_NETGEN_SOURCES;USE_TIMEOFDAY;TCL;LAPACK;USE_PARDISO;NGS_PYTHON"
|
|
77
|
+
INTERFACE_COMPILE_OPTIONS "/std:c++17;/bigobj;/wd4068;-DMAX_SYS_DIM=3"
|
|
78
|
+
INTERFACE_LINK_LIBRARIES "netgen_libs;\$<LINK_ONLY:>"
|
|
79
|
+
)
|
|
80
|
+
|
|
81
|
+
# Create imported target ngbla
|
|
82
|
+
add_library(ngbla INTERFACE IMPORTED)
|
|
83
|
+
|
|
84
|
+
set_target_properties(ngbla PROPERTIES
|
|
85
|
+
INTERFACE_LINK_LIBRARIES "ngstd;\$<LINK_ONLY:>"
|
|
86
|
+
)
|
|
87
|
+
|
|
88
|
+
# Create imported target ngla
|
|
89
|
+
add_library(ngla INTERFACE IMPORTED)
|
|
90
|
+
|
|
91
|
+
set_target_properties(ngla PROPERTIES
|
|
92
|
+
INTERFACE_LINK_LIBRARIES "ngbla;ngstd;\$<LINK_ONLY:>"
|
|
93
|
+
)
|
|
94
|
+
|
|
95
|
+
# Create imported target ngfem
|
|
96
|
+
add_library(ngfem INTERFACE IMPORTED)
|
|
97
|
+
|
|
98
|
+
set_target_properties(ngfem PROPERTIES
|
|
99
|
+
INTERFACE_LINK_LIBRARIES "ngbla;ngstd;\$<LINK_ONLY:>"
|
|
100
|
+
)
|
|
101
|
+
|
|
102
|
+
# Create imported target ngsbem
|
|
103
|
+
add_library(ngsbem INTERFACE IMPORTED)
|
|
104
|
+
|
|
105
|
+
set_target_properties(ngsbem PROPERTIES
|
|
106
|
+
INTERFACE_LINK_LIBRARIES "ngcomp;ngfem;ngla;ngbla;ngstd;\$<LINK_ONLY:>"
|
|
107
|
+
)
|
|
108
|
+
|
|
109
|
+
# Create imported target ngcomp
|
|
110
|
+
add_library(ngcomp INTERFACE IMPORTED)
|
|
111
|
+
|
|
112
|
+
set_target_properties(ngcomp PROPERTIES
|
|
113
|
+
INTERFACE_LINK_LIBRARIES "ngfem;ngla;ngbla;ngstd;\$<LINK_ONLY:>"
|
|
114
|
+
)
|
|
115
|
+
|
|
116
|
+
# Create imported target ngsolve
|
|
117
|
+
add_library(ngsolve SHARED IMPORTED)
|
|
118
|
+
|
|
119
|
+
set_target_properties(ngsolve PROPERTIES
|
|
120
|
+
INTERFACE_LINK_LIBRARIES "netgen_libs;ngsolve;ngcomp;ngfem;ngsbem;ngbla;ngla;ngstd"
|
|
121
|
+
)
|
|
122
|
+
|
|
123
|
+
if(CMAKE_VERSION VERSION_LESS 3.0.0)
|
|
124
|
+
message(FATAL_ERROR "This file relies on consumers using CMake 3.0.0 or greater.")
|
|
125
|
+
endif()
|
|
126
|
+
|
|
127
|
+
# Load information for each installed configuration.
|
|
128
|
+
file(GLOB _cmake_config_files "${CMAKE_CURRENT_LIST_DIR}/ngsolve-targets-*.cmake")
|
|
129
|
+
foreach(_cmake_config_file IN LISTS _cmake_config_files)
|
|
130
|
+
include("${_cmake_config_file}")
|
|
131
|
+
endforeach()
|
|
132
|
+
unset(_cmake_config_file)
|
|
133
|
+
unset(_cmake_config_files)
|
|
134
|
+
|
|
135
|
+
# Cleanup temporary variables.
|
|
136
|
+
set(_IMPORT_PREFIX)
|
|
137
|
+
|
|
138
|
+
# Loop over all imported files and verify that they actually exist
|
|
139
|
+
foreach(_cmake_target IN LISTS _cmake_import_check_targets)
|
|
140
|
+
foreach(_cmake_file IN LISTS "_cmake_import_check_files_for_${_cmake_target}")
|
|
141
|
+
if(NOT EXISTS "${_cmake_file}")
|
|
142
|
+
message(FATAL_ERROR "The imported target \"${_cmake_target}\" references the file
|
|
143
|
+
\"${_cmake_file}\"
|
|
144
|
+
but this file does not exist. Possible reasons include:
|
|
145
|
+
* The file was deleted, renamed, or moved to another location.
|
|
146
|
+
* An install or uninstall procedure did not complete successfully.
|
|
147
|
+
* The installation package was faulty and contained
|
|
148
|
+
\"${CMAKE_CURRENT_LIST_FILE}\"
|
|
149
|
+
but not all the files it references.
|
|
150
|
+
")
|
|
151
|
+
endif()
|
|
152
|
+
endforeach()
|
|
153
|
+
unset(_cmake_file)
|
|
154
|
+
unset("_cmake_import_check_files_for_${_cmake_target}")
|
|
155
|
+
endforeach()
|
|
156
|
+
unset(_cmake_target)
|
|
157
|
+
unset(_cmake_import_check_targets)
|
|
158
|
+
|
|
159
|
+
# This file does not depend on other imported targets which have
|
|
160
|
+
# been exported from the same project but in a separate export set.
|
|
161
|
+
|
|
162
|
+
# Commands beyond this point should not need to know the version.
|
|
163
|
+
set(CMAKE_IMPORT_FILE_VERSION)
|
|
164
|
+
cmake_policy(POP)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
from .config import *
|
ngsolve/config/config.py
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
def _cmake_to_bool(s):
|
|
2
|
+
return s.upper() not in ['', '0','FALSE','OFF','N','NO','IGNORE','NOTFOUND']
|
|
3
|
+
|
|
4
|
+
is_python_package = _cmake_to_bool("TRUE")
|
|
5
|
+
|
|
6
|
+
BUILD_STUB_FILES = _cmake_to_bool("OFF")
|
|
7
|
+
BUILD_UMFPACK = _cmake_to_bool("")
|
|
8
|
+
ENABLE_UNIT_TESTS = _cmake_to_bool("OFF")
|
|
9
|
+
INSTALL_DEPENDENCIES = _cmake_to_bool("OFF")
|
|
10
|
+
USE_CCACHE = _cmake_to_bool("ON")
|
|
11
|
+
USE_HYPRE = _cmake_to_bool("OFF")
|
|
12
|
+
USE_LAPACK = _cmake_to_bool("ON")
|
|
13
|
+
USE_MKL = _cmake_to_bool("ON")
|
|
14
|
+
USE_MUMPS = _cmake_to_bool("OFF")
|
|
15
|
+
USE_PARDISO = _cmake_to_bool("OFF")
|
|
16
|
+
USE_UMFPACK = _cmake_to_bool("OFF")
|
|
17
|
+
|
|
18
|
+
NETGEN_DIR = "C:/gitlabci/tools/builds/3zsqG5ns/0/ngsolve/venv_ngs/Lib/site-packages"
|
|
19
|
+
|
|
20
|
+
NGSOLVE_COMPILE_DEFINITIONS = "HAVE_NETGEN_SOURCES;USE_TIMEOFDAY;TCL;LAPACK;USE_PARDISO;NGS_PYTHON"
|
|
21
|
+
NGSOLVE_COMPILE_DEFINITIONS_PRIVATE = "USE_MKL"
|
|
22
|
+
NGSOLVE_COMPILE_INCLUDE_DIRS = ""
|
|
23
|
+
NGSOLVE_COMPILE_OPTIONS = "/std:c++17;/bigobj;/wd4068;-DMAX_SYS_DIM=3"
|
|
24
|
+
|
|
25
|
+
NGSOLVE_INSTALL_DIR_PYTHON = "."
|
|
26
|
+
NGSOLVE_INSTALL_DIR_BIN = "netgen"
|
|
27
|
+
NGSOLVE_INSTALL_DIR_LIB = "netgen/lib"
|
|
28
|
+
NGSOLVE_INSTALL_DIR_INCLUDE = "netgen/include"
|
|
29
|
+
NGSOLVE_INSTALL_DIR_CMAKE = "ngsolve/cmake"
|
|
30
|
+
NGSOLVE_INSTALL_DIR_RES = "share"
|
|
31
|
+
|
|
32
|
+
NGSOLVE_VERSION = "6.2.2506-74-gd430159c1"
|
|
33
|
+
NGSOLVE_VERSION_GIT = "v6.2.2506-74-gd430159c1"
|
|
34
|
+
NGSOLVE_VERSION_PYTHON = "6.2.2506.post74.dev0"
|
|
35
|
+
|
|
36
|
+
NGSOLVE_VERSION_MAJOR = "6"
|
|
37
|
+
NGSOLVE_VERSION_MINOR = "2"
|
|
38
|
+
NGSOLVE_VERSION_TWEAK = "74"
|
|
39
|
+
NGSOLVE_VERSION_PATCH = "2506"
|
|
40
|
+
NGSOLVE_VERSION_HASH = "gd430159c1"
|
|
41
|
+
|
|
42
|
+
CMAKE_CXX_COMPILER = "C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.44.35207/bin/Hostx64/x64/cl.exe"
|
|
43
|
+
CMAKE_CUDA_COMPILER = ""
|
|
44
|
+
CMAKE_C_COMPILER = "C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.44.35207/bin/Hostx64/x64/cl.exe"
|
|
45
|
+
CMAKE_LINKER = "C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.44.35207/bin/Hostx64/x64/link.exe"
|
|
46
|
+
CMAKE_INSTALL_PREFIX = "C:/gitlabci/tools/builds/3zsqG5ns/0/ngsolve/ngsolve/_skbuild/win-amd64-3.14/cmake-install"
|
|
47
|
+
CMAKE_CXX_COMPILER_LAUNCHER = ""
|
|
48
|
+
|
|
49
|
+
version = NGSOLVE_VERSION_GIT
|
|
50
|
+
|
|
51
|
+
MKL_LINK = "sdl"
|
|
52
|
+
|
|
53
|
+
def get_cmake_dir():
|
|
54
|
+
import os.path as p
|
|
55
|
+
d_python = p.dirname(p.dirname(p.dirname(__file__)))
|
|
56
|
+
py_to_cmake = p.relpath(
|
|
57
|
+
NGSOLVE_INSTALL_DIR_CMAKE,
|
|
58
|
+
NGSOLVE_INSTALL_DIR_PYTHON
|
|
59
|
+
)
|
|
60
|
+
return p.normpath(p.join(d_python,py_to_cmake))
|
|
File without changes
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
from ngsolve.TensorProductTools import *
|
|
2
|
+
from ngsolve.comp import *
|
|
3
|
+
from ngsolve import *
|
|
4
|
+
import netgen.gui
|
|
5
|
+
|
|
6
|
+
mesh1 = Mesh(SegMesh(20,0,1,periodic=True) )
|
|
7
|
+
mesh2 = Mesh(SegMesh(20,0,1,periodic=True) )
|
|
8
|
+
|
|
9
|
+
tpmesh = Mesh(MakeTensorProductMesh(mesh1,mesh2))
|
|
10
|
+
Draw(tpmesh)
|
|
11
|
+
|
|
12
|
+
n=5
|
|
13
|
+
m=5
|
|
14
|
+
|
|
15
|
+
fesx = L2(mesh1,order=n)
|
|
16
|
+
fesy = L2(mesh2,order=m)
|
|
17
|
+
|
|
18
|
+
tpfes = TensorProductFESpace([fesx,fesy])
|
|
19
|
+
|
|
20
|
+
fes = L2(tpmesh,order=n)
|
|
21
|
+
u = tpfes.TrialFunction()
|
|
22
|
+
v = tpfes.TestFunction()
|
|
23
|
+
vx = v.Operator("gradx")
|
|
24
|
+
vy = v.Operator("grady")
|
|
25
|
+
b = (-1)*CoefficientFunction( (0.25,0.5) )
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
uin = ProlongateCoefficientFunction(IfPos((1.0-x)*(x-0.5),sin((x-0.5)*2*3.14159),0) + IfPos((x-0.0)*(0.5-x),sin((x)*2*3.14159),0) , 0 , tpfes)
|
|
29
|
+
|
|
30
|
+
gradv = CoefficientFunction((vx,vy))
|
|
31
|
+
|
|
32
|
+
a = BilinearForm(tpfes)
|
|
33
|
+
|
|
34
|
+
n = CoefficientFunction((ProlongateCoefficientFunction(specialcf.normal(1),1,tpfes),ProlongateCoefficientFunction(specialcf.normal(1),0,tpfes)))
|
|
35
|
+
bn = b*n
|
|
36
|
+
|
|
37
|
+
a += SymbolicTPBFI ( (-u * b*gradv).Compile() )
|
|
38
|
+
a += SymbolicTPBFI ( (bn) *IfPos(bn, u, u.Other( )) * (v-v.Other()).Compile(), VOL, skeleton=True)
|
|
39
|
+
a += SymbolicTPBFI ( (bn) *IfPos(bn, u, u.Other(bnd = CoefficientFunction(uin) )) * (v).Compile(), BND, skeleton=True)
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
u = GridFunction(tpfes)
|
|
44
|
+
v = GridFunction(tpfes)
|
|
45
|
+
|
|
46
|
+
uu = GridFunction(fes)
|
|
47
|
+
print("Setting")
|
|
48
|
+
u.Set(exp( ProlongateCoefficientFunction(-200*(x-0.4)*(x-0.4), 1, tpfes)+ ProlongateCoefficientFunction(-200*(x-0.4)*(x-0.4),0,tpfes) ) )
|
|
49
|
+
print("Done")
|
|
50
|
+
Transfer2StdMesh(u,uu)
|
|
51
|
+
|
|
52
|
+
Draw(uu,sd=2,autoscale=False)
|
|
53
|
+
|
|
54
|
+
h = u.vec.CreateVector()
|
|
55
|
+
#u.vec[:] = 1.0
|
|
56
|
+
print('To start the simulation type Run(n_steps)!')
|
|
57
|
+
|
|
58
|
+
def Step():
|
|
59
|
+
a.Apply(u.vec,v.vec)
|
|
60
|
+
h.data = 0.00125*v.vec.data
|
|
61
|
+
tpfes.SolveM(rho=CoefficientFunction(1), vec = h)
|
|
62
|
+
u.vec.data-=h.data
|
|
63
|
+
#Redraw()
|
|
64
|
+
|
|
65
|
+
def Run(nsteps):
|
|
66
|
+
count = 0
|
|
67
|
+
with TaskManager():
|
|
68
|
+
for i in range(nsteps):
|
|
69
|
+
print("Step ",i+1, "/",nsteps)
|
|
70
|
+
Step()
|
|
71
|
+
count += 1
|
|
72
|
+
if count % 1 == 0:
|
|
73
|
+
Transfer2StdMesh(u,uu)
|
|
74
|
+
count = 0
|
|
75
|
+
Redraw()
|
|
76
|
+
|
|
77
|
+
Transfer2StdMesh(u,uu)
|
|
78
|
+
Run(100)
|
|
79
|
+
for t in Timers():
|
|
80
|
+
print(t["counts"], t["time"], t["name"])
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
from ngsolve.TensorProductTools import *
|
|
2
|
+
from ngsolve.comp import *
|
|
3
|
+
from ngsolve import *
|
|
4
|
+
from netgen.geom2d import unit_square
|
|
5
|
+
import netgen.gui
|
|
6
|
+
|
|
7
|
+
mesh1 = Mesh(SegMesh(20,0,1))
|
|
8
|
+
mesh2 = Mesh(unit_square.GenerateMesh(maxh=0.15))
|
|
9
|
+
|
|
10
|
+
tpmesh = Mesh(MakeTensorProductMesh(mesh1,mesh2))
|
|
11
|
+
Draw(tpmesh)
|
|
12
|
+
|
|
13
|
+
n=3
|
|
14
|
+
m=3
|
|
15
|
+
|
|
16
|
+
fesx = L2(mesh1,order=n)
|
|
17
|
+
fesy = L2(mesh2,order=m)
|
|
18
|
+
tpfes = TensorProductFESpace([fesx,fesy])
|
|
19
|
+
|
|
20
|
+
fes = L2(tpmesh,order=n)
|
|
21
|
+
|
|
22
|
+
u = tpfes.TrialFunction()
|
|
23
|
+
v = tpfes.TestFunction()
|
|
24
|
+
|
|
25
|
+
vx = v.Operator("gradx")
|
|
26
|
+
vy = v.Operator("grady")
|
|
27
|
+
|
|
28
|
+
b = CoefficientFunction( (ProlongateCoefficientFunction(x-0.5,0,tpfes),ProlongateCoefficientFunction(0.5-x,1,tpfes),0) )
|
|
29
|
+
|
|
30
|
+
uin = CoefficientFunction(0.0)
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
gradv = CoefficientFunction((vx,vy))
|
|
34
|
+
|
|
35
|
+
a = BilinearForm(tpfes)
|
|
36
|
+
|
|
37
|
+
n = CoefficientFunction(( ProlongateCoefficientFunction(specialcf.normal(1)[0],1,tpfes),ProlongateCoefficientFunction(specialcf.normal(2)[0],0,tpfes),ProlongateCoefficientFunction(specialcf.normal(2)[1],0,tpfes)))
|
|
38
|
+
bn = b*n
|
|
39
|
+
|
|
40
|
+
a += SymbolicTPBFI ( -u * b*gradv )
|
|
41
|
+
a += SymbolicTPBFI ( (bn) *IfPos(bn, u, u.Other(bnd = uin )) * (v-v.Other(bnd = 0.0)), VOL, skeleton=True)
|
|
42
|
+
a += SymbolicTPBFI ( (bn) *IfPos(bn, u, u.Other(bnd = uin )) * (v), BND, skeleton=True)
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
u = GridFunction(tpfes)
|
|
46
|
+
v = GridFunction(tpfes)
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
uu = GridFunction(fes)
|
|
50
|
+
|
|
51
|
+
u.Set(exp(ProlongateCoefficientFunction( -70*(x-0.25)*(x-0.25),1,tpfes) + ProlongateCoefficientFunction(-70*(x-0.25)*(x-0.25)-70*(y-0.75)*(y-0.75),0,tpfes) ))
|
|
52
|
+
Transfer2StdMesh(u,uu)
|
|
53
|
+
Draw(uu,sd=3,autoscale=False)
|
|
54
|
+
|
|
55
|
+
h = u.vec.CreateVector()
|
|
56
|
+
print('To start the simulation type Run(n_steps)!')
|
|
57
|
+
def Step():
|
|
58
|
+
a.Apply(u.vec,v.vec)
|
|
59
|
+
h.data = 0.001*v.vec.data
|
|
60
|
+
tpfes.SolveM(rho=CoefficientFunction(1), vec = h)
|
|
61
|
+
u.vec.data-=h.data
|
|
62
|
+
Transfer2StdMesh(u,uu)
|
|
63
|
+
Redraw()
|
|
64
|
+
|
|
65
|
+
def Run(nsteps):
|
|
66
|
+
with TaskManager():
|
|
67
|
+
for i in range(nsteps):
|
|
68
|
+
print("Step ",i+1, "/",nsteps)
|
|
69
|
+
Step()
|
|
70
|
+
|
|
71
|
+
#Run(100)
|
|
72
|
+
for t in Timers():
|
|
73
|
+
print(t["counts"], t["time"], t["name"])
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
from ngsolve.TensorProductTools import *
|
|
2
|
+
from ngsolve.comp import *
|
|
3
|
+
from ngsolve import *
|
|
4
|
+
from netgen.geom2d import unit_square
|
|
5
|
+
import netgen.gui
|
|
6
|
+
|
|
7
|
+
mesh1 = Mesh(unit_square.GenerateMesh(maxh=0.15))
|
|
8
|
+
mesh2 = Mesh(SegMesh(20,0,1))
|
|
9
|
+
|
|
10
|
+
tpmesh = Mesh(MakeTensorProductMesh(mesh1,mesh2))
|
|
11
|
+
Draw(tpmesh)
|
|
12
|
+
|
|
13
|
+
n=3
|
|
14
|
+
m=3
|
|
15
|
+
|
|
16
|
+
fesx = L2(mesh1,order=n)
|
|
17
|
+
fesy = L2(mesh2,order=m)
|
|
18
|
+
tpfes = TensorProductFESpace([fesx,fesy])
|
|
19
|
+
|
|
20
|
+
fes = L2(tpmesh,order=n)
|
|
21
|
+
|
|
22
|
+
u = tpfes.TrialFunction()
|
|
23
|
+
v = tpfes.TestFunction()
|
|
24
|
+
|
|
25
|
+
vx = v.Operator("gradx")
|
|
26
|
+
vy = v.Operator("grady")
|
|
27
|
+
|
|
28
|
+
b = CoefficientFunction( (0,0,1) )
|
|
29
|
+
|
|
30
|
+
uin = CoefficientFunction(0.0)
|
|
31
|
+
|
|
32
|
+
gradv = CoefficientFunction((vx,vy))
|
|
33
|
+
|
|
34
|
+
a = BilinearForm(tpfes)
|
|
35
|
+
|
|
36
|
+
n = CoefficientFunction((ProlongateCoefficientFunction(specialcf.normal(2)[0],1,tpfes),ProlongateCoefficientFunction(specialcf.normal(2)[1],1,tpfes),ProlongateCoefficientFunction(specialcf.normal(1)[0],0,tpfes)))
|
|
37
|
+
bn = b*n
|
|
38
|
+
|
|
39
|
+
a += SymbolicTPBFI ( -u * b*gradv )
|
|
40
|
+
a += SymbolicTPBFI ( (bn) *IfPos(bn, u, u.Other(bnd = uin )) * (v-v.Other(bnd = 0.0)), VOL, skeleton=True)
|
|
41
|
+
a += SymbolicTPBFI ( (bn) *IfPos(bn, u, u.Other(bnd = uin )) * (v), BND, skeleton=True)
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
u = GridFunction(tpfes)
|
|
45
|
+
v = GridFunction(tpfes)
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
uu = GridFunction(fes)
|
|
49
|
+
|
|
50
|
+
u.Set(exp(ProlongateCoefficientFunction(-70*(x-0.125)*(x-0.125)-70*(y-0.125)*(y-0.125),1,tpfes)+ProlongateCoefficientFunction(-70*(x-0.75)*(x-0.75),0,tpfes) ))
|
|
51
|
+
Transfer2StdMesh(u,uu)
|
|
52
|
+
Draw(uu,sd=3,autoscale=False)
|
|
53
|
+
|
|
54
|
+
h = u.vec.CreateVector()
|
|
55
|
+
print('To start the simulation type Run(n_steps)!')
|
|
56
|
+
def Step():
|
|
57
|
+
a.Apply(u.vec,v.vec)
|
|
58
|
+
h.data = 0.001*v.vec.data
|
|
59
|
+
tpfes.SolveM(rho=CoefficientFunction(1), vec = h)
|
|
60
|
+
u.vec.data-=h.data
|
|
61
|
+
Transfer2StdMesh(u,uu)
|
|
62
|
+
Redraw()
|
|
63
|
+
|
|
64
|
+
def Run(nsteps):
|
|
65
|
+
with TaskManager():
|
|
66
|
+
for i in range(nsteps):
|
|
67
|
+
print("Step ",i+1, "/",nsteps)
|
|
68
|
+
Step()
|
|
69
|
+
|
|
70
|
+
Run(100)
|
|
71
|
+
for t in Timers():
|
|
72
|
+
print(t["counts"], t["time"], t["name"])
|