Descuento Exponencial
Haz Clic para ver el Código
```{python}
import matplotlib.pyplot as plt
import matplotlib as mpl
import math
import numpy as np
import ipywidgets as ipw
def descuento_exp(A, D, k):
  utilidad_exp = A * math.exp(-1 * D * k)
  return utilidad_exp
descuento_exp_vectorized = np.vectorize(descuento_exp)
def grafica_1(A, k, Día):
  plt.figure(figsize=(8,7))
  axes = plt.subplot()
  plt.xlim(0,30)
  plt.ylim(0,155)
  axes.tick_params(labelsize="large")
  plt.xlabel("Días desde la elección", size="xx-large")
  plt.ylabel("Utilidad ($)", size="xx-large")
  D = np.arange(0, 31)
  x = descuento_exp_vectorized(A, D, k)
  plt.plot(D, x, color="black")
  plt.scatter(Día, descuento_exp_vectorized(A, Día, k), s=100, color="red")
  plt.text(15, 120, "Utilidad = $" + str(round(descuento_exp(A, Día, k),2)), size="xx-large")
grafica_1(A= 50, k= 0.5, Día = 30)
```
 
 
 
Descuento Hiperbólico
Haz Clic para ver el Código
```{python}
import matplotlib.pyplot as plt
import matplotlib as mpl
import math
import numpy as np
import ipywidgets as ipw
def descuento_hip(A, D, k):
  utilidad_hip = A / (1 + k * D)
  return utilidad_hip
descuento_hip_vectorized = np.vectorize(descuento_hip)
def grafica_2(A, k, Día):
  plt.figure(figsize=(8,7))
  axes = plt.subplot()
  plt.xlim(0,30)
  plt.ylim(0,155)
  axes.tick_params(labelsize="large")
  plt.xlabel("Días desde la elección", size="xx-large")
  plt.ylabel("Utilidad ($)", size="xx-large")
  D = np.arange(0, 31)
  y = descuento_hip_vectorized(A, D, k)
  plt.plot(D, y, color="black")
  plt.scatter(Día, descuento_hip_vectorized(A, Día, k), s=100, color="red")
  plt.text(15, 120, "Utilidad = $" + str(round(descuento_hip(A, Día, k),2)), size="xx-large")
grafica_2(A = 150, k = 0.5, Día = 30)
```
 
 
 
Descuento Quasi-Hipérbolico
Haz Clic para ver el Código
```{python}
import matplotlib.pyplot as plt
import matplotlib as mpl
import math
import numpy as np
import ipywidgets as ipw
def descuento_quasi(A, Descuento, Sesgo, D):
  if D == 0:
    utilidad_quasi = A
  else:
    utilidad_quasi = A * Sesgo * (Descuento ** D)
  return utilidad_quasi
descuento_quasi_vectorized = np.vectorize(descuento_quasi)
def grafica_3(A, Descuento, Sesgo, Día):
  plt.figure(figsize=(8,7))
  axes = plt.subplot()
  plt.xlim(0,30)
  plt.ylim(0,155)
  axes.tick_params(labelsize="large")
  plt.xlabel("Días desde la elección", size="xx-large")
  plt.ylabel("Utilidad ($)", size="xx-large")
  D = np.arange(0, 31)
  z = descuento_quasi_vectorized(A, Descuento, Sesgo, D)
  plt.plot(D, z, color="black")
  plt.scatter(Día, descuento_quasi_vectorized(A, Descuento, Sesgo, Día), s=100, color="red")
  plt.text(15, 120, "Utilidad = $" + str(round(descuento_quasi(A, Descuento, Sesgo, Día),2)), size="xx-large")
grafica_3(A= 150, Descuento = 0.1, Sesgo = 0.1, Día = 30)
```
 
 
 
Estacionalidad de las preferencias
Haz Clic para ver el Código
```{python}
def descuento_exp(A, D, k):
  utilidad_exp = A * math.exp(-1 * D * k)
  return utilidad_exp
descuento_exp_vectorized = np.vectorize(descuento_exp)
def grafica_1(A, a, k):
  plt.figure(figsize=(8,7))
  axes = plt.subplot()
  plt.xlim(0,30)
  plt.ylim(0,100)
  axes.tick_params(labelsize="large")
  plt.xlabel("Días desde la elección", size="xx-large")
  plt.ylabel("Utilidad ($)", size="xx-large")
  D = np.arange(5, 36)
  d = np.arange(0, 31)
  eje_x = np.arange(0, 31)
  x = descuento_exp_vectorized(A, D, k)
  y = descuento_exp_vectorized(a, d, k)
  plt.plot(eje_x, x, color="red")
  plt.plot(eje_x, y, color="blue")
grafica_1(150, 75, 0.1)
```
 
 
 
Inversión de preferencias
Haz Clic para ver el Código
```{python}
def descuento_hip(A, D, k):
  utilidad_hip = A / (1 + k * D)
  return utilidad_hip
descuento_hip_vectorized = np.vectorize(descuento_hip)
def grafica_1(A, a, k):
  plt.figure(figsize=(8,7))
  axes = plt.subplot()
  plt.xlim(0,30)
  plt.ylim(0,100)
  axes.tick_params(labelsize="large")
  plt.xlabel("Días desde la elección", size="xx-large")
  plt.ylabel("Utilidad ($)", size="xx-large")
  D = np.arange(5, 36)
  d = np.arange(0, 31)
  eje_x = np.arange(0, 31)
  x = descuento_hip_vectorized(A, D, k)
  y = descuento_hip_vectorized(a, d, k)
  plt.plot(eje_x, x, color="red")
  plt.plot(eje_x, y, color="blue")
grafica_1(150, 75, 1)
```