# Create parameterised IXI geometry without a GDS file

Build a complete three-file MQS strip using explicit IXI variables, a teaching process and matched circuit ports, then check the current extraction.

## Compatibility

8 beta/preview

Published guidance with release-applicability limits. Confirm package applicability before following this guide.

**KB-GUI-004 · hold**: The inconsistent inline-layout readiness display is not accepted as a clean setup or successful calculation. The misleading illustration remains withheld.

**KB-GUI-005 · supported path**: Retain the specific annotation-alias warnings and check the process and terminal declarations. Do not change physical inputs merely to clear a warning; this mismatch does not invalidate every extraction.

**KB-GUI-006 · verified workaround**: Save work and close other saved tabs before exit when the intended Studio project must return as active. The checked single-tab restart does not repair multi-tab selection.

**KB-GUI-008 · verified workaround**: After a source edit, save the intended inputs, choose Run again and verify the new result. An earlier Completed label may still refer to the previous generation.

[Download Complete inline MQS microstrip inputs (ZIP)](/_functions/kbExample?name=inductex-inline-microstrip.zip)

Includes: strip.ixi, process.ldf, strip.cir, README.txt.

## Before starting

Download the complete example ZIP or save the three complete code blocks below under their exact filenames in the same writable folder. No GDS file is required. This public teaching stack is not a fabrication process or calibration for your device.

## Steps

1. Open strip.ixi in Studio and choose Raw IXI. Check Mode MQS, MeshType CUBE and the relative process/netlist filenames.
2. Declare strip_length and strip_width before the STRUCT record. The supplied values are 100 and 10; explicit %variable references drive every affected polygon, terminal and label coordinate.
3. Keep each XY pair on its own line and close every record with $END. Save the IXI and both companion files. Coordinates inside STRUCT use the process Units; dimensions outside STRUCT use metres.
4. Use Basic > Input files to inspect the actual process and circuit references. Inspect the geometry and port labels before choosing Check and run / Run full extraction.
5. Read the current Results/Raw output and actual artifacts. For the optional CLI route, run the command below from the folder containing all three files. Check exit status and errors before reading L1.

