X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?p=CreaPhase.git;a=blobdiff_plain;f=octave_packages%2Feconometrics-1.0.8%2Fmle_obj_nodes.m;fp=octave_packages%2Feconometrics-1.0.8%2Fmle_obj_nodes.m;h=ac6bf0f098014018653397f59f9d6d53548be696;hp=0000000000000000000000000000000000000000;hb=f5f7a74bd8a4900f0b797da6783be80e11a68d86;hpb=1705066eceaaea976f010f669ce8e972f3734b05 diff --git a/octave_packages/econometrics-1.0.8/mle_obj_nodes.m b/octave_packages/econometrics-1.0.8/mle_obj_nodes.m new file mode 100644 index 0000000..ac6bf0f --- /dev/null +++ b/octave_packages/econometrics-1.0.8/mle_obj_nodes.m @@ -0,0 +1,33 @@ +## Copyright (C) 2003,2004,2005 Michael Creel +## +## This program is free software; you can redistribute it and/or modify +## it under the terms of the GNU General Public License as published by +## the Free Software Foundation; either version 2 of the License, or +## (at your option) any later version. +## +## This program is distributed in the hope that it will be useful, +## but WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +## GNU General Public License for more details. +## +## You should have received a copy of the GNU General Public License +## along with this program; If not, see . + +function contrib = mle_obj_nodes(theta, data, model, modelargs, nn) + global NEWORLD NSLAVES + + # Who am I? + [info, rank] = MPI_Comm_rank(NEWORLD); + if rank == 0 # Do this if I'm master + startblock = NSLAVES*nn + 1; + endblock = rows(data); + else # this is for the slaves + startblock = rank*nn-nn+1; + endblock = rank*nn; + endif + + data = data(startblock:endblock,:); + contrib = feval(model, theta, data, modelargs); + contrib = sum(contrib); + +endfunction