From d33cdfe21ae194798f139af247b99c315dcd8f2c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=94=D0=BC=D0=B8=D1=82=D1=80=D0=B8=D0=B9=20=D0=9F=D1=83?= =?UTF-8?q?=D0=BD=D0=BE=D0=B2?= Date: Sat, 10 Dec 2022 17:01:16 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A3=D0=B4=D0=B0=D0=BB=D0=B8=D1=82=D1=8C=20'P?= =?UTF-8?q?roject/analize.py'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Project/analize.py | 38 -------------------------------------- 1 file changed, 38 deletions(-) delete mode 100644 Project/analize.py diff --git a/Project/analize.py b/Project/analize.py deleted file mode 100644 index 9a30643..0000000 --- a/Project/analize.py +++ /dev/null @@ -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