/* ** maxlik9.e Likelihood Profile and Profile t traces for a ** nonlinear least squares problem ** ** The data for this example have been created using nlls.sim. */ library maxlik,pgraph; #include maxlik.ext; #include pgraph.ext; maxset; @ -- procedure to compute log-likelihood -- @ proc lnlk(b,z); local dev,s2; dev = z[.,1] - (b[1] * exp(-b[2]*z[.,2])); s2 = dev'dev/rows(dev); retp(lnpdfn2(dev,s2)); endp; proc grdlk(b,z); local d,s2,dev,r; d = exp(-b[2]*z[.,2]); dev = z[.,1] - b[1]*d; s2 = dev'dev/rows(dev); r = dev.*d/s2; retp(r~(-b[1]*z[.,2].*r)); endp; proc hslk(b,z); local d,s2,dev,r, hss; d = exp(-b[2]*z[.,2]); dev = z[.,1] - b[1]*d; s2 = dev'dev/rows(dev); r = -z[.,2].*d.*(b[1].*d + dev); hss = -d.*d/s2~r~b[1].*z[.,2].*r; retp(xpnd(sumc(hss))); endp; startv = { 2, 1 }; output file = maxlik9.out reset; _max_GradProc = &grdlk; _max_HessProc = &hslk; __output = 5; call maxprofile("nlls",0,&lnlk,startv); output off;