Question: Point plot for system of nonlinear equations

Dear Maple experts,

I have a system of several nonlinear equaitons. My code can solve it for a given parameter. But when I want to plot it, it takes too much time with no results. So, I decided to plot it for several given points. I get the answer for the points individually, but I don't know how to apply this to 'plot' command. Would you please help?

restartNULL

with(plots); with(RealDomain)

NULL

c := 1; cr := 0.3e-1*c; u := 5; sExp := 0.6e-1*c; s := .65*c; v := 3*c

NULL

NULL

FirmModelPartial1 := proc (alpha, beta, delta) local L1s, qs, ps, prs, hs, `&kappa;s`, `&lambda;__1s`, `&lambda;__2s`, `&lambda;__3s`, q, p, pr, h, kappa, `&lambda;__1`, `&lambda;__2`, `&lambda;__3`, FirmpfSiS, RecpfSiS, UnsoldSiS, EnvironSiS, p0, OldSoldPrim, xi, prof1, prof2, L1, L2, E1, E2, E3, E4, E5, E6, E7, E8, E9, E10, E11, E12; prof1 := (ps-c)*qs+((1/2)*beta^2*`&kappa;s`^2/(u*(1-alpha))-(1/2)*(qs+beta*`&kappa;s`)^2/u)*(ps-s)+hs*prs*(beta*`&kappa;s`-(1/2)*beta^2*`&kappa;s`^2/(u*(1-alpha))); L1s := prof1+`&lambda;__1s`*(1-sExp/prs-hs)+`&lambda;__2s`*(qs-`&kappa;s`)+`&lambda;__3s`*(qs-alpha*beta*`&kappa;s`/(1-alpha)); E1 := qs*(diff(L1s, qs)) = 0; E2 := hs*(diff(L1s, hs)) = 0; E3 := `&lambda;__1s`*(1-sExp/prs-hs) = 0; E4 := `&lambda;__2s`*(qs-`&kappa;s`) = 0; E5 := `&lambda;__3s`*(qs-alpha*beta*`&kappa;s`/(1-alpha)) = 0; E6 := qs = alpha*u*(v-ps)/(v-s); E7 := prs = ps-delta*v; E8 := `&kappa;s` = (beta*prs*(1-hs)+sExp*(1-beta))/(beta^2*(prs*(1-hs)-sExp)/(u*(1-alpha))+2*cr); p, q, pr, h, kappa, `&lambda;__1`, `&lambda;__2`, `&lambda;__3` := (eval([ps, qs, prs, hs, `&kappa;s`, `&lambda;__1s`, `&lambda;__2s`, `&lambda;__3s`], solve({0 <= qs-alpha*beta*`&kappa;s`/(1-alpha), 0 <= qs-`&kappa;s`, 0 <= 1-sExp/prs-hs, 0 <= `&lambda;__1s`, 0 <= `&lambda;__2s`, 0 <= `&lambda;__3s`, diff(L1s, qs) <= 0, diff(L1s, hs) <= 0, c < ps, (1/2)*beta*`&kappa;s`/(u*(1-alpha)) < 1, sExp+delta*v < ps, E1, E2, E3, E4, E5, E6, E7, E8}, [ps, qs, prs, hs, `&kappa;s`, `&lambda;__1s`, `&lambda;__2s`, `&lambda;__3s`])[1]))[]; xi := kappa/q; FirmpfSiS := max(0, eval(prof1, [ps = p, qs = q, prs = p-delta*v, hs = h, `&kappa;s` = kappa])); RecpfSiS := ((1-h)*pr-sExp)*(beta*kappa-(1/2)*beta^2*kappa^2/(u*(1-alpha)))+(sExp-cr)*kappa; UnsoldSiS := (1/2)*(q+beta*kappa)^2/u-(1/2)*beta^2*kappa^2/(u*(1-alpha)); EnvironSiS := q+UnsoldSiS; return p, q, FirmpfSiS, RecpfSiS, EnvironSiS, h, UnsoldSiS, h, xi end proc

NULL

NULL

FirmModelPartial1(.1, .2, .1)[3]

Error, (in FirmModelPartial1) invalid subscript selector

 

NULL

FirmModelPartial1(.2, .2, .1)[3]

Error, (in FirmModelPartial1) invalid subscript selector

 

FirmModelPartial1(.3, .2, .1)[3]

.2200894743

(1)

NULL

FirmModelPartial1(.4, .2, .1)[3]

.2892440018

(2)

FirmModelPartial1(.5, .2, .1)[3]

.3801240291

(3)

FirmModelPartial1(.6, .2, .1)[3]

.4921660779

(4)

FirmModelPartial1(.7, .2, .1)[3]

.6227094789

(5)

FirmModelPartial1(.8, .2, .1)[3]

.7668402612

(6)

FirmModelPartial1(.9, .2, .1)[3]

.9161921261

(7)
 

plot('FirmModelPartial1(alpha, .2, .2)[3]', alpha = .1 .. .90, adaptive = false, sample = [.1, .2, .3, .4, .5, .6, .7, .8, .9])

 

Download Reza_Tchno_(v3).mw

Besdies, it seems for some points there is no feasible solution. So, there is no need to have plot for them.

I attach the code. Thank you so much!

Please Wait...