Traçar uma função por partes iterada com nós endógenos

Aug 17 2020

Estou tentando representar graficamente uma função por partes que posso definir recursivamente, em que os nós também são endógenos. Basicamente,$f(l)=a^{t}$ quando $l \in \left( \frac{\mu}{\alpha^{t-1}(1-\alpha)+\mu(1-\alpha^{t-1})};\frac{\mu}{\alpha^{t}(1-\alpha)+\mu(1-\alpha^{t})} \right]$. $t=1,2,...N$, ambos $\alpha$ e $\mu$ $\in (0,1)$ e eu preciso traçar isso para $l \in \left[\frac{\mu}{1-\alpha},1\right)$

Eu posso escrever manualmente bit a bit e então atribuir o valor t = 1, mas eu gostaria que o programa fizesse isso para mim, para cada t = 1,2,3 ... para que eu pudesse plotar tudo para Vou para 1. Existe uma maneira? Muito obrigado antecipadamente!

a = 0.3;
mu = 0.2;
t = 1;
f[l_] = Piecewise[{{1, 
     l <= mu/(a^(t - 1) (1 - a) + mu (1 - a^(t - 1)))}, {a^t, 
     mu/(a^(t - 1) (1 - a) + mu (1 - a^(t - 1))) < l <= mu/(
      a^t (1 - a) + mu (1 - a^t))}, {a^(t + 1), 
     mu/(a^t (1 - a) + mu (1 - a^t)) < l <= mu/(
      a^(t + 1) (1 - a) + mu (1 - a^(t + 1)))}, {a^(t + 2), 
     mu/(a^(t + 1) (1 - a) + mu (1 - a^(t + 1))) < l <= mu/(
      a^(t + 2) (1 - a) + mu (1 - a^(t + 2)))}, {a^(t + 3), 
     mu/(a^(t + 2) (1 - a) + mu (1 - a^(t + 2))) < l <= mu/(
      a^(t + 3) (1 - a) + mu (1 - a^(t + 3)))}}];
Plot[f[l], {l, mu/(1-a), mu/(a^(t + 3) (1 - a) + mu (1 - a^(t + 3)))}, 
 AxesLabel -> Automatic]

Respostas

1 flinty Aug 17 2020 at 14:45

Você pode escrever assim:

Lhi[i_, a_, mu_, t_] := mu/((1-a)a^(-1+t+i)+(1-a^(-1+t+i))mu)

pw[l_, a_, mu_, t_, n_] := 
 Piecewise[
  MapIndexed[
   If[First[#2]==1, {1,l<=#1[[2]]},{a^(First[#2]-2+t),#1[[1]]<l<=#1[[2]]}]&, 
   Partition[Table[Lhi[i,a,mu,t], {i,-1,n}],2,1]]
  ]

With[{a = 0.3, mu = 0.2, t = 1, n = 4},
 Plot[pw[l, a, mu, t, n], {l, mu/(1 - a), 
   mu/(a^(t+3)(1-a) + mu(1-a^(t+3)))}, 
  AxesLabel -> Automatic]
 ]