# -*- coding: utf-8 -*-
# ---
# jupyter:
#   jupytext:
#     text_representation:
#       extension: .jl
#       format_name: light
#       format_version: '1.5'
#       jupytext_version: 1.14.4
#   kernelspec:
#     display_name: Julia 1.5.1
#     language: julia
#     name: julia-1.5
# ---

using Pkg
Pkg.add("Plots")

Pkg.add("PlotThemes")

using Plots
plotly()
theme(:default)

function solve(T, R)
    T = inv.(T .+ 273.15) # Заміри термістера в Кельвінах 
    M = [
        1 log(ℯ, R[1]) log(ℯ, R[1])^3
        1 log(ℯ, R[2]) log(ℯ, R[2])^3
        1 log(ℯ, R[3]) log(ℯ, R[3])^3
    ]
    return M \ T # Розв'язок системи
end
get_func(A, B, C) = Tf(r) = inv(A + B * log(ℯ, r) +  C * log(ℯ, r)^3) - 273.15

exp_T, exp_R  = [-0.1; 23.6; 62.4], [12_450, 5_070, 760]
A, B, C = solve(exp_T, exp_R)

am_T, am_R = [0; 40; 80], [32_660, 5_325, 1_257]
am_A, am_B, am_C = solve(am_T, am_R)

# Функція y1 (крива синього кольору) - Американські заміри;
# Функція y2 - наші заміри.
r = 700:100:33_000
plot([get_func(am_A, am_B, am_C), get_func(A, B, C)], r, ylabel="T (temp. in C)", xlabel="R (Om)")

# Зверху американські заміри, знизу відповідно наші.
plot([exp_T, am_T], [exp_R, am_R], t=[:scatter, :line], xlabel="T (temp. in C)", ylabel="R (Om)", label="")



StarcoderdataJupyterScriptsDedupFiltered