| E.theta.toy {calibrator} | R Documentation |
Function
E.theta.toy returns expectation of H_1(D) with respect to
theta; Edash.theta.toy returns expectation with
respect to Edash. Function E.theta.toy also returns
information about nonlinear behaviour of h1(x,theta).
E.theta.toy(D2=NULL, H1=NULL, x1=NULL, x2=NULL, phi, give.mean=TRUE) Edash.theta.toy(x, t.vec, k, H1, fast.but.opaque=FALSE, a=NULL, b=NULL, phi=NULL)
D2 |
Observation points |
H1 |
Regression function for D1 |
phi |
hyperparameters. Default value of NULL only to be
used in Edash.theta.toy() when fast.but.opaque is TRUE |
x |
lat/long point (for Edash.theta.toy) |
t.vec |
Matrix whose rows are parameter values (for Edash.theta.toy) |
k |
Integer specifying column (for Edash.theta.toy) |
give.mean |
In E.theta.toy(), Boolean, with default TRUE meaning to return
the mean (expectation), and FALSE meaning to return the “variance” |
fast.but.opaque |
In Edash.theta.toy(), Boolean, with
default FALSE meaning to use a slow but clear method. If
TRUE, use faster code but parameters a and b must then be specified |
a |
Constant term, needed if fast.but.opaque is
TRUE:
(V_theta^{-1}+2Omega_t)^{-1}V_theta^{-1}m_theta.
Specifying a in advance saves execution time |
b |
Linear term, needed if fast.but.opaque is TRUE:
2(V_theta^{-1}+2Omega_t)^{-1}Omega_t
(multiplied by t[k,] in Edash.theta.toy()). |
x1 |
In E.theta.toy(g=F,...), the value of x in
h1(x,theta). The default value is NULL
because in simple cases such as that implemented here, the output is
independent of x1 and x2 |
x2 |
In E.theta.toy(g=F,...), the value of x in
h1(x,theta) |
A terse discussion follows; see the calex.pdf vignette and the
1D case study in directory inst/doc/one/dim/ for more details
and examples.
Function E.theta.toy(give.mean=FALSE,...) does not
return the variance! It returns the thing that must be added to
crossprod(E_theta(h1(x,theta)),t(E_theta(h1(x,theta)))) to give
E_theta(h1(x,theta).t(h1(x,theta))). If the terms of
h1() are of the form c(o,theta) (where o is a
vector that is a function of x alone, and independent of
theta), then the function will include the variance matrix, in
the lower right corner (zeroes elsewhere).
Function E.theta() must be updated if h1.toy()
changes: unlike E.theta() and Edash.theta(), it does not
“know” where the elements that vary with theta are, nor
their (possibly x-dependent) coefficients.
This form of the function requires x1 and x2 arguments,
for good form's sake, even though the returned value is independent of
x in the toy example. To see why it is
necessary to include x, consider a simple case with
h1(x,theta)=(1,x*theta)'. Now
E_theta(h(x,theta)) is just
(1,x*mean(theta))' but
E_theta(h1(x,theta)h1(x,theta)^T)
is a 2-by-2 matrix (M, say) with E_theta(M)=h1(x,thetabar)h1(x,thetabar)^T + variance terms.
ommitted: see dvi
All three functions here are intimately connected to the form of
h1.toy() and changing it (or indeed H1.toy()) will
usually require rewriting all three functions documented here. Look
at the definition of E.theta.toy(give=F), and you will see that
even changing the meat of h1.toy() from c(1,x) to
c(x,1) would require a redefinition of E.theta.toy(g=F).
The only place that E.theta.toy(g=F) is used is internally in
hh.fun().
Robin K. S. Hankin
data(toys) E.theta.toy(D2=D2.toy, H1=H1.toy,phi=phi.toy) E.theta.toy(D2=D2.toy[1,], H1=H1.toy,phi=phi.toy) E.theta.toy(D2=x.toy, H1=H1.toy,phi=phi.toy) Edash.theta.toy(x=x.toy,t.vec=t.vec.toy,k=1, H1=H1.toy,phi=phi.toy)