P-unit_model/tests/functionalityTests.py
2020-05-10 13:55:48 +02:00

29 lines
801 B
Python

import numpy as np
import matplotlib.pyplot as plt
import functions as fu
def test_plot_inverses(ficurve):
var = ficurve.boltzmann_fit_vars
fig, ax1 = plt.subplots(1, 1, figsize=(4.5, 4.5), tight_layout=True)
start = min(ficurve.stimulus_value)
end = max(ficurve.stimulus_value)
x_values = np.arange(start, end, (end-start)/5000)
ax1.plot(x_values, [fu.full_boltzmann(x, var[0], var[1], var[2], var[3]) for x in x_values], label="fit")
ax1.set_ylabel('freq')
ax1.set_xlabel('stimulus')
start = var[1]
end = var[0]
x_values = np.arange(start, end, (end - start) / 50)
ax1.plot([fu.inverse_full_boltzmann(x, var[0], var[1], var[2], var[3]) for x in x_values], x_values,
'.', c="red", label='inverse')
plt.legend()
plt.show()