def test_unify(): x = phuzzy.Uniform(alpha0=[1, 4], number_of_alpha_levels=5) y = phuzzy.Trapezoid(alpha0=[1, 4], alpha1=[2, 3], number_of_alpha_levels=7) a, b = x._unify(y) assert len(a.df) == 7 assert len(b.df) == 7
def test_uniform(): p = phuzzy.Uniform(alpha0=[1, 4], number_of_alpha_levels=5) print(p.alpha0) print(p.df) print(p.to_str()) print(p.get_01) s = p.to_str() print(s) assert s == "Uniform[1,4]" p.discretize(alpha0=[1, 4], alpha1=[], alpha_levels=5) pdf = p.pdf([2]) print(pdf) cdf = p.cdf([2]) print(cdf)
def test_operation_class(): tra = phuzzy.Trapezoid(alpha0=[1, 4], alpha1=[2, 3], number_of_alpha_levels=5) tri = phuzzy.Triangle(alpha0=[1, 4], alpha1=[2, 3], number_of_alpha_levels=5) uni = phuzzy.Uniform(alpha0=[1, 4], alpha1=[2, 3], number_of_alpha_levels=5) x = tra + tra assert isinstance(x, phuzzy.Trapezoid) x = uni + uni assert isinstance(x, phuzzy.Uniform) x = tri + uni assert isinstance(x, phuzzy.Triangle) x = uni + tri print(x.__class__) assert isinstance(x, phuzzy.Triangle) x = tra + uni assert isinstance(x, phuzzy.Trapezoid) x = uni + tra assert isinstance(x, phuzzy.Trapezoid) x = tra + tri assert isinstance(x, phuzzy.Trapezoid) x = tri + tra assert isinstance(x, phuzzy.Trapezoid) x = uni + tri + tra assert isinstance(x, phuzzy.Trapezoid) x = uni + 2. assert isinstance(x, phuzzy.Uniform)
def plot_uniform_cdf(): import matplotlib.pyplot as plt H = 100. # mm B = 300. # mm fig, axs = plt.subplots(1, 2, dpi=90, facecolor='w', edgecolor='k', figsize=(B / 25.4, H / 25.4)) x = np.linspace(0, 6, 200) f = phuzzy.Uniform(alpha0=[1, 4], number_of_alpha_levels=5) p = f.pdf(x) P = f.cdf(x) axs[0].plot(x, p, label="pdf", lw=2) axs[1].plot(x, P, label="cdf", lw=2) axs[0].legend(loc="best") axs[1].legend(loc="best") plt.show()
import streamlit as st import phuzzy from phuzzy.mpl import mix_mpl import matplotlib.pyplot as plt add_selectbox = st.sidebar.selectbox("phuzzy numbers", ("Triangle", "Uniform", "Trapezoid")) st.text('phuzzy') p1_slot = st.empty() uniform = phuzzy.Uniform(alpha0=[1, 2]) mix_mpl(uniform) trapezoid = phuzzy.Trapezoid(alpha0=[1, 2], alpha1=[1.2, 1.5]) mix_mpl(trapezoid) triangle = phuzzy.Triangle(alpha0=[1, 2], alpha1=[1.8]) mix_mpl(triangle) p_dict = {"Triangle": triangle, "Uniform": uniform, "Trapezoid": trapezoid} print(add_selectbox) p = p_dict.get(add_selectbox, triangle) def plot_phuzzy_number(p): H = 170. #mm B = 270. #mm fig, ax = plt.subplots(dpi=90,
def test_uniform(): p = phuzzy.Uniform(alpha0=[1, 2], number_of_alpha_levels=200) pp = [0, .1, 0.5, .9, 1] ppf = p.ppf(pp) print(ppf)
def test_add(): u = phuzzy.Uniform(alpha0=[1,2]) w = 1 + u print(w) assert w