-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathverify_installation.py
More file actions
37 lines (28 loc) · 1.28 KB
/
verify_installation.py
File metadata and controls
37 lines (28 loc) · 1.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#!/usr/bin/env python
"""Quick verification that all modules can be imported and basic functionality works."""
import sys
try:
# Import all main classes
from comp_litho import HopkinsModel, RuleBasedOPC, ModelBasedOPC, GradientILT, ProcessWindow
print("✓ All imports successful")
# Create a Hopkins model
model = HopkinsModel(wavelength=193.0, NA=1.35, sigma=0.8)
print(f"✓ HopkinsModel created: {model.wavelength}nm, NA={model.NA}, sigma={model.sigma}")
# Create OPC engine
opc = RuleBasedOPC(bias=5.0)
print(f"✓ RuleBasedOPC created: bias={opc.bias}nm")
# Create model-based OPC
mbopc = ModelBasedOPC(imaging_model=model, target_cd=100.0)
print(f"✓ ModelBasedOPC created: target_cd={mbopc.target_cd}nm")
# Create ILT engine
ilt = GradientILT(imaging_model=model, learning_rate=0.05)
print(f"✓ GradientILT created: learning_rate={ilt.learning_rate}")
# Create process window analyzer
pw = ProcessWindow(imaging_model=model, cd_tolerance=5.0)
print(f"✓ ProcessWindow created: cd_tolerance={pw.cd_tolerance}nm")
print("\n" + "="*60)
print("SUCCESS: Package is fully functional!")
print("="*60)
except Exception as e:
print(f"ERROR: {e}", file=sys.stderr)
sys.exit(1)