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! The matrix returned is a different size
from the variance matrix!
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)