1
Fork 0
internship/olaflow/processing/olaflow.py

39 lines
857 B
Python
Raw Normal View History

2022-03-07 11:19:37 +01:00
import re
2022-03-07 11:30:53 +01:00
from fluidfoam import readof
2022-03-07 11:19:37 +01:00
class OFModel:
def __init__(self, root):
self._root = root
2022-03-07 11:30:53 +01:00
def read_mesh(self):
self._x, self._y, self._z = readof.readmesh(str(self._root))
2022-03-07 11:19:37 +01:00
def write_field(self, field, values):
with open(self._root.joinpath("0", field), "r") as aw_file:
aw_raw = aw_file.read()
with open(self._root.joinpath("0", field), "w") as aw_file:
aw_file.write(
re.sub(
r"(?<=\(\n).*?(?=\n\))",
"\n".join(values.astype(str)),
aw_raw,
count=1,
flags=re.S,
)
)
2022-03-07 11:30:53 +01:00
@property
def x(self):
return self._x
@property
def y(self):
return self._y
@property
def z(self):
return self._z