Удалить 'Project/analize.py'
This commit is contained in:
parent
5bf4a65f28
commit
d33cdfe21a
@ -1,38 +0,0 @@
|
||||
from scipy.optimize import curve_fit
|
||||
from numpy import linspace
|
||||
|
||||
from numpy import tanh
|
||||
from scipy.constants import e, k
|
||||
|
||||
|
||||
import pandas as pd
|
||||
|
||||
|
||||
# Global variables
|
||||
|
||||
new_U = linspace(-25, 25, 1000)
|
||||
|
||||
|
||||
# Function for approximation
|
||||
|
||||
|
||||
def function_IU(U, I_n, T_e):
|
||||
return I_n * tanh(e*U/2/k/T_e)
|
||||
|
||||
# Find the best fit params of In and Te
|
||||
|
||||
|
||||
def find_FitParams(data_I, data_U):
|
||||
popt, pcov = curve_fit(function_IU, data_U, data_I, p0=[0, 50000])
|
||||
return popt, pcov
|
||||
|
||||
# Returns pandas.DataFrame with approximated Current and Voltage values
|
||||
|
||||
|
||||
def getApproxValues(data):
|
||||
data = data.sort_values(by=['U'])
|
||||
popt, pcov = find_FitParams(data['I'], data['U'])
|
||||
df = pd.DataFrame()
|
||||
df['U'] = new_U
|
||||
df['I'] = function_IU(df['U'], *popt)
|
||||
return df
|
Loading…
Reference in New Issue
Block a user