Ralf Magnus Palmiste
f887c94a70
Added the Data, fitter, and statistiline_filter scripts that are necessary working with the model.
26 lines
843 B
Python
26 lines
843 B
Python
import numpy as np
|
|
import h5py
|
|
from scipy.interpolate import interp1d
|
|
|
|
|
|
class Data:
|
|
def __init__(self, filename, group_key):
|
|
self.filename = filename
|
|
self.datasets = []
|
|
|
|
with h5py.File(self.filename, "r") as h5:
|
|
|
|
if 1:
|
|
print(f"Atribuudid grupis '{group_key}'")
|
|
grp = h5[group_key]
|
|
|
|
self.current = grp["current_raw"][()] / grp.attrs["c_mem"]
|
|
self.current_t = grp["current_t"][()]
|
|
self.ECal = grp.attrs["vrev"]
|
|
self.gGaL = grp.attrs["gmax"]
|
|
self.eid = group_key
|
|
|
|
def get_current_slice(self, times: np.ndarray):
|
|
interpolator = interp1d(self.current_t, self.current, fill_value="extrapolate")
|
|
return interpolator(times)
|