Skip to main content

techwiz-skill

Build, modify, troubleshoot, and post-process TechWiz LCD 3D v15 liquid-crystal cylindrical-lens projects, including GRIN/TN/segmented-electrode designs, voltage sweeps, OPD/focal-length/parabolic-error analysis, and step-response analysis. Use for TechWiz .prj/.str/.elt/.stk/.sdb projects and binary LC result files; do not use for unrelated optical solvers or generic LC theory alone.

Quellinformationen

Repository
lq1229477734-sys/optical-design-skill
Letzte Quellaktivität
23. September 2026 um 14:54
Erkannte Sprache von SKILL.md
Englisch
Sterne
10
Forks
1

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

Datei-Explorer
8 Dateien

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
techwiz-skill
description
Build, modify, troubleshoot, and post-process TechWiz LCD 3D v15 liquid-crystal cylindrical-lens projects, including GRIN/TN/segmented-electrode designs, voltage sweeps, OPD/focal-length/parabolic-error analysis, and step-response analysis. Use for TechWiz .prj/.str/.elt/.stk/.sdb projects and binary LC result files; do not use for unrelated optical solvers or generic LC theory alone.
# TechWiz Skill Produce a traceable TechWiz project, preserve the validated file-format conventions, and separate generated inputs from solver-produced evidence. Communicate in the user's language and always report physical quantities with units. ## Choose the operating mode - For a new or parameterized planar LC cylindrical lens, read [references/configuration.md](references/configuration.md), then use `scripts/new_lc_lens_project.py` with a TechWiz-validated template. - For file-format edits, materials, or GUI mismatch errors, read [references/file_formats.md](references/file_formats.md). - For electrode design choices or comparison with the supplied benchmark cases, read [references/designs_and_results.md](references/designs_and_results.md). Treat those results as case-specific evidence, not universal performance. - For completed LC director results, run `scripts/analyze_lens.py --help` or `scripts/analyze_response.py --help` and inspect their CSV/text outputs. ## Non-negotiable invariants - TechWiz LCD 3D v15 has no verified command-line solver in this workflow. Generate and inspect project files programmatically, but have the user run Mesh Generation and LC/Optical Analysis in TechWiz unless a separately verified automation path is available. - Do not synthesize a `.str` from an undocumented format. Start from a Layout-generated or previously solved template; the included generator changes only the proven planar-lens structure. - Keep units explicit: `.str` coordinates/thicknesses are metres; JSON geometry is µm; `.elt` uses V; `.sdb` uses s/V; `.stk` uses µm/deg; result time tags are ms. - Preserve CRLF for TechWiz text files. Ensure `.prj` rubbing-zone names exactly match `.str` `ZONE NAME` values. - Keep `BOT_COM = DC 0`, exactly one non-DC `Main` electrode, and all polygons belonging to one electrical node inside the same `ELECTRODE` block. - Refuse to overwrite generated project inputs unless the target has been reviewed and the caller explicitly passes `--force`. Never delete solver results as part of generation. - A generated project is not a validated simulation. Record the template, configuration, TechWiz log status, convergence, selected time step, and result files used for every reported result. ## Project workflow 1. Establish requirements: pitch/aperture, LC gap and material tensor, alignment, electrode grouping, wavelength/polarization, drive waveform, mesh, steady-state duration, and metrics. 2. Reuse a TechWiz-opened template compatible with the intended cell. Use the generator only for the supported planar uniform-alignment layout; use Layout's native GDS/TDB → electrode properties → SIM → 3D Structure Generation path for TN or materially different geometry. 3. Generate into a new directory. Diff `.str`, `.elt`, `.prj`, `.stk`, and `.sdb` against the template before opening TechWiz. 4. Ask the user to open the generated `.prj`; run Mesh Generation; verify X/Y periodic boundaries, layer count, material assignment, zone names, and nonzero electrode count. 5. In LC Analysis, verify `BOT_COM`, one `Main` sweep/signal electrode, DC sub-electrodes, time settings, and signal selection. If TechWiz 15 ignores a prewritten `.elt`, re-enter the table and use **Save as… Electrode Information File** to overwrite the intended INPUT file. 6. Inspect the `.log` for mismatch or convergence errors. Do not report low-voltage or unfinished points as valid simply because files exist. 7. Run the postprocessor and report both optical performance and evidence quality. Keep raw results outside the skill repository. ## Verified GUI conventions - Baseline planar-lens mesh: X/Y periodic, `Mesh_Length = 1.5 µm`, `Mesh_Length_Max = 3 µm`, LC 16 layers. These are starting values, not convergence proof; tighten them and compare metrics for new geometries. - A 25 µm cell can require 0.5–1 s to relax. The validated baseline uses `TimeFinal = 1 s`, `TimeStep = 1 ms`; a 30 ms run is generally not steady state. `SWEEP(SATURATION)` may stop early when its criterion is satisfied. - For the uniform planar lens, top and bottom alignment `2°/90°` gives a Y-directed state. For the validated material's input polarizer, `Phi` is the absorption axis: `Phi = 0°` passes Y polarization. Stack order is top-to-bottom, so the input polarizer appears below `LC_Cell` in the file. - For a 90° TN cell, use the verified native-layout workflow and the intended crossed-polarizer stack; do not reuse the uniform-alignment generator without re-deriving alignment and polarization. - Threshold-adjacent points may fail to converge. Treat the threshold as material/geometry dependent; the approximately 1.5 V observation applies only to the supplied benchmark material. ## Post-processing contract `analyze_lens.py` reads `<project>_MESH.dat` and voltage-tagged director files. For Y-polarized normal incidence it uses `1 / n_eff² = n_z² / n_o² + (1 - n_z²) / n_e²` then integrates `OPD(x) = ∫(n_eff - n_o) dz` and fits `OPD = c0 + c2 x²` inside the configured aperture. It reports OPD depth, phase in waves, `f = -1/(2c2)`, normalized parabolic RMSE, OPD RMSE, and centre/edge indices. Confirm this polarization/index model before applying the script to TN, biaxial, oblique-incidence, or polarization-converting cases. `analyze_response.py` uses OPD depth and linear interpolation for 10–90% rise and 90–10% decay. It reads switch times from generated signal metadata or explicit CLI options. Extend the simulated time if the response never reaches the thresholds; do not substitute the final sample for a missing crossing. ## Reporting Include: - project/config/template identity and TechWiz version; - geometry, LC material, alignment, electrode voltages, wavelength/polarization, mesh, and simulated duration; - a table of voltage, final time, OPD depth, phase waves, focal length, and normalized RMSE; - response crossings and averaging windows when applicable; - convergence failures, stale/missing outputs, assumptions, and whether mesh/time convergence was actually tested; - a comparison baseline only when geometry, material, wavelength, aperture, and metric definition are comparable.
Auf GitHub ansehen