Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 2 additions & 3 deletions src/elli/importer/woollam.py
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ def _is_wvase_tabular(line: str) -> bool:
Returns:
bool: True if the line is in wvase tabular layout.
"""
return bool(re.search(r"^(\d*\.\d*\s+){5}\d*\.\d*$", line))
return bool(re.search(r"^(-?\d*\.\d*\s+){5}\d*\.\d*$", line))


def _is_complete_ease_tabular(line: str) -> bool:
Expand Down Expand Up @@ -181,11 +181,9 @@ def read_woollam_psi_delta(fname: str) -> pd.DataFrame:
line = fobj.readline()
while line:
if _is_wvase_tabular(line):
line_number = fobj.tell()
file_format = "wvase"
break
if _is_complete_ease_tabular(line):
line_number = fobj.tell()
file_format = "complete_ease"
break
if _is_tan_cos_format(line):
Expand All @@ -194,6 +192,7 @@ def read_woollam_psi_delta(fname: str) -> pd.DataFrame:
"Please try using wvase's psi/delta format."
)
metadata.append(line)
line_number = fobj.tell()
line = fobj.readline()
fobj.seek(line_number)

Expand Down
15 changes: 10 additions & 5 deletions tests/test_wollam.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import pytest
from fixtures import datadir # pylint: disable=unused-import
from numpy.testing import assert_almost_equal

import elli

Expand All @@ -15,9 +16,9 @@ def test_reading_of_psi_delta_woollam(datadir):
)
data_cease = elli.read_woollam_psi_delta(datadir / "complete_ease_example.dat")

assert data_wvase.shape == (542, 2)
assert data_wvase_wo_dpolE.shape == (542, 2)
assert data_cease.shape == (3263, 2)
assert data_wvase.shape == (543, 2)
assert data_wvase_wo_dpolE.shape == (543, 2)
assert data_cease.shape == (3264, 2)


# pylint: disable=redefined-outer-name
Expand All @@ -26,8 +27,12 @@ def test_reading_and_conv_to_woollam(datadir):
data_wvase = elli.read_woollam_rho(datadir / "wvase_example.dat")
data_cease = elli.read_woollam_rho(datadir / "complete_ease_example.dat")

assert data_wvase.shape == (542,)
assert data_cease.shape == (3263,)
assert data_wvase.shape == (543,)
assert data_wvase.index.get_level_values(1)[0] == 300
assert data_wvase.index.get_level_values(1)[-1] == 1200
assert data_cease.shape == (3264,)
assert_almost_equal(data_cease.index.get_level_values(1)[0], 193)
assert_almost_equal(data_cease.index.get_level_values(1)[-1], 1700)


# pylint: disable=redefined-outer-name
Expand Down