pytecio is a small reader for legacy Tecplot ASCII files.
The useful niche for this repo is narrow but still real: if you have old Tecplot .dat exports and no Tecplot license anymore, this gives you a lightweight way to pull the data into Python and move on.
pytecio is intentionally limited.
- Reads legacy Tecplot ASCII data.
- Returns numeric
pandas.DataFrameobjects for zone data. - Returns numeric connectivity tables for simple unstructured zones.
- Works without Tecplot or a Tecplot license.
It is not intended to be a full Tecplot API replacement.
The current test suite covers:
- Structured ASCII zones.
- Simple unstructured ASCII zones with
Nodes=andElements=. - Variable definitions on one line or split across multiple lines.
- Lowercase or uppercase Tecplot keywords.
- Multi-zone files.
- 1D/list-style Tecplot monitor files via
read1D().
- Binary Tecplot files such as
.pltor.szplt. - Full Tecplot feature coverage.
- Preserving
AUXDATAmetadata. - Rich mesh semantics beyond the raw connectivity table.
Quoted variable names are the tested path.
Install from a clone:
pip install .Dependencies:
numpypandas
Read a Tecplot ASCII file:
from pytecio import read_ascii
zones, zone_data, connectivity = read_ascii("solution.dat")Returned values:
zones: list of zone names as plain strings.zone_data: list of numericpandas.DataFrameobjects, one per zone.connectivity: list of numericpandas.DataFrameobjects for unstructured connectivity.
Read a Tecplot-style 1D monitor file:
from pytecio import read1D
monitor = read1D("monitor.dat", to_pandas=True)read1D(..., to_pandas=True) returns a numeric pandas.DataFrame. Without to_pandas=True, it returns (variables, data) where data is a NumPy array.
Run the tests with:
pytest -qThe repository includes small Tecplot ASCII fixtures for structured, unstructured, and multi-zone cases under tests/testdata/.