![Raw IXI shows the MQS project references, explicit strip_length and strip_width variables and the parameterised M1 polygon.](https://static.wixstatic.com/media/31de30_98964fb6066c4a839b2e4373118190fa~mv2.png)

Raw IXI exposes the command references, explicit variables and M1 polygon. The visible TERM alias warning is explained under recovery. This image does not show a GUI extraction.

## Complete strip.ixi

```text
* Parameterised inline equivalent of the maintained microstrip geometry
$COMMAND
  MeshFile "strip.msh"
  MeshType CUBE
  Mode MQS
  Netlist "strip.cir"
  Process "process.ldf"
$END
$VARIABLE
  Name strip_length
  Value 100
$END
$VARIABLE
  Name strip_width
  Value 10
$END
$STRUCT
  Name inline_strip
  $POLY
    Layer M1
    XY
    (0,0)
    (0,%strip_width)
    (%strip_length,%strip_width)
    (%strip_length,0)
    (0,0)
  $END
  $PATH
    Layer TERM
    Width 1
    XY
    (0,%strip_width)
    (0,0)
  $END
  $PATH
    Layer TERM
    Width 1
    XY
    (%strip_length,%strip_width)
    (%strip_length,0)
  $END
  $TEXT
    Text "P1 M1 M0"
    Layer TEXT
    XY
    (0,%strip_width/2)
  $END
  $TEXT
    Text "P2 M1 M0"
    Layer TEXT
    XY
    (%strip_length,%strip_width/2)
  $END
$END
```

## Complete process.ldf

```text
* Public microstrip teaching stack; dimensions use Units below
$Parameters
  Units = 1e-6
  SegmentSize = 2.0
  AbsMin = 0.025
  GPOverhang = 5.0
  ProcessHasGroundPlane = TRUE
  GPLayer = 17
  TermLayer = 19
  TextLayer = 18
  HFilaments = 1
  TerminalInRange = 1.0
  UnitL = 1
$End
$Layer
  Number = 17
  Name = M0
  Thickness = 0.2
  Lambda = 0.09
  Order = 0
  Mask = -1
  Filmtype = S
  HFilaments = 2
$End
$Layer
  Number = 2
  Name = I0
  Thickness = 0.15
  Order = 1
  Mask = -1
  Filmtype = I
$End
$Layer
  Number = 5
  Name = M1
  Thickness = 0.25
  Lambda = 0.09
  Order = 2
  Mask = 1
  Filmtype = S
  HFilaments = 3
$End
```

## Complete strip.cir

```text
* Extraction topology, design inductance in henries because UnitL=1
L1 1 2 3.9e-12
P1 1 0
P2 2 0
.end
```

## Optional CLI command

```text
inductex strip.ixi
```

## Check the result

The checked 100 × 10 µm example gives L1 = 3.896479063e-12 H (3.896479063 pH), approximately 0.09028% below its 3.9 pH design value. Its mesh bytes and extracted value match the maintained GDS microstrip. This comparison is specific to these exact inputs and runtime.

Changing strip_length to 120 moves the far edge, its terminal and label together; the checked result increases to 4.679059834 pH. Reconsider the design target after geometry changes rather than expecting the old 3.9 pH target to remain correct.

With the original geometry, changing SegmentSize from 2 to 1 µm gave 3.872526244 pH, a change of about 0.61473%. This is one refinement observation. Choose and justify convergence criteria for the actual problem; low fit or solver residuals and design agreement answer different questions.

The detailed current CLI output/elements.txt contains the value quoted above in the configured UnitL units. The human-readable summary rounds this example to 3.89648 pH. Match units and printed precision before treating different displays as a numerical change.

## If the problem remains

A missing process reference, undefined material-layer name or unmatched P2 label was rejected in the checked CLI cases. Correct the specific reference, save and rerun; each corrected case recovered the baseline result.

Bare variable references can produce compatibility warning IXI009; the supplied files use explicit % references. An unfinished block can be implicitly closed at EOF with IXI002 rather than a hard editor error. Close it explicitly before running.

The current candidate can flag TERM/TEXT with IXI_CROSS_UNKNOWN_LAYER even though these annotation aliases are accepted by the checked Core run and resolved to TermLayer/TextLayer. This focused mismatch is tracked as KB-GUI-005. Check the actual alias and declared layer numbers; do not rename conductor layers or ignore unrelated warnings.

A sol.txt file can contain an error and Job finished can follow a failed attempt. Use current status, diagnostics and an actual extracted L1 row to establish success. Studio may keep its numerical summary in memory rather than writing a CLI sol.txt.

## Actual Studio edit and rerun checks

In the recorded native scenario, changing 100 to 120 through Raw IXI, using Undo and Redo, then saving changed the intended source. Basic changed the action label from Run extraction to Run again. That action produced 4.67906e-12 H; restoring the original inputs recovered 3.89648e-12 H.

Before Run again the previous Results frame still said Completed. Treat that as retained earlier output, not proof that the edited input has been calculated. Save, run again and inspect the new verdict and quantities. See the dedicated after-edit guide for this candidate’s provenance limitation.

![Current native raw output gives the 100 micrometre strip L1 as 3.89648e-12 H against the 3.9e-12 H design value.](https://static.wixstatic.com/media/31de30_fd644d62c24744dda9ce716d07b93b42~mv2.png)

The unchanged inline strip’s actual current GUI raw result, in henries. Complete L1 table and units are visible.

![After saving length 120 and using Run again, current native raw output gives L1 as 4.67906e-12 H. The unchanged design target is still 3.9e-12 H.](https://static.wixstatic.com/media/31de30_5ee3a15457e2482c899332ac87b58918~mv2.png)

Run again after saving length 120 gives a new L1. The old 3.9 pH design value is unchanged, so its displayed design deviation is not a solver-accuracy measure.

## Sources and verification details

Recorded inputs/builds only. Complete walkthrough and final-package acceptance remain separate.

- VAL-020: Windows catalog InductEx 8.0.1 (2 November 2026) and its bundled TTH 1.1.50; not final-package acceptance. Complete inline MQS strip, byte-identical mesh and identical inductance versus the maintained GDS example, length/display-unit changes, one mesh refinement and missing-process/port/layer rejection and recovery Sixteen bounded CLI checks. One refinement observation is not a convergence threshold. Design agreement is not physical calibration or solver/fit residual acceptance. Native GUI authoring, cancellation/retry, restart and final distributed-package checks remain pending.
- VAL-021: Frozen current Windows Studio editor/nominal-process analysis source, 3 November 2026. Seventeen production-parser/analysis checks: exact input syntax, three-layer nominal stack/units, malformed input and restoration, plus focused reproduction of TERM/TEXT annotation alias warnings This route is editor analysis only. It does not construct the Core model, run an extraction, verify physical calibration or complete a native GUI walkthrough. The accepted .end directive still receives an editor warning (KB-EDITOR-001); annotation alias warnings remain KB-GUI-005.
- VAL-023: Frozen Windows Studio source candidate with normal Core 8.0.1 dispatch, 3 November 2026; not a final distributed package. Normal production source edits/Undo/Redo/Save, licensed baseline/length/unit runs, port failure and correction, Stop/retry and a separate-process single-tab restart/rerun. File/directory selection used predetermined paths at the production dialog boundary Eighteen independent checks cover these stated routes. The prior Completed label after a saved source edit remains KB-GUI-008; stale-state acceptance is not passed. A Cancelled receipt retained an L1 row and is not accepted as a completed solve. Physical pickers, complete GUI article, final distributed package, other platforms, physical accuracy and mesh convergence remain pending. KB-GUI-006 single-tab restart workaround remains separate.

- studio-inline-parameters: Current Windows Studio source, native authoring illustration, 3 November 2026. Authoring illustration only; no GUI extraction or complete walkthrough is shown. CLI/editor results are recorded separately. Annotation alias and .end warnings remain under review.
- studio-inline-current-inductance: Frozen Windows Studio source candidate, actual native workflow, 3 November 2026. This image shows the stated recorded control/result only. The retained Completed-after-edit observation remains open; a Cancelled receipt is not accepted numerical success. Complete GUI article and final-package checks remain pending.
- studio-inline-longer-inductance: Frozen Windows Studio source candidate, actual native workflow, 3 November 2026. This image shows the stated recorded control/result only. The retained Completed-after-edit observation remains open; a Cancelled receipt is not accepted numerical success. Complete GUI article and final-package checks remain pending.

- inductex:docs/manual/ix_layoutinput.tex: IXI units, records, variables, PATH/POLY/TEXT and expressions
- inductex:docs/manual/ix_ldf.tex: Units and the complete teaching process
- inductex:docs/manual/ix_netlist.tex: Elements and extraction ports
- inductex:docs/manual/ix_ports.tex: Terminal edges and labels
- inductex:docs/manual/studio_projects.tex: Raw IXI, Basic input references and running the project
- validation:inductex-inputs-windows-20261103: VAL-020 licensed CLI and VAL-021 separate editor-analysis checks; exact scope retained
- capture:studio-inputs-20261103T163127: Native authoring illustration only; exact reviewed input and image bytes
- validation:studio-inputs-native-windows-20261103: VAL-023; actual native edits, numerical runs, port recovery, Stop/retry and separate-process single-tab restart; provenance limitation retained

- The five cited maintained references still match their reviewed inventory hashes; existing source baselines were preserved.
- VAL-023 adds eighteen independent native checks. The saved-source completion label is an open provenance observation (KB-GUI-008); the actual Cancelled verdict is kept distinct from retained numerical rows. Original input bytes were restored.
- VAL-020 CLI and VAL-021 editor analysis remain separate from the later normal native workflow. Complete physical pickers, article/release acceptance and numerical qualification remain pending.

## Related guides

- [Define and inspect an LDF fabrication process](/knowledge-base/inductex-process-build)
- [Build the circuit netlist required for extraction](/knowledge-base/inductex-netlist-build)
- [Define layout ports and match them to the circuit](/knowledge-base/inductex-port-design)
- [Run your first microstrip extraction in Studio](/knowledge-base/inductex-first-microstrip)
- [Results still says Completed after I edit an IXI file](/knowledge-base/inductex-completed-after-edit)
