ViennaPS 3.4.0__cp312-cp312-macosx_11_0_arm64.whl → 3.5.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-3.4.0.dist-info → viennaps-3.5.0.dist-info}/METADATA +3 -3
- {viennaps-3.4.0.dist-info → viennaps-3.5.0.dist-info}/RECORD +32 -32
- viennaps.libs/cmake_install.cmake +2 -2
- viennaps.libs/common/cmake_install.cmake +2 -2
- viennaps.libs/common/lexers/cmake_install.cmake +2 -2
- viennaps.libs/common/math/cmake_install.cmake +2 -2
- viennaps.libs/common/simd/cmake_install.cmake +2 -2
- viennaps.libs/common/sys/cmake_install.cmake +2 -2
- viennaps.libs/common/tasking/cmake_install.cmake +2 -2
- viennaps.libs/kernels/CMakeFiles/Export/0919fd033fbc7492b4ed7221a30ac4ed/embree-targets.cmake +1 -1
- viennaps.libs/kernels/cmake_install.cmake +3 -3
- 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/tests/cmake_install.cmake +2 -2
- viennaps2d/.dylibs/libomp.dylib +0 -0
- viennaps2d/__init__.py +15 -2
- viennaps2d/viennaps2d.cpython-310-darwin.so +0 -0
- viennaps2d/viennaps2d.cpython-311-darwin.so +0 -0
- viennaps2d/viennaps2d.cpython-312-darwin.so +0 -0
- viennaps2d/viennaps2d.pyi +225 -87
- viennaps3d/__init__.py +15 -2
- viennaps3d/viennaps3d/gpu.pyi +62 -11
- viennaps3d/viennaps3d.cpython-310-darwin.so +0 -0
- viennaps3d/viennaps3d.cpython-311-darwin.so +0 -0
- viennaps3d/viennaps3d.cpython-312-darwin.so +0 -0
- viennaps3d/viennaps3d.pyi +202 -92
- {viennaps-3.4.0.dist-info → viennaps-3.5.0.dist-info}/WHEEL +0 -0
- {viennaps-3.4.0.dist-info → viennaps-3.5.0.dist-info}/licenses/LICENSE +0 -0
viennaps2d/viennaps2d.pyi
CHANGED
|
@@ -7,7 +7,7 @@ __version__: str
|
|
|
7
7
|
version: str
|
|
8
8
|
|
|
9
9
|
class AdvectionCallback:
|
|
10
|
-
domain:
|
|
10
|
+
domain: Incomplete
|
|
11
11
|
def __init__(self) -> None: ...
|
|
12
12
|
def applyPostAdvect(self, arg0: float) -> bool: ...
|
|
13
13
|
def applyPreAdvect(self, arg0: float) -> bool: ...
|
|
@@ -51,7 +51,7 @@ class AtomicLayerProcess:
|
|
|
51
51
|
def setNumberOfRaysPerPoint(self, arg0: int) -> None: ...
|
|
52
52
|
def setProcessModel(self, arg0: ProcessModel) -> None: ...
|
|
53
53
|
def setPulseTime(self, arg0: float) -> None: ...
|
|
54
|
-
def setSourceDirection(self, arg0
|
|
54
|
+
def setSourceDirection(self, arg0) -> None: ...
|
|
55
55
|
|
|
56
56
|
class BoxDistribution(ProcessModel):
|
|
57
57
|
@overload
|
|
@@ -147,7 +147,73 @@ class CF4O2ParametersSiGe:
|
|
|
147
147
|
def __init__(self) -> None: ...
|
|
148
148
|
def k_sigma_SiGe(self, arg0: float) -> float: ...
|
|
149
149
|
|
|
150
|
-
class
|
|
150
|
+
class CSVFileProcess(ProcessModel):
|
|
151
|
+
def __init__(
|
|
152
|
+
self,
|
|
153
|
+
ratesFile: str,
|
|
154
|
+
direction,
|
|
155
|
+
offset,
|
|
156
|
+
isotropicComponent: float = ...,
|
|
157
|
+
directionalComponent: float = ...,
|
|
158
|
+
maskMaterials: list[Material] = ...,
|
|
159
|
+
calculateVisibility: bool = ...,
|
|
160
|
+
) -> None: ...
|
|
161
|
+
def setCustomInterpolator(self, function: Callable) -> None: ...
|
|
162
|
+
def setIDWNeighbors(self, k: int = ...) -> None: ...
|
|
163
|
+
@overload
|
|
164
|
+
def setInterpolationMode(self, mode: Interpolation) -> None: ...
|
|
165
|
+
@overload
|
|
166
|
+
def setInterpolationMode(self, mode: str) -> None: ...
|
|
167
|
+
def setOffset(self, offset) -> None: ...
|
|
168
|
+
|
|
169
|
+
class DenseCellSet:
|
|
170
|
+
def __init__(self) -> None: ...
|
|
171
|
+
@overload
|
|
172
|
+
def addFillingFraction(self, arg0: int, arg1: float) -> bool: ...
|
|
173
|
+
@overload
|
|
174
|
+
def addFillingFraction(self, arg0, arg1: float) -> bool: ...
|
|
175
|
+
def addFillingFractionInMaterial(self, arg0, arg1: float, arg2: int) -> bool: ...
|
|
176
|
+
def addScalarData(self, arg0: str, arg1: float) -> None: ...
|
|
177
|
+
def buildNeighborhood(self, forceRebuild: bool = ...) -> None: ...
|
|
178
|
+
def clear(self) -> None: ...
|
|
179
|
+
def fromLevelSets(
|
|
180
|
+
self,
|
|
181
|
+
levelSets: list[viennals2d.viennals2d.Domain],
|
|
182
|
+
materialMap: viennals2d.viennals2d.MaterialMap = ...,
|
|
183
|
+
depth: float = ...,
|
|
184
|
+
) -> None: ...
|
|
185
|
+
def getAverageFillingFraction(self, arg0, arg1: float) -> float: ...
|
|
186
|
+
def getBoundingBox(self, *args, **kwargs): ...
|
|
187
|
+
def getCellCenter(self, *args, **kwargs): ...
|
|
188
|
+
def getCellGrid(self) -> viennals2d.viennals2d.Mesh: ...
|
|
189
|
+
def getDepth(self) -> float: ...
|
|
190
|
+
def getElement(self, *args, **kwargs): ...
|
|
191
|
+
def getElements(self, *args, **kwargs): ...
|
|
192
|
+
def getFillingFraction(self, arg0) -> float: ...
|
|
193
|
+
def getFillingFractions(self) -> list[float]: ...
|
|
194
|
+
def getGridDelta(self) -> float: ...
|
|
195
|
+
def getIndex(self, arg0) -> int: ...
|
|
196
|
+
def getNeighbors(self, *args, **kwargs): ...
|
|
197
|
+
def getNode(self, *args, **kwargs): ...
|
|
198
|
+
def getNodes(self, *args, **kwargs): ...
|
|
199
|
+
def getNumberOfCells(self) -> int: ...
|
|
200
|
+
def getScalarData(self, arg0: str) -> list[float]: ...
|
|
201
|
+
def getScalarDataLabels(self) -> list[str]: ...
|
|
202
|
+
def getSurface(self) -> viennals2d.viennals2d.Domain: ...
|
|
203
|
+
def readCellSetData(self, arg0: str) -> None: ...
|
|
204
|
+
def setCellSetPosition(self, arg0: bool) -> None: ...
|
|
205
|
+
def setCoverMaterial(self, arg0: int) -> None: ...
|
|
206
|
+
@overload
|
|
207
|
+
def setFillingFraction(self, arg0: int, arg1: float) -> bool: ...
|
|
208
|
+
@overload
|
|
209
|
+
def setFillingFraction(self, arg0, arg1: float) -> bool: ...
|
|
210
|
+
def setPeriodicBoundary(self, arg0) -> None: ...
|
|
211
|
+
def updateMaterials(self) -> None: ...
|
|
212
|
+
def updateSurface(self) -> None: ...
|
|
213
|
+
def writeCellSetData(self, arg0: str) -> None: ...
|
|
214
|
+
def writeVTU(self, arg0: str) -> None: ...
|
|
215
|
+
|
|
216
|
+
class DirectionalProcess(ProcessModel):
|
|
151
217
|
@overload
|
|
152
218
|
def __init__(
|
|
153
219
|
self,
|
|
@@ -181,12 +247,18 @@ class Domain:
|
|
|
181
247
|
self,
|
|
182
248
|
gridDelta: float,
|
|
183
249
|
xExtent: float,
|
|
250
|
+
yExtent: float,
|
|
184
251
|
boundary: viennals2d.viennals2d.BoundaryConditionEnum = ...,
|
|
185
252
|
) -> None: ...
|
|
186
|
-
|
|
253
|
+
@overload
|
|
254
|
+
def __init__(
|
|
187
255
|
self,
|
|
188
|
-
|
|
189
|
-
|
|
256
|
+
gridDelta: float,
|
|
257
|
+
xExtent: float,
|
|
258
|
+
boundary: viennals2d.viennals2d.BoundaryConditionEnum = ...,
|
|
259
|
+
) -> None: ...
|
|
260
|
+
def applyBooleanOperation(
|
|
261
|
+
self, arg0: viennals2d.viennals2d.Domain, arg1
|
|
190
262
|
) -> None: ...
|
|
191
263
|
def clear(self) -> None: ...
|
|
192
264
|
def deepCopy(self, arg0: Domain) -> None: ...
|
|
@@ -194,8 +266,8 @@ class Domain:
|
|
|
194
266
|
def generateCellSet(self, arg0: float, arg1: Material, arg2: bool) -> None: ...
|
|
195
267
|
def getBoundaryConditions(self, *args, **kwargs): ...
|
|
196
268
|
def getBoundingBox(self, *args, **kwargs): ...
|
|
197
|
-
def getCellSet(self
|
|
198
|
-
def getGrid(self
|
|
269
|
+
def getCellSet(self) -> DenseCellSet: ...
|
|
270
|
+
def getGrid(self) -> viennals2d.viennals2d.hrleGrid: ...
|
|
199
271
|
def getGridDelta(self) -> float: ...
|
|
200
272
|
def getLevelSets(self) -> list[viennals2d.viennals2d.Domain]: ...
|
|
201
273
|
def getMaterialMap(self, *args, **kwargs): ...
|
|
@@ -295,7 +367,7 @@ class DomainSetup:
|
|
|
295
367
|
def boundaryCons(self, *args, **kwargs): ...
|
|
296
368
|
def bounds(self, *args, **kwargs): ...
|
|
297
369
|
def check(self) -> None: ...
|
|
298
|
-
def grid(self
|
|
370
|
+
def grid(self) -> viennals2d.viennals2d.hrleGrid: ...
|
|
299
371
|
def gridDelta(self) -> float: ...
|
|
300
372
|
def halveXAxis(self) -> None: ...
|
|
301
373
|
def halveYAxis(self) -> None: ...
|
|
@@ -432,6 +504,40 @@ class FluorocarbonParametersSiO2:
|
|
|
432
504
|
rho: float
|
|
433
505
|
def __init__(self) -> None: ...
|
|
434
506
|
|
|
507
|
+
class GDSGeometry:
|
|
508
|
+
@overload
|
|
509
|
+
def __init__(self) -> None: ...
|
|
510
|
+
@overload
|
|
511
|
+
def __init__(self, gridDelta: float) -> None: ...
|
|
512
|
+
@overload
|
|
513
|
+
def __init__(self, gridDelta: float, boundaryConditions) -> None: ...
|
|
514
|
+
def addBlur(
|
|
515
|
+
self,
|
|
516
|
+
sigmas: list[float],
|
|
517
|
+
weights: list[float],
|
|
518
|
+
threshold: float = ...,
|
|
519
|
+
delta: float = ...,
|
|
520
|
+
gridRefinement: int = ...,
|
|
521
|
+
) -> None: ...
|
|
522
|
+
def getAllLayers(self) -> set[int]: ...
|
|
523
|
+
def getBounds(self, *args, **kwargs): ...
|
|
524
|
+
def getNumberOfStructures(self) -> int: ...
|
|
525
|
+
def layerToLevelSet(
|
|
526
|
+
self, layer: int, blurLayer: bool = ...
|
|
527
|
+
) -> viennals2d.viennals2d.Domain: ...
|
|
528
|
+
def print(self) -> None: ...
|
|
529
|
+
def setBoundaryConditions(
|
|
530
|
+
self, arg0: list[viennals2d.viennals2d.BoundaryConditionEnum]
|
|
531
|
+
) -> None: ...
|
|
532
|
+
def setBoundaryPadding(self, arg0: float, arg1: float) -> None: ...
|
|
533
|
+
def setGridDelta(self, arg0: float) -> None: ...
|
|
534
|
+
|
|
535
|
+
class GDSReader:
|
|
536
|
+
def __init__(self) -> None: ...
|
|
537
|
+
def apply(self) -> None: ...
|
|
538
|
+
def setFileName(self, arg0: str) -> None: ...
|
|
539
|
+
def setGeometry(self, *args, **kwargs): ...
|
|
540
|
+
|
|
435
541
|
class GeometryFactory:
|
|
436
542
|
def __init__(self, *args, **kwargs) -> None: ...
|
|
437
543
|
def makeBoxStencil(
|
|
@@ -443,6 +549,28 @@ class GeometryFactory:
|
|
|
443
549
|
def makeMask(self, base: float, height: float) -> viennals2d.viennals2d.Domain: ...
|
|
444
550
|
def makeSubstrate(self, base: float) -> viennals2d.viennals2d.Domain: ...
|
|
445
551
|
|
|
552
|
+
class HBrO2Etching(ProcessModel):
|
|
553
|
+
@overload
|
|
554
|
+
def __init__(self) -> None: ...
|
|
555
|
+
@overload
|
|
556
|
+
def __init__(
|
|
557
|
+
self,
|
|
558
|
+
ionFlux: float,
|
|
559
|
+
etchantFlux: float,
|
|
560
|
+
oxygenFlux: float,
|
|
561
|
+
meanIonEnergy: float = ...,
|
|
562
|
+
sigmaIonEnergy: float = ...,
|
|
563
|
+
ionExponent: float = ...,
|
|
564
|
+
oxySputterYield: float = ...,
|
|
565
|
+
etchStopDepth: float = ...,
|
|
566
|
+
) -> None: ...
|
|
567
|
+
@overload
|
|
568
|
+
def __init__(self, parameters: PlasmaEtchingParameters) -> None: ...
|
|
569
|
+
@staticmethod
|
|
570
|
+
def defaultParameters() -> PlasmaEtchingParameters: ...
|
|
571
|
+
def getParameters(self) -> PlasmaEtchingParameters: ...
|
|
572
|
+
def setParameters(self, arg0: PlasmaEtchingParameters) -> None: ...
|
|
573
|
+
|
|
446
574
|
class HoleShape:
|
|
447
575
|
__members__: ClassVar[dict] = ... # read-only
|
|
448
576
|
Full: ClassVar[HoleShape] = ...
|
|
@@ -476,6 +604,23 @@ class IBEParameters:
|
|
|
476
604
|
yieldFunction: Callable[[float], float]
|
|
477
605
|
def __init__(self) -> None: ...
|
|
478
606
|
|
|
607
|
+
class Interpolation:
|
|
608
|
+
__members__: ClassVar[dict] = ... # read-only
|
|
609
|
+
CUSTOM: ClassVar[Interpolation] = ...
|
|
610
|
+
IDW: ClassVar[Interpolation] = ...
|
|
611
|
+
LINEAR: ClassVar[Interpolation] = ...
|
|
612
|
+
__entries: ClassVar[dict] = ...
|
|
613
|
+
def __init__(self, value: int) -> None: ...
|
|
614
|
+
def __eq__(self, other: object) -> bool: ...
|
|
615
|
+
def __hash__(self) -> int: ...
|
|
616
|
+
def __index__(self) -> int: ...
|
|
617
|
+
def __int__(self) -> int: ...
|
|
618
|
+
def __ne__(self, other: object) -> bool: ...
|
|
619
|
+
@property
|
|
620
|
+
def name(self) -> str: ...
|
|
621
|
+
@property
|
|
622
|
+
def value(self) -> int: ...
|
|
623
|
+
|
|
479
624
|
class IonBeamEtching(ProcessModel):
|
|
480
625
|
@overload
|
|
481
626
|
def __init__(self) -> None: ...
|
|
@@ -813,8 +958,10 @@ class Particle:
|
|
|
813
958
|
def __init__(self, *args, **kwargs) -> None: ...
|
|
814
959
|
def getLocalDataLabels(self) -> list[str]: ...
|
|
815
960
|
def getSourceDistributionPower(self) -> float: ...
|
|
816
|
-
def initNew(self,
|
|
817
|
-
def surfaceCollision(
|
|
961
|
+
def initNew(self, arg0) -> None: ...
|
|
962
|
+
def surfaceCollision(
|
|
963
|
+
self, arg0: float, arg1, arg2, arg3: int, arg4: int, arg5, arg6, arg7
|
|
964
|
+
) -> None: ...
|
|
818
965
|
def surfaceReflection(self, *args, **kwargs): ...
|
|
819
966
|
|
|
820
967
|
class Planarize:
|
|
@@ -826,6 +973,54 @@ class Planarize:
|
|
|
826
973
|
def setCutoffPosition(self, arg0: float) -> None: ...
|
|
827
974
|
def setDomain(self, arg0: Domain) -> None: ...
|
|
828
975
|
|
|
976
|
+
class PlasmaEtchingParameters:
|
|
977
|
+
Ions: PlasmaEtchingParametersIons
|
|
978
|
+
Mask: PlasmaEtchingParametersMask
|
|
979
|
+
Passivation: PlasmaEtchingParametersPassivation
|
|
980
|
+
Substrate: PlasmaEtchingParametersSubstrate
|
|
981
|
+
beta_E: dict[int, float]
|
|
982
|
+
beta_P: dict[int, float]
|
|
983
|
+
etchStopDepth: float
|
|
984
|
+
etchantFlux: float
|
|
985
|
+
ionFlux: float
|
|
986
|
+
passivationFlux: float
|
|
987
|
+
def __init__(self) -> None: ...
|
|
988
|
+
|
|
989
|
+
class PlasmaEtchingParametersIons:
|
|
990
|
+
exponent: float
|
|
991
|
+
inflectAngle: float
|
|
992
|
+
meanEnergy: float
|
|
993
|
+
minAngle: float
|
|
994
|
+
n_l: float
|
|
995
|
+
sigmaEnergy: float
|
|
996
|
+
thetaRMax: float
|
|
997
|
+
thetaRMin: float
|
|
998
|
+
def __init__(self) -> None: ...
|
|
999
|
+
|
|
1000
|
+
class PlasmaEtchingParametersMask:
|
|
1001
|
+
A_sp: float
|
|
1002
|
+
B_sp: float
|
|
1003
|
+
Eth_sp: float
|
|
1004
|
+
rho: float
|
|
1005
|
+
def __init__(self) -> None: ...
|
|
1006
|
+
|
|
1007
|
+
class PlasmaEtchingParametersPassivation:
|
|
1008
|
+
A_ie: float
|
|
1009
|
+
Eth_ie: float
|
|
1010
|
+
def __init__(self) -> None: ...
|
|
1011
|
+
|
|
1012
|
+
class PlasmaEtchingParametersSubstrate:
|
|
1013
|
+
A_ie: float
|
|
1014
|
+
A_sp: float
|
|
1015
|
+
B_ie: float
|
|
1016
|
+
B_sp: float
|
|
1017
|
+
Eth_ie: float
|
|
1018
|
+
Eth_sp: float
|
|
1019
|
+
beta_sigma: float
|
|
1020
|
+
k_sigma: float
|
|
1021
|
+
rho: float
|
|
1022
|
+
def __init__(self) -> None: ...
|
|
1023
|
+
|
|
829
1024
|
class Process:
|
|
830
1025
|
def __init__(self) -> None: ...
|
|
831
1026
|
def apply(self) -> None: ...
|
|
@@ -851,7 +1046,7 @@ class Process:
|
|
|
851
1046
|
def setProcessModel(self, arg0: ProcessModel) -> None: ...
|
|
852
1047
|
def setRayTracingDiskRadius(self, arg0: float) -> None: ...
|
|
853
1048
|
def setRayTracingParameters(self, arg0: RayTracingParameters) -> None: ...
|
|
854
|
-
def setSourceDirection(self, arg0
|
|
1049
|
+
def setSourceDirection(self, arg0) -> None: ...
|
|
855
1050
|
def setTimeStepRatio(self, arg0: float) -> None: ...
|
|
856
1051
|
|
|
857
1052
|
class ProcessModel:
|
|
@@ -888,6 +1083,18 @@ class ProcessParams:
|
|
|
888
1083
|
def getScalarDataLabel(self, arg0: int) -> str: ...
|
|
889
1084
|
def insertNextScalar(self, arg0: float, arg1: str) -> None: ...
|
|
890
1085
|
|
|
1086
|
+
class RateGrid:
|
|
1087
|
+
def __init__(self) -> None: ...
|
|
1088
|
+
def interpolate(self, coord) -> float: ...
|
|
1089
|
+
def loadFromCSV(self, filename: str) -> bool: ...
|
|
1090
|
+
def setCustomInterpolator(self, function: Callable) -> None: ...
|
|
1091
|
+
def setIDWNeighbors(self, k: int) -> None: ...
|
|
1092
|
+
@overload
|
|
1093
|
+
def setInterpolationMode(self, mode: Interpolation) -> None: ...
|
|
1094
|
+
@overload
|
|
1095
|
+
def setInterpolationMode(self, mode: str) -> None: ...
|
|
1096
|
+
def setOffset(self, offset) -> None: ...
|
|
1097
|
+
|
|
891
1098
|
class RateSet:
|
|
892
1099
|
calculateVisibility: bool
|
|
893
1100
|
direction: Incomplete
|
|
@@ -910,7 +1117,7 @@ class RayTracingParameters:
|
|
|
910
1117
|
normalizationType: NormalizationType
|
|
911
1118
|
raysPerPoint: int
|
|
912
1119
|
smoothingNeighbors: int
|
|
913
|
-
sourceDirection:
|
|
1120
|
+
sourceDirection: Incomplete
|
|
914
1121
|
useRandomSeeds: bool
|
|
915
1122
|
def __init__(self) -> None: ...
|
|
916
1123
|
|
|
@@ -930,60 +1137,11 @@ class SF6O2Etching(ProcessModel):
|
|
|
930
1137
|
etchStopDepth: float = ...,
|
|
931
1138
|
) -> None: ...
|
|
932
1139
|
@overload
|
|
933
|
-
def __init__(self, parameters:
|
|
934
|
-
|
|
935
|
-
def
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
Ions: SF6O2ParametersIons
|
|
939
|
-
Mask: SF6O2ParametersMask
|
|
940
|
-
Passivation: SF6O2ParametersPassivation
|
|
941
|
-
Si: SF6O2ParametersSi
|
|
942
|
-
beta_F: dict[int, float]
|
|
943
|
-
beta_O: dict[int, float]
|
|
944
|
-
etchStopDepth: float
|
|
945
|
-
etchantFlux: float
|
|
946
|
-
fluxIncludeSticking: bool
|
|
947
|
-
ionFlux: float
|
|
948
|
-
oxygenFlux: float
|
|
949
|
-
def __init__(self) -> None: ...
|
|
950
|
-
|
|
951
|
-
class SF6O2ParametersIons:
|
|
952
|
-
exponent: float
|
|
953
|
-
inflectAngle: float
|
|
954
|
-
meanEnergy: float
|
|
955
|
-
minAngle: float
|
|
956
|
-
n_l: float
|
|
957
|
-
sigmaEnergy: float
|
|
958
|
-
thetaRMin: float
|
|
959
|
-
thetaRMax: float
|
|
960
|
-
def __init__(self) -> None: ...
|
|
961
|
-
|
|
962
|
-
class SF6O2ParametersMask:
|
|
963
|
-
A_sp: float
|
|
964
|
-
B_sp: float
|
|
965
|
-
Eth_sp: float
|
|
966
|
-
rho: float
|
|
967
|
-
def __init__(self) -> None: ...
|
|
968
|
-
|
|
969
|
-
class SF6O2ParametersPassivation:
|
|
970
|
-
A_ie: float
|
|
971
|
-
Eth_ie: float
|
|
972
|
-
def __init__(self) -> None: ...
|
|
973
|
-
|
|
974
|
-
class SF6O2ParametersSi:
|
|
975
|
-
A_ie: float
|
|
976
|
-
A_sp: float
|
|
977
|
-
B_ie: float
|
|
978
|
-
B_sp: float
|
|
979
|
-
Eth_ie: float
|
|
980
|
-
Eth_sp: float
|
|
981
|
-
beta_sigma: float
|
|
982
|
-
k_sigma: float
|
|
983
|
-
rho: float
|
|
984
|
-
theta_g_ie: float
|
|
985
|
-
theta_g_sp: float
|
|
986
|
-
def __init__(self) -> None: ...
|
|
1140
|
+
def __init__(self, parameters: PlasmaEtchingParameters) -> None: ...
|
|
1141
|
+
@staticmethod
|
|
1142
|
+
def defaultParameters() -> PlasmaEtchingParameters: ...
|
|
1143
|
+
def getParameters(self) -> PlasmaEtchingParameters: ...
|
|
1144
|
+
def setParameters(self, arg0: PlasmaEtchingParameters) -> None: ...
|
|
987
1145
|
|
|
988
1146
|
class SingleParticleALD(ProcessModel):
|
|
989
1147
|
def __init__(
|
|
@@ -1076,24 +1234,4 @@ class ToDiskMesh:
|
|
|
1076
1234
|
def setDomain(self, arg0: Domain) -> None: ...
|
|
1077
1235
|
def setMesh(self, arg0: viennals2d.viennals2d.Mesh) -> None: ...
|
|
1078
1236
|
|
|
1079
|
-
class rayTraceDirection:
|
|
1080
|
-
__members__: ClassVar[dict] = ... # read-only
|
|
1081
|
-
NEG_X: ClassVar[rayTraceDirection] = ...
|
|
1082
|
-
NEG_Y: ClassVar[rayTraceDirection] = ...
|
|
1083
|
-
NEG_Z: ClassVar[rayTraceDirection] = ...
|
|
1084
|
-
POS_X: ClassVar[rayTraceDirection] = ...
|
|
1085
|
-
POS_Y: ClassVar[rayTraceDirection] = ...
|
|
1086
|
-
POS_Z: ClassVar[rayTraceDirection] = ...
|
|
1087
|
-
__entries: ClassVar[dict] = ...
|
|
1088
|
-
def __init__(self, value: int) -> None: ...
|
|
1089
|
-
def __eq__(self, other: object) -> bool: ...
|
|
1090
|
-
def __hash__(self) -> int: ...
|
|
1091
|
-
def __index__(self) -> int: ...
|
|
1092
|
-
def __int__(self) -> int: ...
|
|
1093
|
-
def __ne__(self, other: object) -> bool: ...
|
|
1094
|
-
@property
|
|
1095
|
-
def name(self) -> str: ...
|
|
1096
|
-
@property
|
|
1097
|
-
def value(self) -> int: ...
|
|
1098
|
-
|
|
1099
1237
|
def setNumThreads(arg0: int) -> None: ...
|
viennaps3d/__init__.py
CHANGED
|
@@ -24,6 +24,15 @@ def _windows_dll_path():
|
|
|
24
24
|
os.add_dll_directory(path)
|
|
25
25
|
os.environ["PATH"] = path + os.pathsep + os.environ["PATH"]
|
|
26
26
|
|
|
27
|
+
def _module_ptx_path():
|
|
28
|
+
from importlib.util import find_spec
|
|
29
|
+
import os
|
|
30
|
+
|
|
31
|
+
spec = find_spec("viennaps3d")
|
|
32
|
+
install_path = os.path.dirname(os.path.abspath(spec.origin))
|
|
33
|
+
return os.path.join(install_path, "ptx")
|
|
34
|
+
|
|
35
|
+
|
|
27
36
|
if sys.platform == "win32":
|
|
28
37
|
_windows_dll_path()
|
|
29
38
|
|
|
@@ -32,6 +41,9 @@ from viennals3d import IntegrationSchemeEnum as IntegrationScheme
|
|
|
32
41
|
from viennals3d import BoundaryConditionEnum as BoundaryType
|
|
33
42
|
from .viennaps3d import *
|
|
34
43
|
|
|
44
|
+
if D == 3:
|
|
45
|
+
ptxPath = _module_ptx_path()
|
|
46
|
+
|
|
35
47
|
# Config file reader helper function
|
|
36
48
|
def ReadConfigFile(fileName: str):
|
|
37
49
|
"""Read a config file in the ViennaPS standard config file format.
|
|
@@ -39,7 +51,7 @@ def ReadConfigFile(fileName: str):
|
|
|
39
51
|
Parameters
|
|
40
52
|
----------
|
|
41
53
|
fileName: str
|
|
42
|
-
|
|
54
|
+
Name of the config file.
|
|
43
55
|
|
|
44
56
|
Returns
|
|
45
57
|
-------
|
|
@@ -60,7 +72,8 @@ def ReadConfigFile(fileName: str):
|
|
|
60
72
|
|
|
61
73
|
try:
|
|
62
74
|
val = float(par_value)
|
|
63
|
-
except:
|
|
75
|
+
except:
|
|
76
|
+
val = par_value
|
|
64
77
|
|
|
65
78
|
par_dict[par_name] = val
|
|
66
79
|
|
viennaps3d/viennaps3d/gpu.pyi
CHANGED
|
@@ -11,12 +11,34 @@ class Context:
|
|
|
11
11
|
|
|
12
12
|
class MultiParticleProcess(ProcessModel):
|
|
13
13
|
def __init__(self) -> None: ...
|
|
14
|
-
def addIonParticle(
|
|
14
|
+
def addIonParticle(
|
|
15
|
+
self,
|
|
16
|
+
sourcePower: float,
|
|
17
|
+
thetaRMin: float = ...,
|
|
18
|
+
thetaRMax: float = ...,
|
|
19
|
+
minAngle: float = ...,
|
|
20
|
+
B_sp: float = ...,
|
|
21
|
+
meanEnergy: float = ...,
|
|
22
|
+
sigmaEnergy: float = ...,
|
|
23
|
+
thresholdEnergy: float = ...,
|
|
24
|
+
inflectAngle: float = ...,
|
|
25
|
+
n: float = ...,
|
|
26
|
+
label: str = ...,
|
|
27
|
+
) -> None: ...
|
|
15
28
|
@overload
|
|
16
|
-
def addNeutralParticle(
|
|
29
|
+
def addNeutralParticle(
|
|
30
|
+
self, stickingProbability: float, label: str = ...
|
|
31
|
+
) -> None: ...
|
|
17
32
|
@overload
|
|
18
|
-
def addNeutralParticle(
|
|
19
|
-
|
|
33
|
+
def addNeutralParticle(
|
|
34
|
+
self,
|
|
35
|
+
materialSticking: dict[viennaps3d.viennaps3d.Material, float],
|
|
36
|
+
defaultStickingProbability: float = ...,
|
|
37
|
+
label: str = ...,
|
|
38
|
+
) -> None: ...
|
|
39
|
+
def setRateFunction(
|
|
40
|
+
self, arg0: Callable[[list[float], viennaps3d.viennaps3d.Material], float]
|
|
41
|
+
) -> None: ...
|
|
20
42
|
|
|
21
43
|
class Path:
|
|
22
44
|
def __init__(self, arg0: str) -> None: ...
|
|
@@ -25,7 +47,13 @@ class Process:
|
|
|
25
47
|
@overload
|
|
26
48
|
def __init__(self, context: Context) -> None: ...
|
|
27
49
|
@overload
|
|
28
|
-
def __init__(
|
|
50
|
+
def __init__(
|
|
51
|
+
self,
|
|
52
|
+
context: Context,
|
|
53
|
+
domain: viennaps3d.viennaps3d.Domain,
|
|
54
|
+
model: ProcessModel,
|
|
55
|
+
duration: float,
|
|
56
|
+
) -> None: ...
|
|
29
57
|
def apply(self) -> None: ...
|
|
30
58
|
def calculateFlux(self) -> viennals3d.viennals3d.Mesh: ...
|
|
31
59
|
def disableAdvectionVelocityOutput(self) -> None: ...
|
|
@@ -35,26 +63,49 @@ class Process:
|
|
|
35
63
|
def getAdvectionParameters(self) -> viennaps3d.viennaps3d.AdvectionParameters: ...
|
|
36
64
|
def getProcessDuration(self) -> float: ...
|
|
37
65
|
def getRayTracingParameters(self) -> viennaps3d.viennaps3d.RayTracingParameters: ...
|
|
38
|
-
def setAdvectionParameters(
|
|
66
|
+
def setAdvectionParameters(
|
|
67
|
+
self, arg0: viennaps3d.viennaps3d.AdvectionParameters
|
|
68
|
+
) -> None: ...
|
|
39
69
|
def setDomain(self, arg0: viennaps3d.viennaps3d.Domain) -> None: ...
|
|
40
70
|
def setIntegrationScheme(self, arg0) -> None: ...
|
|
41
71
|
def setMaxCoverageInitIterations(self, arg0: int) -> None: ...
|
|
42
72
|
def setNumberOfRaysPerPoint(self, arg0: int) -> None: ...
|
|
43
73
|
def setProcessDuration(self, arg0: float) -> None: ...
|
|
44
74
|
def setProcessModel(self, arg0: ProcessModel) -> None: ...
|
|
45
|
-
def setRayTracingParameters(
|
|
75
|
+
def setRayTracingParameters(
|
|
76
|
+
self, arg0: viennaps3d.viennaps3d.RayTracingParameters
|
|
77
|
+
) -> None: ...
|
|
46
78
|
def setTimeStepRatio(self, arg0: float) -> None: ...
|
|
47
79
|
|
|
48
80
|
class ProcessModel:
|
|
49
81
|
def __init__(self, *args, **kwargs) -> None: ...
|
|
50
82
|
|
|
51
83
|
class SF6O2Etching(viennaps3d.viennaps3d.ProcessModel):
|
|
52
|
-
def __init__(
|
|
84
|
+
def __init__(
|
|
85
|
+
self, parameters: viennaps3d.viennaps3d.PlasmaEtchingParameters
|
|
86
|
+
) -> None: ...
|
|
53
87
|
|
|
54
88
|
class SingleParticleProcess(ProcessModel):
|
|
55
89
|
@overload
|
|
56
|
-
def __init__(
|
|
90
|
+
def __init__(
|
|
91
|
+
self,
|
|
92
|
+
rate: float = ...,
|
|
93
|
+
stickingProbability: float = ...,
|
|
94
|
+
sourceExponent: float = ...,
|
|
95
|
+
maskMaterial: viennaps3d.viennaps3d.Material = ...,
|
|
96
|
+
) -> None: ...
|
|
57
97
|
@overload
|
|
58
|
-
def __init__(
|
|
98
|
+
def __init__(
|
|
99
|
+
self,
|
|
100
|
+
rate: float,
|
|
101
|
+
stickingProbability: float,
|
|
102
|
+
sourceExponent: float,
|
|
103
|
+
maskMaterials: list[viennaps3d.viennaps3d.Material],
|
|
104
|
+
) -> None: ...
|
|
59
105
|
@overload
|
|
60
|
-
def __init__(
|
|
106
|
+
def __init__(
|
|
107
|
+
self,
|
|
108
|
+
materialRates: dict[viennaps3d.viennaps3d.Material, float],
|
|
109
|
+
stickingProbability: float,
|
|
110
|
+
sourceExponent: float,
|
|
111
|
+
) -> None: ...
|
|
Binary file
|
|
Binary file
|
|
Binary file
|