ViennaPS 3.6.0__cp312-cp312-macosx_11_0_arm64.whl → 4.1.0__cp312-cp312-macosx_11_0_arm64.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 ViennaPS might be problematic. Click here for more details.
- viennaps/.dylibs/libomp.dylib +0 -0
- viennaps/.dylibs/libtbb.dylib +0 -0
- viennaps/.dylibs/libvtkCommonComputationalGeometry-9.3.dylib +0 -0
- {viennaps2d → viennaps}/.dylibs/libvtkCommonCore-9.3.dylib +0 -0
- viennaps/.dylibs/libvtkCommonDataModel-9.3.dylib +0 -0
- viennaps/.dylibs/libvtkCommonExecutionModel-9.3.dylib +0 -0
- viennaps/.dylibs/libvtkCommonMath-9.3.dylib +0 -0
- viennaps/.dylibs/libvtkCommonMisc-9.3.dylib +0 -0
- viennaps/.dylibs/libvtkCommonSystem-9.3.dylib +0 -0
- {viennaps2d → viennaps}/.dylibs/libvtkCommonTransforms-9.3.dylib +0 -0
- {viennaps2d → viennaps}/.dylibs/libvtkFiltersCore-9.3.dylib +0 -0
- viennaps/.dylibs/libvtkFiltersGeometry-9.3.dylib +0 -0
- viennaps/.dylibs/libvtkFiltersVerdict-9.3.dylib +0 -0
- viennaps/.dylibs/libvtkIOCore-9.3.dylib +0 -0
- viennaps/.dylibs/libvtkIOXMLParser-9.3.dylib +0 -0
- {viennaps2d → viennaps}/.dylibs/libvtkdoubleconversion-9.3.dylib +0 -0
- viennaps/.dylibs/libvtkexpat-9.3.dylib +0 -0
- viennaps/.dylibs/libvtkfmt-9.3.dylib +0 -0
- {viennaps2d → viennaps}/.dylibs/libvtkkissfft-9.3.dylib +0 -0
- {viennaps2d → viennaps}/.dylibs/libvtkloguru-9.3.dylib +0 -0
- viennaps/.dylibs/libvtklz4-9.3.dylib +0 -0
- viennaps/.dylibs/libvtklzma-9.3.dylib +0 -0
- viennaps/.dylibs/libvtkpugixml-9.3.dylib +0 -0
- viennaps/.dylibs/libvtksys-9.3.dylib +0 -0
- viennaps/.dylibs/libvtkverdict-9.3.dylib +0 -0
- viennaps/__init__.py +126 -0
- viennaps/__init__.pyi +241 -0
- viennaps/_core/__init__.pyi +1154 -0
- viennaps/_core/constants.pyi +46 -0
- viennaps/_core/gpu.pyi +74 -0
- viennaps/_core/util.pyi +13 -0
- viennaps/_core.cpython-312-darwin.so +0 -0
- viennaps/d2/__init__.pyi +1505 -0
- viennaps/d2/gpu.pyi +90 -0
- viennaps/d3/__init__.pyi +1510 -0
- viennaps/d3/gpu.pyi +90 -0
- {viennaps-3.6.0.dist-info → viennaps-4.1.0.dist-info}/METADATA +65 -43
- viennaps-4.1.0.dist-info/RECORD +279 -0
- {viennaps-3.6.0.dist-info → viennaps-4.1.0.dist-info}/WHEEL +1 -1
- {viennaps-3.6.0.dist-info → viennaps-4.1.0.dist-info}/licenses/LICENSE +1 -6
- viennaps.libs/cmake_install.cmake +1 -1
- viennaps.libs/common/cmake_install.cmake +1 -1
- viennaps.libs/common/lexers/CMakeFiles/lexers.dir/stringstream.cpp.o +0 -0
- viennaps.libs/common/lexers/CMakeFiles/lexers.dir/tokenstream.cpp.o +0 -0
- viennaps.libs/common/lexers/cmake_install.cmake +1 -1
- viennaps.libs/common/math/CMakeFiles/math.dir/constants.cpp.o +0 -0
- viennaps.libs/common/math/cmake_install.cmake +1 -1
- viennaps.libs/common/simd/CMakeFiles/simd.dir/sse.cpp.o +0 -0
- viennaps.libs/common/simd/cmake_install.cmake +1 -1
- viennaps.libs/common/sys/CMakeFiles/sys.dir/alloc.cpp.o +0 -0
- viennaps.libs/common/sys/CMakeFiles/sys.dir/barrier.cpp.o +0 -0
- viennaps.libs/common/sys/CMakeFiles/sys.dir/condition.cpp.o +0 -0
- viennaps.libs/common/sys/CMakeFiles/sys.dir/estring.cpp.o +0 -0
- viennaps.libs/common/sys/CMakeFiles/sys.dir/filename.cpp.o +0 -0
- viennaps.libs/common/sys/CMakeFiles/sys.dir/library.cpp.o +0 -0
- viennaps.libs/common/sys/CMakeFiles/sys.dir/mutex.cpp.o +0 -0
- viennaps.libs/common/sys/CMakeFiles/sys.dir/regression.cpp.o +0 -0
- viennaps.libs/common/sys/CMakeFiles/sys.dir/sysinfo.cpp.o +0 -0
- viennaps.libs/common/sys/CMakeFiles/sys.dir/thread.cpp.o +0 -0
- viennaps.libs/common/sys/cmake_install.cmake +1 -1
- viennaps.libs/common/tasking/CMakeFiles/tasking.dir/taskschedulertbb.cpp.o +0 -0
- viennaps.libs/common/tasking/cmake_install.cmake +1 -1
- viennaps.libs/kernels/CMakeFiles/Export/0919fd033fbc7492b4ed7221a30ac4ed/embree-targets.cmake +1 -1
- viennaps.libs/kernels/CMakeFiles/embree.dir/builders/primrefgen.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/bvh/bvh.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/bvh/bvh4_factory.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/bvh/bvh8_factory.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/bvh/bvh_builder.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/bvh/bvh_builder_hair.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/bvh/bvh_builder_hair_mb.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/bvh/bvh_builder_morton.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/bvh/bvh_builder_sah.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/bvh/bvh_builder_sah_mb.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/bvh/bvh_builder_sah_spatial.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/bvh/bvh_builder_subdiv.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/bvh/bvh_builder_twolevel.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/bvh/bvh_collider.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/bvh/bvh_intersector1_bvh4.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/bvh/bvh_intersector_hybrid4_bvh4.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/bvh/bvh_refit.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/bvh/bvh_rotate.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/bvh/bvh_statistics.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/acceln.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/accelset.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/alloc.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/device.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/geometry.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/motion_derivative.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/rtcore.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/rtcore_builder.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/scene.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/scene_curves.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/scene_grid_mesh.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/scene_instance.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/scene_instance_array.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/scene_line_segments.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/scene_points.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/scene_quad_mesh.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/scene_subdiv_mesh.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/scene_triangle_mesh.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/scene_user_geometry.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/scene_verify.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/stat.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/common/state.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/geometry/curve_intersector_virtual_4i.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/geometry/curve_intersector_virtual_4i_mb.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/geometry/curve_intersector_virtual_4v.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/geometry/curve_intersector_virtual_8i.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/geometry/curve_intersector_virtual_8i_mb.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/geometry/curve_intersector_virtual_8v.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/geometry/grid_soa.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/geometry/instance_array_intersector.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/geometry/instance_intersector.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/geometry/primitive4.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/subdiv/bezier_curve.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/subdiv/bspline_curve.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/subdiv/catmullclark_coefficients.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/subdiv/catmullrom_curve.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/subdiv/subdivpatch1base.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/subdiv/subdivpatch1base_eval.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree.dir/subdiv/tessellation_cache.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/builders/primrefgen.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/bvh/bvh_builder.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/bvh/bvh_builder_hair.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/bvh/bvh_builder_hair_mb.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/bvh/bvh_builder_morton.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/bvh/bvh_builder_sah.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/bvh/bvh_builder_sah_mb.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/bvh/bvh_builder_sah_spatial.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/bvh/bvh_builder_subdiv.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/bvh/bvh_builder_twolevel.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/bvh/bvh_collider.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/bvh/bvh_intersector1_bvh4.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/bvh/bvh_intersector1_bvh8.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/bvh/bvh_intersector_hybrid4_bvh4.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/bvh/bvh_intersector_hybrid4_bvh8.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/bvh/bvh_intersector_hybrid8_bvh4.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/bvh/bvh_intersector_hybrid8_bvh8.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/bvh/bvh_refit.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/bvh/bvh_rotate.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/common/scene_curves.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/common/scene_grid_mesh.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/common/scene_instance.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/common/scene_instance_array.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/common/scene_line_segments.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/common/scene_points.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/common/scene_quad_mesh.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/common/scene_subdiv_mesh.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/common/scene_triangle_mesh.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/common/scene_user_geometry.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/geometry/curve_intersector_virtual_4i.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/geometry/curve_intersector_virtual_4i_mb.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/geometry/curve_intersector_virtual_4v.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/geometry/curve_intersector_virtual_8i.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/geometry/curve_intersector_virtual_8i_mb.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/geometry/curve_intersector_virtual_8v.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/geometry/grid_soa.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/geometry/instance_array_intersector.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/geometry/instance_intersector.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/geometry/primitive8.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/CMakeFiles/embree_avx2.dir/__/__/__/subdiv/subdivpatch1base_eval.cpp.avx2.cpp.o +0 -0
- viennaps.libs/kernels/cmake_install.cmake +2 -2
- viennaps.libs/libembree4.dylib +0 -0
- viennaps.libs/libembree_avx2.a +0 -0
- viennaps.libs/liblexers.a +0 -0
- viennaps.libs/libmath.a +0 -0
- viennaps.libs/libsimd.a +0 -0
- viennaps.libs/libsys.a +0 -0
- viennaps.libs/libtasking.a +0 -0
- viennaps.libs/libtbb.dylib +0 -0
- viennaps.libs/libvtkCommonComputationalGeometry-9.3.dylib +0 -0
- viennaps.libs/libvtkCommonCore-9.3.dylib +0 -0
- viennaps.libs/libvtkCommonDataModel-9.3.dylib +0 -0
- viennaps.libs/libvtkCommonExecutionModel-9.3.dylib +0 -0
- viennaps.libs/libvtkCommonMath-9.3.dylib +0 -0
- viennaps.libs/libvtkCommonMisc-9.3.dylib +0 -0
- viennaps.libs/libvtkCommonSystem-9.3.dylib +0 -0
- viennaps.libs/libvtkCommonTransforms-9.3.dylib +0 -0
- viennaps.libs/libvtkFiltersCore-9.3.dylib +0 -0
- viennaps.libs/libvtkFiltersGeneral-9.3.dylib +0 -0
- viennaps.libs/libvtkFiltersGeometry-9.3.dylib +0 -0
- viennaps.libs/libvtkFiltersVerdict-9.3.dylib +0 -0
- viennaps.libs/libvtkIOCore-9.3.dylib +0 -0
- viennaps.libs/libvtkIOXML-9.3.dylib +0 -0
- viennaps.libs/libvtkIOXMLParser-9.3.dylib +0 -0
- viennaps.libs/libvtkdoubleconversion-9.3.dylib +0 -0
- viennaps.libs/libvtkexpat-9.3.dylib +0 -0
- viennaps.libs/libvtkfmt-9.3.dylib +0 -0
- viennaps.libs/libvtkkissfft-9.3.dylib +0 -0
- viennaps.libs/libvtkloguru-9.3.dylib +0 -0
- viennaps.libs/libvtklz4-9.3.dylib +0 -0
- viennaps.libs/libvtklzma-9.3.dylib +0 -0
- viennaps.libs/libvtkpugixml-9.3.dylib +0 -0
- viennaps.libs/libvtksys-9.3.dylib +0 -0
- viennaps.libs/libvtkverdict-9.3.dylib +0 -0
- viennaps.libs/tests/cmake_install.cmake +1 -1
- viennaps-3.6.0.dist-info/RECORD +0 -281
- viennaps.libs/libvtkzlib-9.3.dylib +0 -0
- viennaps2d/.dylibs/libomp.dylib +0 -0
- viennaps2d/.dylibs/libtbb.dylib +0 -0
- viennaps2d/.dylibs/libvtkCommonComputationalGeometry-9.3.dylib +0 -0
- viennaps2d/.dylibs/libvtkCommonDataModel-9.3.dylib +0 -0
- viennaps2d/.dylibs/libvtkCommonExecutionModel-9.3.dylib +0 -0
- viennaps2d/.dylibs/libvtkCommonMath-9.3.dylib +0 -0
- viennaps2d/.dylibs/libvtkCommonMisc-9.3.dylib +0 -0
- viennaps2d/.dylibs/libvtkCommonSystem-9.3.dylib +0 -0
- viennaps2d/.dylibs/libvtkFiltersGeometry-9.3.dylib +0 -0
- viennaps2d/.dylibs/libvtkFiltersVerdict-9.3.dylib +0 -0
- viennaps2d/.dylibs/libvtkIOCore-9.3.dylib +0 -0
- viennaps2d/.dylibs/libvtkIOXMLParser-9.3.dylib +0 -0
- viennaps2d/.dylibs/libvtkexpat-9.3.dylib +0 -0
- viennaps2d/.dylibs/libvtkfmt-9.3.dylib +0 -0
- viennaps2d/.dylibs/libvtklz4-9.3.dylib +0 -0
- viennaps2d/.dylibs/libvtklzma-9.3.dylib +0 -0
- viennaps2d/.dylibs/libvtkpugixml-9.3.dylib +0 -0
- viennaps2d/.dylibs/libvtksys-9.3.dylib +0 -0
- viennaps2d/.dylibs/libvtkverdict-9.3.dylib +0 -0
- viennaps2d/.dylibs/libvtkzlib-9.3.dylib +0 -0
- viennaps2d/__init__.py +0 -80
- viennaps2d/__init__.pyi +0 -6
- viennaps2d/viennaps2d.cpython-311-darwin.so +0 -0
- viennaps2d/viennaps2d.cpython-312-darwin.so +0 -0
- viennaps2d/viennaps2d.pyi +0 -1399
- viennaps3d/__init__.py +0 -80
- viennaps3d/__init__.pyi +0 -6
- viennaps3d/gpu.pyi +0 -147
- viennaps3d/viennaps3d.cpython-311-darwin.so +0 -0
- viennaps3d/viennaps3d.cpython-312-darwin.so +0 -0
- viennaps3d/viennaps3d.pyi +0 -1324
viennaps/d3/gpu.pyi
ADDED
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
"""
|
|
2
|
+
GPU accelerated functions.
|
|
3
|
+
"""
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
import collections.abc
|
|
7
|
+
import typing
|
|
8
|
+
import viennaps._core
|
|
9
|
+
import viennaps.d3
|
|
10
|
+
|
|
11
|
+
__all__: list[str] = [
|
|
12
|
+
"FaradayCageEtching",
|
|
13
|
+
"HBrO2Etching",
|
|
14
|
+
"IonBeamEtching",
|
|
15
|
+
"MultiParticleProcess",
|
|
16
|
+
"ProcessModelGPU",
|
|
17
|
+
"SF6O2Etching",
|
|
18
|
+
"SingleParticleProcess",
|
|
19
|
+
]
|
|
20
|
+
|
|
21
|
+
class FaradayCageEtching(viennaps.d3.ProcessModel):
|
|
22
|
+
def __init__(
|
|
23
|
+
self,
|
|
24
|
+
parameters: viennaps._core.FaradayCageParameters,
|
|
25
|
+
maskMaterials: collections.abc.Sequence[viennaps._core.Material],
|
|
26
|
+
) -> None: ...
|
|
27
|
+
|
|
28
|
+
class HBrO2Etching(ProcessModelGPU):
|
|
29
|
+
def __init__(self, parameters: viennaps._core.PlasmaEtchingParameters) -> None: ...
|
|
30
|
+
|
|
31
|
+
class IonBeamEtching(viennaps.d3.ProcessModel):
|
|
32
|
+
def __init__(
|
|
33
|
+
self,
|
|
34
|
+
parameters: viennaps._core.IBEParameters,
|
|
35
|
+
maskMaterials: collections.abc.Sequence[viennaps._core.Material],
|
|
36
|
+
) -> None: ...
|
|
37
|
+
|
|
38
|
+
class MultiParticleProcess(ProcessModelGPU):
|
|
39
|
+
def __init__(self) -> None: ...
|
|
40
|
+
def addIonParticle(
|
|
41
|
+
self,
|
|
42
|
+
sourcePower: typing.SupportsFloat,
|
|
43
|
+
thetaRMin: typing.SupportsFloat = 0.0,
|
|
44
|
+
thetaRMax: typing.SupportsFloat = 90.0,
|
|
45
|
+
minAngle: typing.SupportsFloat = 0.0,
|
|
46
|
+
B_sp: typing.SupportsFloat = -1.0,
|
|
47
|
+
meanEnergy: typing.SupportsFloat = 0.0,
|
|
48
|
+
sigmaEnergy: typing.SupportsFloat = 0.0,
|
|
49
|
+
thresholdEnergy: typing.SupportsFloat = 0.0,
|
|
50
|
+
inflectAngle: typing.SupportsFloat = 0.0,
|
|
51
|
+
n: typing.SupportsFloat = 1,
|
|
52
|
+
label: str = "ionFlux",
|
|
53
|
+
) -> None: ...
|
|
54
|
+
@typing.overload
|
|
55
|
+
def addNeutralParticle(
|
|
56
|
+
self, stickingProbability: typing.SupportsFloat, label: str = "neutralFlux"
|
|
57
|
+
) -> None: ...
|
|
58
|
+
@typing.overload
|
|
59
|
+
def addNeutralParticle(
|
|
60
|
+
self,
|
|
61
|
+
materialSticking: collections.abc.Mapping[
|
|
62
|
+
viennaps._core.Material, typing.SupportsFloat
|
|
63
|
+
],
|
|
64
|
+
defaultStickingProbability: typing.SupportsFloat = 1.0,
|
|
65
|
+
label: str = "neutralFlux",
|
|
66
|
+
) -> None: ...
|
|
67
|
+
def setRateFunction(
|
|
68
|
+
self,
|
|
69
|
+
arg0: collections.abc.Callable[
|
|
70
|
+
[collections.abc.Sequence[typing.SupportsFloat], viennaps._core.Material],
|
|
71
|
+
float,
|
|
72
|
+
],
|
|
73
|
+
) -> None: ...
|
|
74
|
+
|
|
75
|
+
class ProcessModelGPU(viennaps.d3.ProcessModelBase):
|
|
76
|
+
pass
|
|
77
|
+
|
|
78
|
+
class SF6O2Etching(ProcessModelGPU):
|
|
79
|
+
def __init__(self, parameters: viennaps._core.PlasmaEtchingParameters) -> None: ...
|
|
80
|
+
|
|
81
|
+
class SingleParticleProcess(ProcessModelGPU):
|
|
82
|
+
def __init__(
|
|
83
|
+
self,
|
|
84
|
+
materialRates: collections.abc.Mapping[
|
|
85
|
+
viennaps._core.Material, typing.SupportsFloat
|
|
86
|
+
],
|
|
87
|
+
rate: typing.SupportsFloat,
|
|
88
|
+
stickingProbability: typing.SupportsFloat,
|
|
89
|
+
sourceExponent: typing.SupportsFloat,
|
|
90
|
+
) -> None: ...
|
|
@@ -1,13 +1,8 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: ViennaPS
|
|
3
|
-
Version:
|
|
4
|
-
Summary:
|
|
5
|
-
License:
|
|
6
|
-
licenses. The individual licenses apply for this specific part. Please consult
|
|
7
|
-
the respective LICENSE files.
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
Copyright (c) 2015 Institute for Microelectronics, TU Wien.
|
|
3
|
+
Version: 4.1.0
|
|
4
|
+
Summary: Topography simulation library for microelectronic fabrication processes
|
|
5
|
+
License: Copyright (c) 2025 Institute for Microelectronics, TU Wien.
|
|
11
6
|
|
|
12
7
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
13
8
|
of this software and associated documentation files (the "Software"), to deal
|
|
@@ -31,27 +26,28 @@ Project-URL: Homepage, https://viennatools.github.io/ViennaPS/
|
|
|
31
26
|
Project-URL: Documentation, https://viennatools.github.io/ViennaPS/
|
|
32
27
|
Project-URL: Repository, https://github.com/ViennaTools/ViennaPS
|
|
33
28
|
Project-URL: Issues, https://github.com/ViennaTools/ViennaPS/issues
|
|
34
|
-
Requires-Dist: ViennaLS>=
|
|
29
|
+
Requires-Dist: ViennaLS>=5.0.1
|
|
35
30
|
Description-Content-Type: text/markdown
|
|
36
31
|
|
|
37
32
|
<div align="center">
|
|
38
33
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
<
|
|
34
|
+
<picture>
|
|
35
|
+
<source srcset="https://raw.githubusercontent.com/ViennaTools/ViennaPS/master/assets/ViennaPS_title-dark.png" media="(prefers-color-scheme: dark)">
|
|
36
|
+
<source srcset="https://raw.githubusercontent.com/ViennaTools/ViennaPS/master/assets/ViennaPS_title.png" media="(prefers-color-scheme: light)">
|
|
37
|
+
<img src="https://raw.githubusercontent.com/ViennaTools/ViennaPS/master/assets/ViennaPS_title.png" alt="ViennaPS" width=500>
|
|
38
|
+
</picture>
|
|
42
39
|
|
|
40
|
+
---
|
|
41
|
+
|
|
43
42
|
[](https://github.com/ViennaTools/ViennaPS/actions/workflows/python.yml)
|
|
44
43
|
[](https://github.com/ViennaTools/ViennaPS/actions/workflows/build.yml)
|
|
45
44
|
[](https://pypi.org/project/ViennaPS/)
|
|
46
45
|
|
|
47
46
|
</div>
|
|
48
47
|
|
|
49
|
-
ViennaPS is a header-only C++ library for
|
|
48
|
+
ViennaPS is a header-only C++ library for topography simulation in microelectronic fabrication processes. It models the evolution of 2D and 3D surfaces during etching, deposition, and related steps, combining advanced level-set methods for surface evolution with Monte Carlo ray tracing for flux calculation. This allows accurate, feature-scale simulation of complex fabrication geometries.
|
|
50
49
|
|
|
51
|
-
ViennaPS
|
|
52
|
-
|
|
53
|
-
> [!NOTE]
|
|
54
|
-
> ViennaPS is under heavy development and improved daily. If you do have suggestions or find bugs, please let us know!
|
|
50
|
+
ViennaPS supports both physical process models and fast emulation approaches, enabling flexible and efficient development of semiconductor processes. It can be easily integrated into existing C++ projects and also provides Python bindings for use in Python-based workflows. The library is actively developed and continuously improved to address the needs of process and topography simulation in microelectronics.
|
|
55
51
|
|
|
56
52
|
## Quick Start
|
|
57
53
|
|
|
@@ -66,6 +62,10 @@ To use ViennaPS in C++, clone the repository and follow the installation steps b
|
|
|
66
62
|
For full documentation, visit [ViennaPS Documentation](https://viennatools.github.io/ViennaPS/).
|
|
67
63
|
|
|
68
64
|
## Releases
|
|
65
|
+
|
|
66
|
+
> [!NOTE]
|
|
67
|
+
> ViennaPS is under heavy development and improved daily. If you do have suggestions or find bugs, please let us know!
|
|
68
|
+
|
|
69
69
|
Releases are tagged on the master branch and available in the [releases section](https://github.com/ViennaTools/ViennaPS/releases).
|
|
70
70
|
|
|
71
71
|
ViennaPS is also available on the [Python Package Index (PyPI)](https://pypi.org/project/ViennaPS/) for most platforms.
|
|
@@ -97,7 +97,7 @@ ViennaPS is also available on the [Python Package Index (PyPI)](https://pypi.org
|
|
|
97
97
|
|
|
98
98
|
* [ViennaCS](https://github.com/ViennaTools/viennacs)
|
|
99
99
|
|
|
100
|
-
* [pybind11](https://github.com/pybind/pybind11) (
|
|
100
|
+
* [pybind11](https://github.com/pybind/pybind11) (3.0.0+, only for building Python libs)
|
|
101
101
|
|
|
102
102
|
The CMake configuration automatically checks if the dependencies are installed.
|
|
103
103
|
If the dependencies are not found on the system, they will be built from source. To use local installations of the dependencies, the `VIENNAPS_LOOKUP_DIRS` variable can be set to the installation path of the dependencies.
|
|
@@ -105,7 +105,7 @@ If the dependencies are not found on the system, they will be built from source.
|
|
|
105
105
|
## Installing
|
|
106
106
|
|
|
107
107
|
> [!NOTE]
|
|
108
|
-
> __For more detailed installation instructions and troubleshooting tips,
|
|
108
|
+
> __For more detailed installation instructions and troubleshooting tips, have a look at the ViennaPS [documentation](https://viennatools.github.io/ViennaPS/inst/).__
|
|
109
109
|
|
|
110
110
|
ViennaPS is a header-only library, so no formal installation is required. However, following the steps below helps organize and manage dependencies more effectively:
|
|
111
111
|
|
|
@@ -117,7 +117,7 @@ cmake -B build && cmake --build build
|
|
|
117
117
|
cmake --install build --prefix "/path/to/your/custom/install/"
|
|
118
118
|
```
|
|
119
119
|
|
|
120
|
-
This will install the necessary headers and CMake files to the specified path. If `--prefix` is not specified, it will be installed to the standard path for your system, usually `/usr/local/` .
|
|
120
|
+
This will install the necessary headers and CMake files to the specified path. If `--prefix` is not specified, it will be installed to the standard path for your system, usually `/usr/local/` on Linux-based systems.
|
|
121
121
|
|
|
122
122
|
## Building the Python package
|
|
123
123
|
|
|
@@ -130,28 +130,31 @@ cd ViennaPS
|
|
|
130
130
|
pip install .
|
|
131
131
|
```
|
|
132
132
|
|
|
133
|
-
> Some features of the ViennaPS Python module
|
|
133
|
+
> Some features of the ViennaPS Python module depend on the ViennaLS Python module. The ViennaLS is installed automatically as a dependency.
|
|
134
|
+
> Note: A locally built ViennaPS Python module is typically not compatible with the ViennaLS package from PyPI. For details and troubleshooting, see [this guide](https://viennatools.github.io/ViennaPS/inst/troubleshooting.html#python-importerror).
|
|
134
135
|
|
|
135
136
|
## Using the Python package
|
|
136
137
|
|
|
137
|
-
The
|
|
138
|
+
The ViennaPS Python package can be used by importing it in your Python scripts:
|
|
138
139
|
```python
|
|
139
|
-
import
|
|
140
|
+
import viennaps as vps
|
|
140
141
|
```
|
|
141
142
|
|
|
142
|
-
|
|
143
|
-
|
|
143
|
+
By default, ViennaPS operates in two dimensions. You can set the dimension using:
|
|
144
144
|
```python
|
|
145
|
-
|
|
145
|
+
vps.setDimension(2) # For 2D simulations
|
|
146
|
+
vps.setDimension(3) # For 3D simulations
|
|
146
147
|
```
|
|
147
148
|
|
|
149
|
+
For more details and examples, refer to the official [documentation](https://viennatools.github.io/ViennaPS/).
|
|
150
|
+
|
|
148
151
|
## Integration in CMake projects
|
|
149
152
|
|
|
150
153
|
We recommend using [CPM.cmake](https://github.com/cpm-cmake/CPM.cmake) to consume this library.
|
|
151
154
|
|
|
152
155
|
* Installation with CPM
|
|
153
156
|
```cmake
|
|
154
|
-
CPMAddPackage("gh:viennatools/viennaps@
|
|
157
|
+
CPMAddPackage("gh:viennatools/viennaps@4.0.1")
|
|
155
158
|
```
|
|
156
159
|
|
|
157
160
|
* With a local installation
|
|
@@ -164,16 +167,25 @@ We recommend using [CPM.cmake](https://github.com/cpm-cmake/CPM.cmake) to consum
|
|
|
164
167
|
target_link_libraries(${PROJECT_NAME} PUBLIC ViennaTools::ViennaPS)
|
|
165
168
|
```
|
|
166
169
|
|
|
170
|
+
### Shared Library
|
|
171
|
+
|
|
172
|
+
In order to save build time during development, dynamically linked shared libraries can be used if ViennaPS was built with them. This is done by precompiling the most common template specialisations. In order to use shared libraries, use
|
|
173
|
+
|
|
174
|
+
```bash
|
|
175
|
+
cmake -B build -DVIENNALS_PRECOMPILE_HEADERS=ON
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
If ViennaPS was built with shared libraries and you use ViennaPS in your project (see above), CMake will automatically link them to your project.
|
|
179
|
+
|
|
167
180
|
## GPU Acceleration (Experimental)
|
|
168
181
|
|
|
169
|
-
As of version 3.4.0, ViennaPS supports GPU acceleration for the ray tracing part of the library. This feature is still experimental and may not work on all systems. Details on how to enable GPU functionality can be found in the [documentation](https://viennatools.github.io/ViennaPS/inst/).
|
|
182
|
+
As of version 3.4.0, ViennaPS supports GPU acceleration for the ray tracing part of the library. This feature is still experimental and may not work on all systems. Details on how to enable GPU functionality can be found in the [documentation](https://viennatools.github.io/ViennaPS/inst/gpu.html).
|
|
170
183
|
|
|
171
184
|
## Basic Examples
|
|
172
185
|
|
|
173
186
|
### Building
|
|
174
187
|
|
|
175
188
|
The examples can be built using CMake:
|
|
176
|
-
> __Important__: Make sure all dependencies are installed and have been built previously
|
|
177
189
|
|
|
178
190
|
```bash
|
|
179
191
|
git clone https://github.com/ViennaTools/ViennaPS.git
|
|
@@ -185,7 +197,7 @@ cmake --build build
|
|
|
185
197
|
|
|
186
198
|
The examples can then be executed in their respective build folders with the config files, e.g.:
|
|
187
199
|
```bash
|
|
188
|
-
cd examples/exampleName
|
|
200
|
+
cd build/examples/exampleName
|
|
189
201
|
./exampleName.bat config.txt # (Windows)
|
|
190
202
|
./exampleName config.txt # (Other)
|
|
191
203
|
```
|
|
@@ -197,12 +209,12 @@ Individual examples can also be build by calling `make` in their respective buil
|
|
|
197
209
|
This [example](https://github.com/ViennaTools/ViennaPS/tree/master/examples/trenchDeposition) focuses on a particle deposition process within a trench geometry. By default, the simulation presents a 2D representation of the trench. Nevertheless, users have the flexibility to conduct 3D simulations by adjusting the value of the constant _D_ in __trenchDeposition.cpp__ to 3. Customization of process and geometry parameters is achieved through the __config.txt__ file. The accompanying image illustrates instances of the trench deposition process, showcasing variations in the particle sticking probability _s_.
|
|
198
210
|
|
|
199
211
|
<div align="center">
|
|
200
|
-
<img src="assets/deposition.
|
|
212
|
+
<img src="https://raw.githubusercontent.com/ViennaTools/ViennaPS/master/assets/deposition.png" width=700 style="background-color:white;">
|
|
201
213
|
</div>
|
|
202
214
|
|
|
203
|
-
### SF<sub>6</sub
|
|
215
|
+
### SF<sub>6</sub>/O<sub>2</sub> Hole Etching
|
|
204
216
|
|
|
205
|
-
This [example](https://github.com/ViennaTools/ViennaPS/tree/master/examples/holeEtching) demonstrates a hole etching process with a SF<sub>6</sub
|
|
217
|
+
This [example](https://github.com/ViennaTools/ViennaPS/tree/master/examples/holeEtching) demonstrates a hole etching process with a SF<sub>6</sub>/O<sub>2</sub> plasma etching chemistry with ion bombardment. The process is controlled by various parameters, including geometry and plasma conditions, which can be adjusted in the __config.txt__ file.
|
|
206
218
|
|
|
207
219
|
The image presents the results of different flux configurations, as tested in _testFluxes.py_. Each structure represents a variation in flux conditions, leading to differences in hole shape, depth, and profile characteristics. The variations highlight the influence of ion and neutral fluxes on the etching process.
|
|
208
220
|
|
|
@@ -211,7 +223,7 @@ The image presents the results of different flux configurations, as tested in _t
|
|
|
211
223
|
> The images shown here were generated using **ViennaPS v3.6.0**.
|
|
212
224
|
|
|
213
225
|
<div align="center">
|
|
214
|
-
<img src="assets/sf6o2_results.png" width=700 style="background-color:white;">
|
|
226
|
+
<img src="https://raw.githubusercontent.com/ViennaTools/ViennaPS/master/assets/sf6o2_results.png" width=700 style="background-color:white;">
|
|
215
227
|
</div>
|
|
216
228
|
|
|
217
229
|
### Bosch Process
|
|
@@ -225,16 +237,23 @@ This [example](https://github.com/ViennaTools/ViennaPS/tree/master/examples/bosc
|
|
|
225
237
|
This comparison highlights the trade-offs between computational efficiency and physical accuracy in DRIE simulations.
|
|
226
238
|
|
|
227
239
|
<div align="center">
|
|
228
|
-
<img src="assets/bosch_process.png" width=700 style="background-color:white;">
|
|
240
|
+
<img src="https://raw.githubusercontent.com/ViennaTools/ViennaPS/master/assets/bosch_process.png" width=700 style="background-color:white;">
|
|
229
241
|
</div>
|
|
230
242
|
|
|
243
|
+
### Wet Etching
|
|
231
244
|
|
|
232
|
-
|
|
245
|
+
This [example](https://github.com/ViennaTools/ViennaPS/tree/master/examples/cantileverWetEtching) demonstrates the wet etching process, specifically focusing on the cantilever structure. The simulation captures the etching dynamics and the influence of crystallographic directions on the etch profile.
|
|
233
246
|
|
|
234
|
-
|
|
247
|
+
<div align="center">
|
|
248
|
+
<img src="https://raw.githubusercontent.com/ViennaTools/ViennaPS/master/assets/wet_etching.png" width=700 style="background-color:white;">
|
|
249
|
+
</div>
|
|
250
|
+
|
|
251
|
+
### Selective Epitaxy
|
|
252
|
+
|
|
253
|
+
This [example](https://github.com/ViennaTools/ViennaPS/tree/master/examples/selectiveEpitaxy) demonstrates the selective epitaxy process, focusing on the growth of SiGe on a Si substrate. Similar to wet etching, the process is influenced by crystallographic directions, which can be adjusted in the __config.txt__ file. The simulation captures the growth dynamics and the resulting SiGe structure.
|
|
235
254
|
|
|
236
255
|
<div align="center">
|
|
237
|
-
<img src="assets/
|
|
256
|
+
<img src="https://raw.githubusercontent.com/ViennaTools/ViennaPS/master/assets/epitaxy.png" width=700 style="background-color:white;">
|
|
238
257
|
</div>
|
|
239
258
|
|
|
240
259
|
### Redeposition During Selective Etching
|
|
@@ -242,7 +261,7 @@ In the anisotropic process model, the etch or deposition rates are dependent on
|
|
|
242
261
|
This [example](https://github.com/ViennaTools/ViennaPS/tree/master/examples/oxideRegrowth) demonstrates capturing etching byproducts and the subsequent redeposition during a selective etching process in a Si<sub>3</sub>N<sub>4</sub>/SiO<sub>2</sub> stack. The etching byproducts are captured in a cell set description of the etching plasma. To model the dynamics of these etching byproducts, a convection-diffusion equation is solved on the cell set using finite differences. The redeposition is then captured by adding up the byproducts in every step and using this information to generate a velocity field on the etched surface.
|
|
243
262
|
|
|
244
263
|
<div align="center">
|
|
245
|
-
<img src="assets/redeposition.gif" width=700 style="background-color:white;">
|
|
264
|
+
<img src="https://raw.githubusercontent.com/ViennaTools/ViennaPS/master/assets/redeposition.gif" width=700 style="background-color:white;">
|
|
246
265
|
</div>
|
|
247
266
|
|
|
248
267
|
### GDS Mask Import Example
|
|
@@ -250,7 +269,7 @@ This [example](https://github.com/ViennaTools/ViennaPS/tree/master/examples/oxid
|
|
|
250
269
|
This [example](https://github.com/ViennaTools/ViennaPS/tree/master/examples/GDSReader) tests the full GDS mask import, blurring, rotation, scaling, and flipping as well as the level set conversion pipeline. Shown below is the result after applying proximity correction and extrusion on a simple test.
|
|
251
270
|
|
|
252
271
|
<div align="center">
|
|
253
|
-
<img src="assets/masks.png" width=1200 style="background-color:white;">
|
|
272
|
+
<img src="https://raw.githubusercontent.com/ViennaTools/ViennaPS/master/assets/masks.png" width=1200 style="background-color:white;">
|
|
254
273
|
</div>
|
|
255
274
|
|
|
256
275
|
|
|
@@ -287,6 +306,9 @@ Contact us via: viennatools@iue.tuwien.ac.at
|
|
|
287
306
|
ViennaPS was developed under the aegis of the 'Institute for Microelectronics' at the 'TU Wien'.
|
|
288
307
|
http://www.iue.tuwien.ac.at/
|
|
289
308
|
|
|
290
|
-
License
|
|
291
|
-
|
|
292
|
-
|
|
309
|
+
## License
|
|
310
|
+
|
|
311
|
+
ViennaPS is licensed under the [MIT License](./LICENSE).
|
|
312
|
+
|
|
313
|
+
Some third-party libraries used by ViennaPS are under their own permissive licenses (MIT, BSD, Apache-2.0).
|
|
314
|
+
See [`THIRD_PARTY_LICENSES.md`](./THIRD_PARTY_LICENSES.md) for details.
|