Diff of /inst/delta_method.m [508d22] .. [eb5224] Maximize Restore

  Switch to unified view

a/inst/delta_method.m b/inst/delta_method.m
1
# Copyright (C) 2003,2004  Michael Creel <michael.creel@uab.es>
1
## Copyright (C) 2003, 2004 Michael Creel <michael.creel@uab.es>
2
#
2
##
3
# This program is free software; you can redistribute it and/or modify
3
## This program is free software; you can redistribute it and/or modify it under
4
# it under the terms of the GNU General Public License as published by
4
## the terms of the GNU General Public License as published by the Free Software
5
# the Free Software Foundation; either version 2 of the License, or
5
## Foundation; either version 3 of the License, or (at your option) any later
6
# (at your option) any later version.
6
## version.
7
#
7
##
8
# This program is distributed in the hope that it will be useful,
8
## This program is distributed in the hope that it will be useful, but WITHOUT
9
# but WITHOUT ANY WARRANTY; without even the implied warranty of
9
## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
10
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
10
## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
11
# GNU General Public License for more details.
11
## details.
12
#
12
##
13
# You should have received a copy of the GNU General Public License
13
## You should have received a copy of the GNU General Public License along with
14
# along with this program; If not, see <http://www.gnu.org/licenses/>.
14
## this program; if not, see <http://www.gnu.org/licenses/>.
15
15
16
# Computes Delta method mean and covariance of a nonlinear
16
## Computes Delta method mean and covariance of a nonlinear
17
# transformation defined by "func"
17
## transformation defined by "func"
18
18
function [theta_transf, var_transf] = delta_method(func, theta, otherargs, vartheta)
19
function [theta_transf, var_transf] = delta_method(func, theta, otherargs, vartheta)
19
    theta_transf = feval(func, theta, otherargs);
20
    theta_transf = feval(func, theta, otherargs);
20
    D = numgradient(func, {theta, otherargs});
21
    D = numgradient(func, {theta, otherargs});
21
    var_transf = D * vartheta * D';
22
    var_transf = D * vartheta * D';
22
23