Loading pysen/atarilib.py +1 −1 Original line number Diff line number Diff line #!/usr/bin/env python "ATARI Plot utils" import warnings #import warnings from functools import partial from collections import namedtuple Loading pysen/io/__init__.py +1 −1 Original line number Diff line number Diff line Loading @@ -3,4 +3,4 @@ pysen I/O module """ #from .fit import * from .reader import read_echo, read_magnetic, read_detimage from .hdf import HdfConverter from .hdf import HdfConverter, echo_to_hdf, magnetic_to_hdf pysen/io/hdf.py +34 −4 Original line number Diff line number Diff line #!/usr/bin/env python """Convert .echo to HDF5""" import os.path import logging import h5py import numpy as np from ..revision import version from ..iostrings import encode from .reader import read_echo, read_magnetic #FIXME: we need to work on the idea of a schema (or not???) SCHEMA_DEFAULT = { Loading @@ -30,9 +34,7 @@ SCHEMA_DEFAULT = { SCHEMAS = { 'default': SCHEMA_DEFAULT, } class HdfConverter(object): class HdfConverter: """Class to convert .echo files into HDF5 example:: Loading Loading @@ -128,3 +130,31 @@ class HdfConverter(object): elif key: value = encode(value) subgroup.attrs[subkey] = value def echo_to_hdf(filename, outdir, **kwargs): """convert .echo file into an HDF file """ mode = kwargs.pop('mode', 'w') schema = kwargs.pop('schema', None) compression = kwargs.pop('compression', None) outfile, _ = os.path.splitext(os.path.basename(filename)) outfile = os.path.join(outdir, outfile + ".h5") converter = HdfConverter(outfile, mode=mode, version=version()) data = read_echo(filename) converter.write(data, compression=compression, schema=schema) return outfile def magnetic_to_hdf(filename, outdir, **kwargs): """convert magnetic up/down .dat file into an HDF file """ mode = kwargs.pop('mode', 'w') schema = kwargs.pop('schema', None) compression = kwargs.pop('compression', None) outfile, _ = os.path.splitext(os.path.basename(filename)) outfile = os.path.join(outdir, outfile + ".h5") converter = HdfConverter(outfile, mode=mode, version=version()) data = read_magnetic(filename) converter.write(data, compression=compression, schema=schema) return outfile pysen/io/reader.py +3 −3 Original line number Diff line number Diff line Loading @@ -139,7 +139,7 @@ def parse_keywords(line, mode=0): if not line or re.match(_RE_COMMENT, line): return result tokens = re.findall(_RE_TOKEN, line) if len(tokens)<1: if not tokens: return result keyword = tokens[0] tokens = iter(tokens[1:]) Loading Loading @@ -478,7 +478,7 @@ def read_echo(filename): ipar = 0 while True: ipar = ipar + 1 if slength>0 and ipar>slength: if 0 < slength < ipar: break try: tech = read_tech_info(lines) Loading Loading @@ -594,7 +594,7 @@ def read_datreat(filename): # -------- data section ------------ dataheader=False for line in lines: if line == '#eod' or line == '#nxt': if line in ('#eod','#nxt'): result.append((meta, np.asarray(data).T)) data = [] meta = OrderedDict() Loading pysen/lib.py +1 −1 Original line number Diff line number Diff line Loading @@ -6,7 +6,7 @@ PySEN library functions from numpy import pi, log, sin, arcsin, around class ElasticScattering(object): class ElasticScattering: """Elastic scattering Elastic scattering law: Loading Loading
pysen/atarilib.py +1 −1 Original line number Diff line number Diff line #!/usr/bin/env python "ATARI Plot utils" import warnings #import warnings from functools import partial from collections import namedtuple Loading
pysen/io/__init__.py +1 −1 Original line number Diff line number Diff line Loading @@ -3,4 +3,4 @@ pysen I/O module """ #from .fit import * from .reader import read_echo, read_magnetic, read_detimage from .hdf import HdfConverter from .hdf import HdfConverter, echo_to_hdf, magnetic_to_hdf
pysen/io/hdf.py +34 −4 Original line number Diff line number Diff line #!/usr/bin/env python """Convert .echo to HDF5""" import os.path import logging import h5py import numpy as np from ..revision import version from ..iostrings import encode from .reader import read_echo, read_magnetic #FIXME: we need to work on the idea of a schema (or not???) SCHEMA_DEFAULT = { Loading @@ -30,9 +34,7 @@ SCHEMA_DEFAULT = { SCHEMAS = { 'default': SCHEMA_DEFAULT, } class HdfConverter(object): class HdfConverter: """Class to convert .echo files into HDF5 example:: Loading Loading @@ -128,3 +130,31 @@ class HdfConverter(object): elif key: value = encode(value) subgroup.attrs[subkey] = value def echo_to_hdf(filename, outdir, **kwargs): """convert .echo file into an HDF file """ mode = kwargs.pop('mode', 'w') schema = kwargs.pop('schema', None) compression = kwargs.pop('compression', None) outfile, _ = os.path.splitext(os.path.basename(filename)) outfile = os.path.join(outdir, outfile + ".h5") converter = HdfConverter(outfile, mode=mode, version=version()) data = read_echo(filename) converter.write(data, compression=compression, schema=schema) return outfile def magnetic_to_hdf(filename, outdir, **kwargs): """convert magnetic up/down .dat file into an HDF file """ mode = kwargs.pop('mode', 'w') schema = kwargs.pop('schema', None) compression = kwargs.pop('compression', None) outfile, _ = os.path.splitext(os.path.basename(filename)) outfile = os.path.join(outdir, outfile + ".h5") converter = HdfConverter(outfile, mode=mode, version=version()) data = read_magnetic(filename) converter.write(data, compression=compression, schema=schema) return outfile
pysen/io/reader.py +3 −3 Original line number Diff line number Diff line Loading @@ -139,7 +139,7 @@ def parse_keywords(line, mode=0): if not line or re.match(_RE_COMMENT, line): return result tokens = re.findall(_RE_TOKEN, line) if len(tokens)<1: if not tokens: return result keyword = tokens[0] tokens = iter(tokens[1:]) Loading Loading @@ -478,7 +478,7 @@ def read_echo(filename): ipar = 0 while True: ipar = ipar + 1 if slength>0 and ipar>slength: if 0 < slength < ipar: break try: tech = read_tech_info(lines) Loading Loading @@ -594,7 +594,7 @@ def read_datreat(filename): # -------- data section ------------ dataheader=False for line in lines: if line == '#eod' or line == '#nxt': if line in ('#eod','#nxt'): result.append((meta, np.asarray(data).T)) data = [] meta = OrderedDict() Loading
pysen/lib.py +1 −1 Original line number Diff line number Diff line Loading @@ -6,7 +6,7 @@ PySEN library functions from numpy import pi, log, sin, arcsin, around class ElasticScattering(object): class ElasticScattering: """Elastic scattering Elastic scattering law: Loading