gruvoc.solbfile: Tools for reading INRIA solb files

One key functionality of this module is to determine the file type of .solb files or determine that they are not recognizable files of that format.

class cape.gruvoc.solbfile.SOLBFileType(version, byteorder)

Bases: tuple

byteorder

Alias for field number 1

version

Alias for field number 0

cape.gruvoc.solbfile.SOLB_MODE_CHECKERS = {'b4': <function check_solb_b>, 'b8': <function check_solb_b>, 'lb4': <function check_solb_lb>, 'lb8': <function check_solb_lb>, 'lr4': <function check_solb_lr>, 'lr8': <function check_solb_lr>, 'r4': <function check_solb_r>, 'r8': <function check_solb_r>}

Dictionary of mode checkers

cape.gruvoc.solbfile.check_solb_ascii(fp)
cape.gruvoc.solbfile.check_solb_b(fp)
cape.gruvoc.solbfile.check_solb_lb(fp)
cape.gruvoc.solbfile.check_solb_lr(fp)
cape.gruvoc.solbfile.check_solb_r(fp)
cape.gruvoc.solbfile.get_solb_mode(fname_or_fp: IOBase | str, fmt: str | None = None) → SOLBFileType | None

Identify SOLB file format if possible

Call:
>>> mode = get_ugrid_mode(fname_or_fp, fmt=None)
Inputs:
fname_or_fp: str | IOBase

Name of file or file handle

fmt: {None} | str

Predicted file format

Outputs:
mode: None | SOLBFileType

File type, big|little endian, stream|fortran, etc.

cape.gruvoc.solbfile.get_solb_mode_fname(fname: str, fmt: str | None = None) → SOLBFileType
cape.gruvoc.solbfile.read_solb(mesh: UmeshBase, fname_or_fp: str | IOBase, fmt: str | None = None)

Read data to a mesh object from .solb file

Call:
>>> read_solb(mesh, fname)
>>> read_solb(mesh, fp)
Inputs:
mesh: Umesh

Unstructured mesh object

fname: str

Name of file

fp: IOBase

File object

Versions:
  • 2025-03-06 @aburkhea: Version 1.0

cape.gruvoc.solbfile.write_solb(mesh: UmeshBase, fname_or_fp: str | IOBase, endian: str | None = 'little')

Write data from a mesh object to .solb file

Call:
>>> write_solb(mesh, fname,)
>>> write_solb(mesh, fp)
Inputs:
mesh: Umesh

Unstructured mesh object

fname: str

Name of file

fp: IOBase

File object

Versions:
  • 2025-03-06 @aburkhea: Version 1.0