tecio.open#
- tecio.open(path, mode='r', **kwargs)#
Open a Tecplot file for reading, writing, or appending.
Selects the correct format handler from the file extension and returns the appropriate reader or writer. All handles are context managers.
- Parameters:
path (str | os.PathLike) – File path. Extension determines the format handler:
mode (str) – Access mode — mirrors Python’s built-in
open():'r'– Open Tecplot file for reading.'w'– Open Tecplot file for writing, truncating the file first.'x'– Open Tecplot file for exclusive creation, failing if the file already exists.'a'– Append new zones to an existing file. The file is stream-copied to a temporary file; on close the temporary atomically replaces the original. RaisesFileNotFoundErrorif the file does not exist (use'w'to create a new file).'a+'– Same as'a'but the returned handle also exposes the full read API populated from the original file.
**kwargs – Forwarded to the underlying handler constructor. The accepted keyword arguments differ by mode — see the tables below.
- Keyword Args (modes
'r','w','x'): Forwarded directly to the format’s
ReadorWriteconstructor.For reading — no keyword arguments are accepted; all metadata is read from the file.
For writing (
'w'and'x'):Keyword
Default
Description
title""Dataset title string embedded in the file header.
variablesNoneVariable name list. For SZL and PLT this may be deferred to the first
write_ijk_zone()orwrite_fe_zone()call. Required at open time for DAT.file_typeFileType.FULLOne of
FULL,GRID, orSOLUTION.- Keyword Args (modes
'a','a+'): title,variables, andfile_typedefault to the values read from the existing file. In most cases you should not pass these — they are documented here for completeness.Keyword
Default
Description
titleFrom file
Override the dataset title in the output file. Rarely needed — the existing title is preserved by default.
variablesFrom file
Do not override. The variable list is fixed by the existing file. Passing a different list will cause a mismatch between the copied zones and any new zones.
file_typeFrom file
Override the file type. Rarely needed.
- Returns:
'r'→tecio.szl.Read,tecio.plt.Read, ortecio.dat.Read'w'/'x'→tecio.szl.Write,tecio.plt.Write, ortecio.dat.Write'a'→AppendWrite'a+'→AppendReadWrite
- Raises:
ValueError – Unsupported file extension or unrecognised mode.
FileNotFoundError –
'r','a', or'a+'on a missing file.FileExistsError –
'x'on an existing file.NotImplementedError – Append mode on a file containing FEPOLYGON or FEPOLYHEDRON zones.
Examples
Read a file:
>>> with tecio.open("flow.szplt") as tec: ... x = tec.zone[0].variable["x"].values
Write a new file, deferring variable names to the first zone:
>>> with tecio.open("out.szplt", "w", title="Run 1") as tec: ... tec.write_ijk_zone(data=[x, y, p], variables=["x", "y", "p"])
Append a new zone to an existing file:
>>> with tecio.open("out.szplt", "a") as tec: ... tec.write_ijk_zone(data=[x2, y2, p2], solution_time=2.0)
Append and read in the same session:
>>> with tecio.open("out.szplt", "a+") as tec: ... prev_p = tec.zone[-1].variable["p"].values ... tec.write_ijk_zone(data=[x2, y2, prev_p * 0.9])