I have a problem similar to this. I followed the solution therein but my problem is still not resolved.
I have an implicit function, $F(e,w;a,i,b,n)=0$ that implicitly yields $e$ has a function of $w$ along with the parameters, $a$, $i$, $n$, and $b$, i.e. $e = e(w;a,i,n,b)$. Next, $w$ is also endogenously determined as the solution of $\frac{\partial e}{\partial w} = \frac{e}{w}$. The relevant ranges are: $0\leq e \leq 1 $, $w \geq 0 $, $0\leq a \leq 1 $, $0\leq i \leq 1 $, $0\leq b \leq 1 $, $n \geq 0 $.
I would like to produce two diagrams. First, a plot of $e$ against $w$ for three different values of $a$, $a=0.1$, $a=0.5$, $a=0.9$, for given $i=0.1$, $b=0.7$, $n=1$. It would look something like:
Second, I would like to plot $\frac{w}{ae}$ against $a$ for varying parameter values of $i=[0,1]$, $b=[0,1]$, and $n=1$, using Manipulate
.
My code is the following:
Clear["Global`*"]
n = 1
eqns[i_, b_] = {D[w - 1/((1 - e) w), e] == D[1 - e, e] ((-((-a (i + ((1 - e) n (w/(b e^b))^(1/(b - 1)))/(1 - n e (w/(b e^b))^(1/(b - 1)))) + (-1 + a^2) (-1 + e)^2 w - a (-1 + e) (i + ((1 - e) n (w/(b e^b))^(1/(b - 1)))/(1 - n e (w/(b e^b))^(1/(b - 1)))) w^2)/(a (-1 + e) i (1 - e + i + ((1 - e) n (w/(b e^b))^(1/(b - 1)))/(1 - n e (w/(b e^b))^(1/(b - 1)))) w))) - (-((-a ((1 - e) n (w/(b e^b))^(1/(b - 1)))/(1 - n e (w/(b e^b))^(1/(b - 1))) + (-1 + a^2) (-1 + e) (-1 + e - i) w - a (-1 + e) ((1 - e) n (w/(b e^b))^(1/(b - 1)))/(1 - n e (w/(b e^b))^(1/(b - 1)))w^2)/(a (-1 + e) i (1 - e + i + ((1 - e) n (w/(b e^b))^(1/(b - 1)))/(1 - n e (w/(b e^b))^(1/(b - 1)))) w)))), D[e, w] == e/w, r == w/a e, 0 <= i <= 1, 0 <= a <= 1, 0 <= e <= 1, w >= 0, 0 <= b <= 1}
Plot[Evaluate@Table[e, {a, {0.1, 0.5, 0.9}}], {w, 0, 5}, PlotRange -> {0, 1}, PlotLabels -> {"a=0.1", "a=0.5", "a=0.9"}, AxesLabel -> {w, e}]
Manipulate[Module[{i = Rationalize[iv], b = Rationalize[bv]}, sol = SolveValues[eqns[i, b], r, {e, w}, Reals]; Plot[Evaluate@sol, {a, 0, 1}, PlotRange -> {0, 23}, PlotRangePadding -> Scaled[.05], Frame -> True, FrameLabel -> (Style[#, 14] & /@ {"w/(ae)", HoldForm[w/(a e)]})]] // Quiet, {{iv, 0.1, "i"}, 0, 1, 0.01, Appearance -> "Labeled"}, {{bv, 0.1, "b"}, 0, 1, 0.01, Appearance -> "Labeled"}, SynchronousUpdating -> False, TrackedSymbols :> All]